From 57954c4192980107202eda4e6c24345ca6ec03df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Huss?= Date: Fri, 24 May 2024 15:11:57 +0200 Subject: [PATCH] fix --- meta/domain-ci/apps.tf | 26 +++++++++++++++++++++++++- meta/domain-ci/index.yaml | 12 ++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/meta/domain-ci/apps.tf b/meta/domain-ci/apps.tf index 311bd18..863a6b0 100644 --- a/meta/domain-ci/apps.tf +++ b/meta/domain-ci/apps.tf @@ -57,10 +57,16 @@ locals { volume = merge(local.global-volume, lookup(lookup(var.woodpecker, "storage", {}), "volume", {})) }) }) + sonar = merge(local.global,{ for k, v in var.sonar : k => v if !contains(["enable","storage","backups"],k) },{ + backups = merge(local.global-backups, lookup(var.sonar, "backups", {})) + storage = merge({ for k, v in lookup(var.sonar, "storage", {}) : k => v if !contains(["volume"],k) }, { + volume = merge(local.global-volume, lookup(lookup(var.sonar, "storage", {}), "volume", {})) + }) + }) } resource "kubernetes_namespace_v1" "ci-ns" { - count = ( var.gitea.enable )? 1 : 0 + count = ( var.gitea.enable || var.sonar.enable || var.woodpecker.enable )? 1 : 0 metadata { annotations = merge(local.annotations, local.annotations_default) labels = merge(local.common_labels, local.annotations) @@ -86,6 +92,24 @@ resource "kubectl_manifest" "gitea" { EOF } +resource "kubectl_manifest" "sonar" { + count = var.sonar.enable ? 1 : 0 + depends_on = [kubernetes_namespace_v1.ci-ns] + yaml_body = <<-EOF + apiVersion: "vynil.solidite.fr/v1" + kind: "Install" + metadata: + name: "sonar" + namespace: "${var.namespace}-ci" + labels: ${jsonencode(local.common_labels)} + spec: + distrib: "${var.distributions.domain}" + category: "apps" + component: "sonar" + options: ${jsonencode(local.sonar)} + EOF +} + resource "kubectl_manifest" "woodpecker" { count = var.woodpecker.enable ? 1 : 0 depends_on = [kubernetes_namespace_v1.ci-ns] diff --git a/meta/domain-ci/index.yaml b/meta/domain-ci/index.yaml index 1ce6ed2..15778ce 100644 --- a/meta/domain-ci/index.yaml +++ b/meta/domain-ci/index.yaml @@ -103,6 +103,18 @@ options: examples: - fr_FR type: string + sonar: + default: + enable: false + examples: + - enable: false + properties: + enable: + default: false + type: boolean + type: object + x-vynil-category: apps + x-vynil-package: sonar sso_vynil: default: true examples: