keptn-terraform/keptn.tf

221 lines
4.0 KiB
HCL

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