From 29080d1f871a571fbd3971d60267cd1dd08fc4df Mon Sep 17 00:00:00 2001 From: mw Date: Mon, 7 Aug 2023 14:36:28 +0200 Subject: [PATCH 1/6] feat(base-cluster/nginx): add possibility to disable ingress --- charts/base-cluster/templates/ingress/nginx.yaml | 2 ++ .../templates/monitoring/kube-prometheus-stack/_helpers.yaml | 4 ++-- charts/base-cluster/values.schema.json | 5 +++++ charts/base-cluster/values.yaml | 1 + 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/charts/base-cluster/templates/ingress/nginx.yaml b/charts/base-cluster/templates/ingress/nginx.yaml index e27abb919..2e6b4199c 100644 --- a/charts/base-cluster/templates/ingress/nginx.yaml +++ b/charts/base-cluster/templates/ingress/nginx.yaml @@ -1,3 +1,4 @@ +{{ if .Values.ingress.enabled }} apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: @@ -71,3 +72,4 @@ spec: image: registry: {{ .Values.global.imageRegistry }} {{- end }} + {{ end }} \ No newline at end of file diff --git a/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml b/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml index ed9444ae8..3b81515a3 100644 --- a/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml +++ b/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml @@ -1,9 +1,9 @@ {{- define "base-cluster.monitoring.ingress" -}} {{- $ingress := dig .name "ingress" nil .context.Values.monitoring | required (printf "You need to set the `ingress` for %s" .name) -}} - {{- if and .context.Values.certManager.email $ingress.enabled (or .context.Values.global.baseDomain $ingress.customDomain) -}} + {{- if and .context.Values.certManager.email $ingress.enabled .context.Values.ingress.enabled (or .context.Values.global.baseDomain $ingress.customDomain) -}} {{- $host := include (printf "base-cluster.%s.host" .name) .context -}} ingress: - enabled: true + enabled: {{ .context.Values.ingress.enabled }} {{- if or (not .context.Values.dns.provider) $ingress.customDomain }} annotations: kubernetes.io/tls-acme: "true" diff --git a/charts/base-cluster/values.schema.json b/charts/base-cluster/values.schema.json index d1902ecde..dd0ab46b9 100644 --- a/charts/base-cluster/values.schema.json +++ b/charts/base-cluster/values.schema.json @@ -891,6 +891,11 @@ "resources": { "$ref": "#/$defs/resourceRequirements" }, + "enabled": { + "type": [ + "boolean" + ] + }, "IP": { "type": [ "string", diff --git a/charts/base-cluster/values.yaml b/charts/base-cluster/values.yaml index 07f73f359..81adee90b 100644 --- a/charts/base-cluster/values.yaml +++ b/charts/base-cluster/values.yaml @@ -365,6 +365,7 @@ flux: gitRepositories: {} ingress: + enabled: true replicas: 2 resources: requests: From 87790518c4a7c9f21df4459a4abf5304519ff268 Mon Sep 17 00:00:00 2001 From: mw Date: Mon, 28 Aug 2023 14:10:03 +0200 Subject: [PATCH 2/6] fix(ingress): fix suggestions --- charts/base-cluster/templates/global/cluster-ingress.yaml | 2 +- .../templates/monitoring/kube-prometheus-stack/_helpers.yaml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/charts/base-cluster/templates/global/cluster-ingress.yaml b/charts/base-cluster/templates/global/cluster-ingress.yaml index 899fe545b..21ec9ca66 100644 --- a/charts/base-cluster/templates/global/cluster-ingress.yaml +++ b/charts/base-cluster/templates/global/cluster-ingress.yaml @@ -1,4 +1,4 @@ -{{- if and .Values.dns.provider .Values.global.baseDomain }} +{{- if and .Values.dns.provider .Values.global.baseDomain .Values.ingress.enabled }} {{- if false }} apiVersion: networking.k8s.io/v1 {{- else }} diff --git a/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml b/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml index 3b81515a3..0ee5c8366 100644 --- a/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml +++ b/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_helpers.yaml @@ -3,7 +3,7 @@ {{- if and .context.Values.certManager.email $ingress.enabled .context.Values.ingress.enabled (or .context.Values.global.baseDomain $ingress.customDomain) -}} {{- $host := include (printf "base-cluster.%s.host" .name) .context -}} ingress: - enabled: {{ .context.Values.ingress.enabled }} + enabled: true {{- if or (not .context.Values.dns.provider) $ingress.customDomain }} annotations: kubernetes.io/tls-acme: "true" From 68e95fdd2c0646c66b15cf16935a7c8cd2eeff11 Mon Sep 17 00:00:00 2001 From: mw Date: Mon, 28 Aug 2023 14:27:23 +0200 Subject: [PATCH 3/6] feat(ci): test for disabled ingress --- charts/base-cluster/ci/disabled-ingress-values.yaml | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 charts/base-cluster/ci/disabled-ingress-values.yaml diff --git a/charts/base-cluster/ci/disabled-ingress-values.yaml b/charts/base-cluster/ci/disabled-ingress-values.yaml new file mode 100644 index 000000000..5d48c2f5f --- /dev/null +++ b/charts/base-cluster/ci/disabled-ingress-values.yaml @@ -0,0 +1,2 @@ +ingress: + enabled: false \ No newline at end of file From f86aae0376e1d1d117e000b255f230653d5787fe Mon Sep 17 00:00:00 2001 From: mw Date: Mon, 28 Aug 2023 14:39:51 +0200 Subject: [PATCH 4/6] feat(ci): add new line to check --- charts/base-cluster/ci/disabled-ingress-values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/base-cluster/ci/disabled-ingress-values.yaml b/charts/base-cluster/ci/disabled-ingress-values.yaml index 5d48c2f5f..9c60e5667 100644 --- a/charts/base-cluster/ci/disabled-ingress-values.yaml +++ b/charts/base-cluster/ci/disabled-ingress-values.yaml @@ -1,2 +1,2 @@ ingress: - enabled: false \ No newline at end of file + enabled: false From cfec9049c2d6c0fea815142258e95d89ac7c2529 Mon Sep 17 00:00:00 2001 From: mw Date: Tue, 26 Sep 2023 09:59:47 +0200 Subject: [PATCH 5/6] fix(ingress): dont create namespace if igress is deactivated --- charts/base-cluster/values.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/charts/base-cluster/values.yaml b/charts/base-cluster/values.yaml index 81adee90b..465223258 100644 --- a/charts/base-cluster/values.yaml +++ b/charts/base-cluster/values.yaml @@ -13,6 +13,7 @@ global: additionalLabels: app.kubernetes.io/component: cert-manager ingress-nginx: + condition: "{{ .Values.ingress.enabled }}" additionalLabels: app.kubernetes.io/component: ingress kyverno: From cb5e4fb77a6d4681920c358c2bb4c710213fea6b Mon Sep 17 00:00:00 2001 From: mw Date: Thu, 28 Sep 2023 14:43:36 +0200 Subject: [PATCH 6/6] fix(ingress): disable grafana charts and Clusterissuers when ingress is deactivated --- charts/base-cluster/templates/cert-manager/clusterissuer.yaml | 2 +- .../monitoring/kube-prometheus-stack/_grafana-config.yaml | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/charts/base-cluster/templates/cert-manager/clusterissuer.yaml b/charts/base-cluster/templates/cert-manager/clusterissuer.yaml index 4f7e4cd0c..0a0e8364e 100644 --- a/charts/base-cluster/templates/cert-manager/clusterissuer.yaml +++ b/charts/base-cluster/templates/cert-manager/clusterissuer.yaml @@ -1,4 +1,4 @@ -{{- if .Values.certManager.email }} +{{- if and .Values.certManager.email .Values.ingress.enabled }} {{- include "base-cluster.helm.resourceWithDependencies" (dict "name" "clusterissuer-letsencrypt-production" "resource" (include "base-cluster.cert-manager.clusterIssuer" (dict "name" "production" "url" "https://acme-v02.api.letsencrypt.org/directory" "context" $)) "dependencies" (dict "cert-manager" "cert-manager") "context" $ "additionalLabels" (dict "app.kubernetes.io/component" "cert-manager")) }} --- {{- include "base-cluster.helm.resourceWithDependencies" (dict "name" "clusterissuer-letsencrypt-staging" "resource" (include "base-cluster.cert-manager.clusterIssuer" (dict "name" "staging" "url" "https://acme-staging-v02.api.letsencrypt.org/directory" "context" $)) "dependencies" (dict "cert-manager" "cert-manager") "context" $ "additionalLabels" (dict "app.kubernetes.io/component" "cert-manager")) }} diff --git a/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_grafana-config.yaml b/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_grafana-config.yaml index 5bff561aa..542d1cccb 100644 --- a/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_grafana-config.yaml +++ b/charts/base-cluster/templates/monitoring/kube-prometheus-stack/_grafana-config.yaml @@ -93,6 +93,7 @@ dashboards: metrics: <<: *dashboard gnetId: 8588 + {{- if .Values.ingress.enabled}} ingress-nginx: <<: *dashboard gnetId: 9614 @@ -101,6 +102,7 @@ dashboards: <<: *dashboard gnetId: 11001 revision: 1 + {{- end}} flux: <<: *dashboard gnetId: 16714