This commit is contained in:
2024-05-12 12:03:32 +02:00
parent 599d175f82
commit 2890064fd4
191 changed files with 893 additions and 1068 deletions

View File

@@ -57,7 +57,7 @@ resource "kubernetes_namespace_v1" "files-ns" {
count = var.nextcloud.enable ? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-files"
}
}
@@ -71,7 +71,7 @@ resource "kubectl_manifest" "nextcloud" {
metadata:
name: "nextcloud"
namespace: "${kubernetes_namespace_v1.files-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -69,7 +69,7 @@ resource "kubernetes_namespace_v1" "auth-ns" {
count = var.authentik.enable || var.authentik-ldap.enable || var.authentik-forward.enable ? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-auth"
}
}
@@ -83,7 +83,7 @@ resource "kubectl_manifest" "authentik" {
metadata:
name: "authentik"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"
@@ -101,7 +101,7 @@ resource "kubectl_manifest" "authentik-ldap" {
metadata:
name: "authentik-ldap"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"
@@ -119,7 +119,7 @@ resource "kubectl_manifest" "authentik-forward" {
metadata:
name: "authentik-forward"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -46,7 +46,7 @@ resource "kubectl_manifest" "accounts-management" {
metadata:
name: "accounts-management"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"
@@ -68,7 +68,7 @@ resource "kubectl_manifest" "employes-divisions" {
metadata:
name: "employes-${local.sorted-div-employes[count.index].name}"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"
@@ -90,7 +90,7 @@ resource "kubectl_manifest" "clients-divisions" {
metadata:
name: "clients-${local.sorted-div-clients[count.index].name}"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"
@@ -112,7 +112,7 @@ resource "kubectl_manifest" "fournisseurs-divisions" {
metadata:
name: "fournisseurs-${local.sorted-div-fournisseurs[count.index].name}"
namespace: "${var.namespace}-auth"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"

View File

@@ -63,7 +63,7 @@ resource "kubernetes_namespace_v1" "ci-ns" {
count = ( var.gitea.enable )? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-ci"
}
}
@@ -77,7 +77,7 @@ resource "kubectl_manifest" "gitea" {
metadata:
name: "gitea"
namespace: "${var.namespace}-ci"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -95,7 +95,7 @@ resource "kubectl_manifest" "woodpecker" {
metadata:
name: "woodpecker"
namespace: "${var.namespace}-ci"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"

12
meta/domain-ci/common.tf Normal file
View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -201,7 +201,7 @@ resource "kubernetes_namespace_v1" "apps-ns" {
count = (var.apps.dbgate.enable || var.apps.okd.enable || var.apps.gramo.enable) ? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-devapps"
}
}
@@ -215,7 +215,7 @@ resource "kubectl_manifest" "okd" {
metadata:
name: "dev-okd"
namespace: "${kubernetes_namespace_v1.apps-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -233,7 +233,7 @@ resource "kubectl_manifest" "gramo" {
metadata:
name: "dev-gramo"
namespace: "${kubernetes_namespace_v1.apps-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -251,7 +251,7 @@ resource "kubectl_manifest" "dbgate" {
metadata:
name: "dbgate"
namespace: "${kubernetes_namespace_v1.apps-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -18,7 +18,7 @@ resource "kubectl_manifest" "organisations" {
metadata:
name: "org-${local.sorted-organisations[count.index].name}"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"

View File

@@ -34,7 +34,7 @@ resource "kubernetes_namespace_v1" "dev-ns" {
count = length(local.sorted-stations)
metadata {
annotations = local.annotations
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.domain}-devspaces-${local.sorted-stations[count.index].name}"
}
}
@@ -48,7 +48,7 @@ resource "kubectl_manifest" "devstations" {
metadata:
name: "${local.sorted-stations[count.index].name}"
namespace: "${var.domain}-devspaces-${local.sorted-stations[count.index].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -66,7 +66,7 @@ resource "kubectl_manifest" "datasets" {
metadata:
name: "${local.sorted-datasets[count.index].name}"
namespace: "${local.sorted-datasets[count.index].namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"

View File

@@ -57,7 +57,7 @@ resource "kubernetes_namespace_v1" "erp-ns" {
count = ( var.dolibarr.enable )? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-erp"
}
}
@@ -71,7 +71,7 @@ resource "kubectl_manifest" "dolibarr" {
metadata:
name: "dolibarr"
namespace: "${kubernetes_namespace_v1.erp-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"

12
meta/domain-erp/common.tf Normal file
View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -81,7 +81,7 @@ resource "kubernetes_namespace_v1" "infra-ns" {
count = ( var.dns.enable || var.okd.enable || var.gramo.enable )? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-infra"
}
}
@@ -95,7 +95,7 @@ resource "kubectl_manifest" "dns" {
metadata:
name: "dns"
namespace: "${kubernetes_namespace_v1.infra-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"
@@ -112,7 +112,7 @@ resource "kubectl_manifest" "traefik" {
metadata:
name: "${var.namespace}"
namespace: "${var.traefik.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -129,7 +129,7 @@ resource "kubectl_manifest" "k8s_api" {
metadata:
name: "k8s-api-${var.namespace}"
namespace: "default"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -147,7 +147,7 @@ resource "kubectl_manifest" "okd" {
metadata:
name: "infra-okd"
namespace: "${kubernetes_namespace_v1.infra-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"
@@ -165,7 +165,7 @@ resource "kubectl_manifest" "gramo" {
metadata:
name: "infra-gramo"
namespace: "${kubernetes_namespace_v1.infra-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "apps"

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -57,7 +57,7 @@ resource "kubernetes_namespace_v1" "mail-ns" {
count = ( var.wildduck.enable )? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-mail"
}
}
@@ -71,7 +71,7 @@ resource "kubectl_manifest" "wildduck" {
metadata:
name: "wildduck"
namespace: "${kubernetes_namespace_v1.mail-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "share"

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -135,7 +135,7 @@ resource "kubernetes_namespace_v1" "monitor-ns" {
count = ( var.grafana.enable || var.loki.enable || var.promtail.enable || var.prometheus.enable || var.alertmanager.enable || var.node-exporter.enable || var.kube-state-metrics.enable || var.monitor-control-plan.enable )? 1 : 0
metadata {
annotations = merge(local.annotations, local.annotations_default)
labels = merge(local.common-labels, local.annotations)
labels = merge(local.common_labels, local.annotations)
name = "${var.namespace}-monitor"
}
}
@@ -149,7 +149,7 @@ resource "kubectl_manifest" "alertmanager" {
metadata:
name: "alertmanager"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -166,7 +166,7 @@ resource "kubectl_manifest" "prometheus" {
metadata:
name: "prometheus"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -183,7 +183,7 @@ resource "kubectl_manifest" "nodeExporter" {
metadata:
name: "node-exporter"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -201,7 +201,7 @@ resource "kubectl_manifest" "kubeStateMetrics" {
metadata:
name: "kube-state-metrics"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -219,7 +219,7 @@ resource "kubectl_manifest" "monitorControlPlan" {
metadata:
name: "monitor-control-plan"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -237,7 +237,7 @@ resource "kubectl_manifest" "alerts-core" {
metadata:
name: "alerts-core"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -254,7 +254,7 @@ resource "kubectl_manifest" "alerts-containers" {
metadata:
name: "alerts-containers"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -271,7 +271,7 @@ resource "kubectl_manifest" "dashboards-cluster" {
metadata:
name: "dashboards-cluster"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -287,7 +287,7 @@ resource "kubectl_manifest" "dashboards-minimal" {
metadata:
name: "dashboards-minimal"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -303,7 +303,7 @@ resource "kubectl_manifest" "dashboards-namespace" {
metadata:
name: "dashboards-namespace"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -319,7 +319,7 @@ resource "kubectl_manifest" "dashboards-workload" {
metadata:
name: "dashboards-workload"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -336,7 +336,7 @@ resource "kubectl_manifest" "grafana" {
metadata:
name: "grafana"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -353,7 +353,7 @@ resource "kubectl_manifest" "promtail" {
metadata:
name: "promtail"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"
@@ -370,7 +370,7 @@ resource "kubectl_manifest" "loki" {
metadata:
name: "loki"
namespace: "${kubernetes_namespace_v1.monitor-ns[0].metadata[0].name}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "monitor"

View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

12
meta/domain/common.tf Normal file
View File

@@ -0,0 +1,12 @@
locals {
common-labels = {
"vynil.solidite.fr/owner-name" = var.instance
"vynil.solidite.fr/owner-namespace" = var.namespace
"vynil.solidite.fr/owner-category" = var.category
"vynil.solidite.fr/owner-component" = var.component
"app.kubernetes.io/managed-by" = "vynil"
"app.kubernetes.io/name" = var.component
"app.kubernetes.io/instance" = var.instance
}
}

View File

@@ -177,7 +177,7 @@ resource "kubectl_manifest" "auth" {
metadata:
name: "auth"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -193,7 +193,7 @@ resource "kubectl_manifest" "infra" {
metadata:
name: "infra"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -209,7 +209,7 @@ resource "kubectl_manifest" "ci" {
metadata:
name: "ci"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -225,7 +225,7 @@ resource "kubectl_manifest" "erp" {
metadata:
name: "erp"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -241,7 +241,7 @@ resource "kubectl_manifest" "apps" {
metadata:
name: "apps"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -257,7 +257,7 @@ resource "kubectl_manifest" "mail" {
metadata:
name: "mail"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -273,7 +273,7 @@ resource "kubectl_manifest" "monitor" {
metadata:
name: "monitor"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"
@@ -289,7 +289,7 @@ resource "kubectl_manifest" "devspaces" {
metadata:
name: "devspaces"
namespace: "${var.namespace}"
labels: ${jsonencode(local.common-labels)}
labels: ${jsonencode(local.common_labels)}
spec:
distrib: "${var.distributions.domain}"
category: "meta"