resource "kubernetes_namespace" "keptn_namespace" { metadata { name = var.KEPTN_NAMESPACE } } resource "kubernetes_persistent_volume_claim" "nats-js-pvc" { metadata { name = "nats-js-disk" namespace = var.KEPTN_NAMESPACE } spec { #storage_class_name = "region1storageclass" access_modes = ["ReadWriteOnce"] resources { requests = { storage = "3Gi" } } # volume_name = "${kubernetes_persistent_volume.example.metadata.0.name}" } wait_until_bound = false depends_on = [kubernetes_namespace.keptn_namespace ] } resource "helm_release" "keptn" { name = "keptn" repository = "https://charts.keptn.sh" chart = "keptn" namespace = var.KEPTN_NAMESPACE timeout = 500 version = var.KEPTN_VERSION create_namespace = true # set { # name = "tolerations[0].key" # value = "dedicated" # } # set { # name = "tolerations[0].value" # value = "group2" # } # set { # name = "tolerations[0].operator" # value = "Equal" # } # set { # name = "tolerations[0].effect" # value = "NoSchedule" # } # set { # name = "nodeSelector.role" # value = "group2" # } # ##mongodb toleration # set { # name = "mongo.tolerations[0].key" # value = "dedicated" # } # set { # name = "mongo.tolerations[0].value" # value = "group2" # } # set { # name = "mongo.tolerations[0].operator" # value = "Equal" # } # set { # name = "mongo.tolerations[0].effect" # value = "NoSchedule" # } # set { # name = "mongo.nodeSelector.role" # value = "group2" # } # set { # name = "mongo.global.storageClass" # value = "region1storageclass" # } # ##nats toleration # set { # name = "nats.tolerations[0].key" # value = "dedicated" # } # set { # name = "nats.tolerations[0].value" # value = "group2" # } # set { # name = "nats.tolerations[0].operator" # value = "Equal" # } # set { # name = "nats.tolerations[0].effect" # value = "NoSchedule" # } # set { # name = "nats.nodeSelector.role" # value = "group2" # } set { name = "nats.nats.jetstream.fileStorage.enabled" value = "true" } set { name = "nats.nats.jetstream.fileStorage.storageDirectory" value = "/data/" } set { name = "nats.nats.jetstream.fileStorage.existingClaim" value = "nats-js-disk" } set { name = "nats.nats.jetstream.fileStorage.claimStorageSize" value = "3Gi" } ##ingress set { name ="ingress.enabled" value = "true" } set { name ="ingress.className" value = "nginx" } set { name ="ingress.path" value = "/" } set { name ="ingress.host" value = var.KEPTN_DOMAIN } set { name ="ingress.annotations.cert-manager\\.io/cluster-issuer" value ="letsencrypt-prod" } set { name = "ingress.tls[0].hosts[0]" value = var.KEPTN_DOMAIN } set { name = "ingress.tls[0].secretName" value = "letsencrypt-prod" } depends_on = [kubernetes_persistent_volume_claim.nats-js-pvc] } module "keptn-bridge-userneame" { source = "./terraform-kubernetes-get-secret" namespace = "keptn" name = "bridge-credentials" key = "BASIC_AUTH_USERNAME" context = var.k8S_CONTEXT #context = "arn:aws:eks:us-west-2:277980527364:cluster/xOps" depends_on = [ helm_release.keptn ] } module "keptn-bridge-pwd" { source = "./terraform-kubernetes-get-secret" namespace = "keptn" name = "bridge-credentials" key = "BASIC_AUTH_PASSWORD" context = var.k8S_CONTEXT #context = "arn:aws:eks:us-west-2:277980527364:cluster/xOps" depends_on = [ helm_release.keptn ] } module "keptn-api-token" { source = "./terraform-kubernetes-get-secret" namespace = "keptn" name = "keptn-api-token" key = "keptn-api-token" context = var.k8S_CONTEXT #context = "arn:aws:eks:us-west-2:277980527364:cluster/xOps" depends_on = [ helm_release.keptn ] }