diff --git a/infra/vultr-kubernetes/ingress.tf b/infra/vultr-kubernetes/ingress.tf index bebe0e5..8a45b43 100644 --- a/infra/vultr-kubernetes/ingress.tf +++ b/infra/vultr-kubernetes/ingress.tf @@ -1,3 +1,10 @@ +locals { + services = { + code = kubernetes_service.gitea + sanity = kubernetes_service.health + uptime = kubernetes_service.kuma + } +} resource kubernetes_ingress_v1 health { metadata { name = "health-ingress" @@ -17,49 +24,20 @@ resource kubernetes_ingress_v1 health { ] secret_name = "shockrah" } - rule { - host = "sanity.shockrah.xyz" + dynamic "rule" { + for_each = local.services + content { + host = "${rule.key}.shockrah.xyz" http { - path { - path = "/" - backend { - service { - name = kubernetes_service.health.metadata[0].name - port { - number = kubernetes_service.health.spec[0].port[0].port - } - } - } - } - } - } - rule { - host = "uptime.shockrah.xyz" - http { - path { - path = "/" - backend { - service { - name = kubernetes_service.kuma.metadata[0].name + path { + path = "/" + backend { + service { + name = rule.value.metadata[0].name port { - number = kubernetes_service.kuma.spec[0].port[0].port - } - } - } - } - } - } - rule { - host = "code.shockrah.xyz" - http { - path { - path = "/" - backend { - service { - name = kubernetes_service.gitea.metadata[0].name - port { - number = kubernetes_service.gitea.spec[0].port[0].port + number = rule.value.spec[0].port[0].port } + } } } }