Files
Reverse_proxy_Nginx/terraform/module.tf
T

48 lines
1.4 KiB
Terraform

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"
}