shamefully used AI and now it's working
This commit is contained in:
@@ -43,6 +43,7 @@ variable "kubernetes" {
|
||||
enabled = optional(bool, true)
|
||||
secret_ref = optional(list(string))
|
||||
config_map_ref = optional(list(string))
|
||||
extra_manifest = optional(list(string))
|
||||
requirements = optional(map(string), {
|
||||
limits-cpu = "800m"
|
||||
limits-memory = "500Mi"
|
||||
@@ -80,20 +81,11 @@ locals {
|
||||
])
|
||||
}
|
||||
|
||||
#output "pvc_test" {
|
||||
# value = { for key, value in local.pvc_details : key => value }
|
||||
#}
|
||||
|
||||
#output "env_test" {
|
||||
# value = { for key, value in local.env_details : key => value }
|
||||
|
||||
#}
|
||||
|
||||
data "kubernetes_all_namespaces" "allns" {}
|
||||
|
||||
resource "kubernetes_namespace" "automatic" {
|
||||
for_each = { for key, value in var.kubernetes : key => value if value.enabled == true }
|
||||
# for_each = { for key, value in var.kubernetes : key => value if value.enabled == true && !contains(data.kubernetes_all_namespaces.allns.namespaces, key) }
|
||||
metadata {
|
||||
annotations = {
|
||||
name = coalesce(each.value.namespace, each.key)
|
||||
@@ -106,38 +98,30 @@ resource "kubernetes_namespace" "automatic" {
|
||||
depends_on = [data.kubernetes_all_namespaces.allns]
|
||||
}
|
||||
|
||||
#resource "kubernetes_secret" "automatic-secret" {
|
||||
# for_each = { for key, value in var.kubernetes : key => value if value.enabled == true && value.secret != null }
|
||||
# metadata {
|
||||
# #name = "secret-next"
|
||||
# name = "${coalesce(each.value.name, each.key)}-secret"
|
||||
# namespace = "next"
|
||||
# }
|
||||
|
||||
# data = {
|
||||
|
||||
# #each.value.secret
|
||||
|
||||
# POSTGRES_DB = "nextcloud"
|
||||
# # POSTGRES_PASSWORD = "nextcloud"
|
||||
# # POSTGRES_USER = "nextcloud"
|
||||
# # PI_USER_USERNAME = "pi"
|
||||
# # PI_USER_PASSWORD = "test"#
|
||||
# # POSTGRES_HOST = "next-db-svc"
|
||||
|
||||
# }
|
||||
|
||||
#}
|
||||
|
||||
locals {
|
||||
kubernetes_manifests = flatten([
|
||||
for k, obj in var.kubernetes : [
|
||||
for index, manifest in(obj.extra_manifest != null ? obj.extra_manifest : []) :
|
||||
{
|
||||
key = "${k}_${index}"
|
||||
name = obj.name
|
||||
manifest = manifest
|
||||
enabled = obj.enabled
|
||||
}
|
||||
if obj.enabled == true
|
||||
]
|
||||
])
|
||||
}
|
||||
|
||||
resource "kubernetes_manifest" "service" {
|
||||
provider = kubernetes
|
||||
for_each = { for item in local.kubernetes_manifests : item.key => item }
|
||||
|
||||
manifest = yamldecode(file("/opt/kubernetes/Terraform_kube/onitama_secret2.yaml"))
|
||||
# manifest = yamldecode(interpolate(file("/opt/kubernetes/Terraform_kube/onitama_secret.yaml")))
|
||||
manifest = yamldecode(file(each.value.manifest))
|
||||
provider = kubernetes
|
||||
}
|
||||
|
||||
|
||||
|
||||
resource "kubernetes_persistent_volume_claim" "automatic-pvc" {
|
||||
for_each = { for key, value in local.pvc_details : "${value.index}" => merge(value, { mew_key = value.index }) if value.pvc }
|
||||
metadata {
|
||||
|
||||
Reference in New Issue
Block a user