method to avoid create duplicate namespace

This commit is contained in:
2025-04-24 22:37:03 +01:00
parent 6f7ae0e523
commit edea22d4d1
2 changed files with 61 additions and 29 deletions
+2 -1
View File
@@ -32,6 +32,7 @@ variable "kubernetes" {
}))) })))
replicas = optional(number, 1) replicas = optional(number, 1)
namespace = optional(string) namespace = optional(string)
block_namespace_creation = optional(bool, false)
service_port = optional(number) service_port = optional(number)
service_type = optional(string, "ClusterIP") service_type = optional(string, "ClusterIP")
service_name = optional(string) service_name = optional(string)
@@ -84,7 +85,7 @@ locals {
data "kubernetes_all_namespaces" "allns" {} data "kubernetes_all_namespaces" "allns" {}
resource "kubernetes_namespace" "automatic" { 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 && !(value.block_namespace_creation) }
metadata { metadata {
annotations = { annotations = {
name = coalesce(each.value.namespace, each.key) name = coalesce(each.value.namespace, each.key)
+39 -8
View File
@@ -1,10 +1,11 @@
kubernetes = { kubernetes = {
bookstack = { bookstack = {
namespace = "bookstack" namespace = "bookstack"
enabled = true # enabled = false
replicas = 01 replicas = 01
extra_manifest = ["/opt/kubernetes/Bookstack_kube/Bookstack.configmap.yaml", "/opt/kubernetes/Bookstack_kube/Bookstack.secret.yaml"] extra_manifest = ["/opt/kubernetes/Bookstack_kube/Bookstack.configmap.yaml", "/opt/kubernetes/Bookstack_kube/Bookstack.secret.yaml"]
image = "linuxserver/bookstack:24.10.3" #image = "linuxserver/bookstack:24.10.3"
image = "linuxserver/bookstack:latest"
service_port = 80 service_port = 80
database = { database = {
"image" = "lscr.io/linuxserver/mariadb" "image" = "lscr.io/linuxserver/mariadb"
@@ -91,7 +92,7 @@ kubernetes = {
requests-memory = "400Mi" requests-memory = "400Mi"
} }
pvc = { pvc = {
volume = { screeps-volume = {
name = "screeps" name = "screeps"
pvc_size = "1Gi" pvc_size = "1Gi"
pvc = true pvc = true
@@ -120,7 +121,7 @@ kubernetes = {
requests-memory = "150Mi" requests-memory = "150Mi"
} }
pvc = { pvc = {
volume = { stirling-volume = {
name = "stirling-pdf" name = "stirling-pdf"
pvc_size = "100Mi" pvc_size = "100Mi"
pvc = true pvc = true
@@ -133,6 +134,7 @@ kubernetes = {
stash = { stash = {
enabled = false
replicas = 0 replicas = 0
name = "stash" name = "stash"
image = "stashapp/stash:latest" image = "stashapp/stash:latest"
@@ -192,7 +194,7 @@ kubernetes = {
} }
onitama = { onitama = {
enabled = true enabled = false
namespace = "onitama" namespace = "onitama"
image = "ghcr.io/jackadamson/onitama:latest" image = "ghcr.io/jackadamson/onitama:latest"
service_port = 8080 service_port = 8080
@@ -347,7 +349,7 @@ kubernetes = {
paper = { paper = {
enabled = false # enabled = false
namespace = "paper" namespace = "paper"
image = "ghcr.io/paperless-ngx/paperless-ngx:latest" image = "ghcr.io/paperless-ngx/paperless-ngx:latest"
service_port = 8000 service_port = 8000
@@ -466,8 +468,10 @@ kubernetes = {
} }
} }
gotenberg = { gotenberg = {
enabled = false # enabled = false
name = "gotenberg" name = "gotenberg"
namespace = "paper"
block_namespace_creation = true
image = "gotenberg/gotenberg:7.9.2" image = "gotenberg/gotenberg:7.9.2"
service_port = 3000 service_port = 3000
@@ -698,7 +702,7 @@ kubernetes = {
} }
dupeguru = { dupeguru = {
# enabled = false enabled = false
image = "jlesage/dupeguru" image = "jlesage/dupeguru"
service_port = 5800 service_port = 5800
@@ -730,4 +734,31 @@ kubernetes = {
} }
} }
pinchflat = {
enabled = false
image = "ghcr.io/kieraneglin/pinchflat:latest"
service_port = 8945
pvc = {
pinchflat-config = {
pvc = true
name = "pinchflat-config"
pvc_size = "2Mi"
mount_path = "/config"
}
pinchflat-storage = {
pvc = true
name = "pinchflat-storage"
pvc_size = "2Mi"
mount_path = "/downloads"
}
}
requirements = {
limits-cpu = "900m"
limits-memory = "600Mi"
requests-cpu = "300m"
requests-memory = "400Mi"
}
}
} }