mirror of
https://github.com/dat515-2025/Group-8.git
synced 2026-03-22 15:12:08 +01:00
50 lines
1.2 KiB
HCL
50 lines
1.2 KiB
HCL
terraform {
|
|
required_providers {
|
|
kubectl = {
|
|
source = "gavinbunney/kubectl"
|
|
version = "1.19.0"
|
|
}
|
|
helm = {
|
|
source = "hashicorp/helm"
|
|
version = "3.0.2"
|
|
}
|
|
kubernetes = {
|
|
source = "hashicorp/kubernetes"
|
|
version = "2.38.0"
|
|
}
|
|
kustomization = {
|
|
source = "kbst/kustomization"
|
|
version = "0.9.6"
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
data "kustomization" "cloudflare-kustomization" {
|
|
path = "${path.module}/kustomization"
|
|
}
|
|
|
|
resource "kustomization_resource" "cloudflare" {
|
|
provider = kustomization
|
|
|
|
for_each = data.kustomization.cloudflare-kustomization.ids
|
|
|
|
manifest = data.kustomization.cloudflare-kustomization.manifests[each.key]
|
|
}
|
|
|
|
resource "kubectl_manifest" "cloudflare-api-token" {
|
|
yaml_body = templatefile("${path.module}/secret.yaml", {
|
|
cloudflare_api_token = var.cloudflare_api_token
|
|
})
|
|
}
|
|
|
|
resource "kubectl_manifest" "cloudflare-tunnel" {
|
|
yaml_body = templatefile("${path.module}/cluster-tunnel.yaml", {
|
|
cloudflare_tunnel_name = var.cloudflare_tunnel_name
|
|
cloudflare_email = var.cloudflare_email
|
|
cloudflare_domain = var.cloudflare_domain
|
|
cloudflare_account_id = var.cloudflare_account_id
|
|
})
|
|
|
|
depends_on = [kustomization_resource.cloudflare]
|
|
} |