resource "helm_release" "cert_manager" { name = "cert-manager" repository = "oci://quay.io" chart = "jetstack/charts/cert-manager" version = "v1.21.2" namespace = "cert-manager" create_namespace = true wait = false set = [ { name = "crds.enabled" value = "true" } ] } resource "helm_release" "nginx_ingress" { name = "traefik" repository = "https://traefik.github.io/charts" chart = "traefik" version = "v41.7.1" namespace = "traefik" create_namespace = true wait = false set = [ { name = "ports.web.nodePort" value = "80" }, { name = "ports.websecure.nodePort" value = "443" }, { name = "service.type" value = "NodePort" } ] } resource "kubernetes_manifest" "letsencrypt_prod" { manifest = { "apiVersion" = "cert-manager.io/v1" "kind" = "ClusterIssuer" "metadata" = { "name" = "letsencrypt-prod" } "spec" = { "acme" = { "email" = "franckrobbin6@gmail.com" "privateKeySecretRef" = { "name" = "letsencrypt-prod-account-key" } "server" = "https://acme-v02.api.letsencrypt.org/directory" "solvers" = [ { "http01" = { "ingress" = { "class" = "traefik" } } } ] } } } }