terraform { required_version = "> 0.8.0" } variable "nginx_sites" { type = map(object({ service = string enabled = optional(bool,true) proxy_cache = optional(bool,false) extra-value = optional(string,"") http2_bool = optional(bool,false) proxy_pass_https = optional(bool,false) authentication_required = optional(bool,false) })) } resource "local_file" "nginx"{ # for_each = var.nginx_sites for_each = { for key, value in var.nginx_sites : key => value if value.enabled == true} content = templatefile("nginx_config.tftpl", { name_site = each.key name_service = each.value.service proxy_cache = each.value.proxy_cache extra-value = each.value.extra-value http2_bool = each.value.http2_bool proxy_pass_https = each.value.proxy_pass_https authentication_required = each.value.authentication_required }) filename = "../conf.d/${each.key}.tryton.geeraert.eu.conf" file_permission = "0600" provisioner "local-exec" { command = "kubectl exec -it deploy/reverse-proxy -n reverse-proxy -- nginx -s reload" quiet = true } } output "Nginx_status" { value = "Nginx pod restarted" } provider "kubernetes" { config_path = "~/.kube/config" }