terraform { required_providers { helm = { source = "hashicorp/helm" version = "~> 2.11.0" } kubernetes = { source = "hashicorp/kubernetes" version = "~> 2.23.0" } } } provider "kubernetes" { config_path = "~/.kube/config" } provider "helm" { kubernetes { config_path = "~/.kube/config" } } resource "kubernetes_namespace" "gitea_ns" { metadata { name = var.gitea_namespace } } resource "helm_release" "gitea" { name = "gitea" repository = "https://dl.gitea.com/charts/" chart = "gitea" namespace = var.gitea_namespace set { name = "ingress.enabled" value = "true" } set { name = "ingress.annotations.\"cert-manager\\.io\\/cluster-issuer\"" value = "letsencrypt-prod" } set { name = "ingress.hosts[0].host" value = "git.${var.domain_suffix}" } set { name = "ingress.hosts[0].paths[0].path" value = "/" } set { name = "ingress.hosts[0].paths[0].pathType" value = "Prefix" } set { name = "persistence.enabled" value = "true" } set { name = "global.storageClass" value = var.storageclass } }