method to avoid create duplicate namespace
This commit is contained in:
@@ -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
@@ -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"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user