find a way to connect to another namespace without conflict found yet
This commit is contained in:
@@ -30,27 +30,30 @@ variable "kubernetes" {
|
|||||||
})
|
})
|
||||||
}))
|
}))
|
||||||
})))
|
})))
|
||||||
replicas = optional(number, 1)
|
replicas = optional(number, 1)
|
||||||
namespace = optional(string)
|
namespace = optional(string)
|
||||||
block_namespace_creation = optional(bool, false)
|
connected_namespace = optional(string, "")
|
||||||
service_port = optional(number)
|
# namespace = optional(string,coalesce(connected_namespace,""))
|
||||||
service_type = optional(string, "ClusterIP")
|
#block_namespace_creation = optional(bool, false)
|
||||||
service_name = optional(string)
|
service_port = optional(number)
|
||||||
liveness_tcp_socket = optional(number)
|
service_type = optional(string, "ClusterIP")
|
||||||
liveness_http_get = optional(string)
|
service_name = optional(string)
|
||||||
liveness_http_get_path = optional(string)
|
liveness_tcp_socket = optional(number)
|
||||||
database = optional(map(string))
|
liveness_http_get = optional(string)
|
||||||
redis = optional(map(string))
|
liveness_http_get_path = optional(string)
|
||||||
enabled = optional(bool, true)
|
database = optional(map(string))
|
||||||
secret_ref = optional(list(string))
|
redis = optional(map(string))
|
||||||
config_map_ref = optional(list(string))
|
enabled = optional(bool, true)
|
||||||
extra_manifest = optional(list(string))
|
secret_ref = optional(list(string))
|
||||||
requirements = optional(map(string), {
|
config_map_ref = optional(list(string))
|
||||||
limits-cpu = "800m"
|
extra_manifest = optional(list(string))
|
||||||
limits-memory = "500Mi"
|
requirements = optional(map(string))
|
||||||
requests-cpu = "200m"
|
# requirements = optional(map(string), {
|
||||||
requests-memory = "200Mi"
|
# limits-cpu = "800m"
|
||||||
})
|
# limits-memory = "500Mi"
|
||||||
|
# requests-cpu = "200m"
|
||||||
|
# requests-memory = "200Mi"
|
||||||
|
# })
|
||||||
environment_variables = optional(map(string), { name = "value" })
|
environment_variables = optional(map(string), { name = "value" })
|
||||||
}))
|
}))
|
||||||
|
|
||||||
@@ -85,8 +88,8 @@ 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 && !(value.block_namespace_creation) }
|
# for_each = { for key, value in var.kubernetes : key => value if value.enabled == true && !(value.block_namespace_creation) }
|
||||||
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.connected_namespace == "" }
|
||||||
metadata {
|
metadata {
|
||||||
annotations = {
|
annotations = {
|
||||||
name = coalesce(each.value.namespace, each.key)
|
name = coalesce(each.value.namespace, each.key)
|
||||||
@@ -187,7 +190,7 @@ resource "kubernetes_service" "automatic_service" {
|
|||||||
for_each = { for key, value in var.kubernetes : key => value if value.service_port != null && value.enabled == true }
|
for_each = { for key, value in var.kubernetes : key => value if value.service_port != null && value.enabled == true }
|
||||||
metadata {
|
metadata {
|
||||||
name = "${each.key}-svc"
|
name = "${each.key}-svc"
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace,each.value.connected_namespace, each.key)
|
||||||
labels = {
|
labels = {
|
||||||
deployment_method = "Terraform"
|
deployment_method = "Terraform"
|
||||||
}
|
}
|
||||||
@@ -264,7 +267,7 @@ resource "kubernetes_service" "automatic_service_redis" {
|
|||||||
resource "kubernetes_deployment_v1" "automatic" {
|
resource "kubernetes_deployment_v1" "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 }
|
||||||
metadata {
|
metadata {
|
||||||
namespace = coalesce(each.value.namespace, each.key)
|
namespace = coalesce(each.value.namespace,each.value.connected_namespace, each.key)
|
||||||
name = coalesce(each.value.name, each.key)
|
name = coalesce(each.value.name, each.key)
|
||||||
|
|
||||||
labels = {
|
labels = {
|
||||||
@@ -357,7 +360,20 @@ resource "kubernetes_deployment_v1" "automatic" {
|
|||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
dynamic "resources" {
|
||||||
|
for_each = each.value.requirements != null ? [1] : []
|
||||||
|
content {
|
||||||
|
limits = {
|
||||||
|
cpu = each.value.requirements.limits-cpu
|
||||||
|
memory = each.value.requirements.limits-memory
|
||||||
|
}
|
||||||
|
requests = {
|
||||||
|
cpu = each.value.requirements.requests-cpu
|
||||||
|
memory = each.value.requirements.requests-memory
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# resources {
|
# resources {
|
||||||
# limits = {
|
# limits = {
|
||||||
|
|||||||
+28
-6
@@ -86,9 +86,9 @@ kubernetes = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
requirements = {
|
requirements = {
|
||||||
limits-cpu = "900m"
|
limits-cpu = "1000m"
|
||||||
limits-memory = "600Mi"
|
limits-memory = "1Gi"
|
||||||
requests-cpu = "300m"
|
requests-cpu = "500m"
|
||||||
requests-memory = "400Mi"
|
requests-memory = "400Mi"
|
||||||
}
|
}
|
||||||
pvc = {
|
pvc = {
|
||||||
@@ -134,7 +134,7 @@ kubernetes = {
|
|||||||
|
|
||||||
|
|
||||||
stash = {
|
stash = {
|
||||||
enabled = false
|
# enabled = false
|
||||||
replicas = 0
|
replicas = 0
|
||||||
name = "stash"
|
name = "stash"
|
||||||
image = "stashapp/stash:latest"
|
image = "stashapp/stash:latest"
|
||||||
@@ -349,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
|
||||||
@@ -468,7 +468,7 @@ kubernetes = {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
gotenberg = {
|
gotenberg = {
|
||||||
# enabled = false
|
enabled = false
|
||||||
name = "gotenberg"
|
name = "gotenberg"
|
||||||
namespace = "paper"
|
namespace = "paper"
|
||||||
block_namespace_creation = true
|
block_namespace_creation = true
|
||||||
@@ -761,4 +761,26 @@ kubernetes = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
jobspy = {
|
||||||
|
enabled = false
|
||||||
|
connected_namespace = "stash"
|
||||||
|
image = "rainmanjam/jobspy-api:latest"
|
||||||
|
service_port = 8000
|
||||||
|
environment = {
|
||||||
|
ENABLE_API_KEY_AUTH = {
|
||||||
|
value = "true"
|
||||||
|
}
|
||||||
|
API_KEYS = {
|
||||||
|
value = "true"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
requirements = {
|
||||||
|
limits-cpu = "900m"
|
||||||
|
limits-memory = "600Mi"
|
||||||
|
requests-cpu = "300m"
|
||||||
|
requests-memory = "400Mi"
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user