module "influxdb_persistance" { source = "git@git.thomasklein.me:thomasklein/terraform-modules//9p-persistent-volume" namespace = kubernetes_namespace.this.metadata.0.name name = "influxdb" volume_storage_capacity = "20Gi" } resource "helm_release" "influx" { name = "influxdb" namespace = kubernetes_namespace.this.metadata.0.name repository = "https://helm.influxdata.com/" chart = "influxdb2" version = "2.1.1" values = [ jsonencode({ ingress = { enabled = true hostname = local.influx_domain tls = true secretName = "influxdb-tls" annotations = { "cert-manager.io/cluster-issuer" = "acme-thomasklein-me" # "kubernetes.io/ingress.class" = "traefik" # "traefik.ingress.kubernetes.io/router.entrypoints" = "websecure" # "traefik.ingress.kubernetes.io/router.tls" = "true" # "traefik.ingress.kubernetes.io/router.tls.certresolver" = "acme-thomasklein-me" # "traefik.ingress.kubernetes.io/router.tls.domains.0.main" = local.ingress_domain # "traefik.ingress.kubernetes.io/router.middlewares" = "redirect-metrics@file" # hide /metrics from the internet } labels = {} } }), jsonencode({ persistence = { enabled = "true" useExisting = true name = module.influxdb_persistance.pvc_name } }), jsonencode({ adminUser = { organization = "thomasklein" user = "admin" retention_policy = "90d" existingSecret = kubernetes_secret.influxdb_auth.metadata.0.name } }), ] }