From cf1d9fabf4306fdf77d7e6e44bbcb8491c2dd97e Mon Sep 17 00:00:00 2001 From: Andrei Kvapil Date: Tue, 25 Jun 2024 19:23:20 +0200 Subject: [PATCH] add fluxcd labels post processor (#180) This PR introduces a new fluxcd-kustomize.sh script that can be used as post-processor for helm for adding a common fluxcd labels. This is very useful for `make diff`, so it will not include diff between these labels anymore Also for debugging specific kustomize cases, eg: - https://github.com/fluxcd/helm-controller/issues/283 - https://github.com/fluxcd/flux2/issues/4368 Signed-off-by: Andrei Kvapil --- packages/system/capi-operator/Makefile | 4 +- packages/system/capi-providers/Makefile | 4 +- packages/system/cert-manager-issuers/Makefile | 4 +- packages/system/cert-manager/Makefile | 4 +- packages/system/cilium/Makefile | 4 +- packages/system/clickhouse-operator/Makefile | 4 +- packages/system/dashboard/Makefile | 4 +- packages/system/etcd-operator/Makefile | 4 +- packages/system/grafana-operator/Makefile | 4 +- packages/system/ingress-nginx/Makefile | 4 +- packages/system/kafka-operator/Makefile | 4 +- packages/system/kamaji/Makefile | 4 +- packages/system/kubeovn/Makefile | 4 +- .../system/kubevirt-cdi-operator/Makefile | 4 +- packages/system/kubevirt-cdi/Makefile | 4 +- packages/system/kubevirt-operator/Makefile | 4 +- packages/system/kubevirt/Makefile | 4 +- packages/system/linstor/Makefile | 4 +- packages/system/mariadb-operator/Makefile | 4 +- packages/system/metallb/Makefile | 4 +- packages/system/monitoring/Makefile | 4 +- packages/system/piraeus-operator/Makefile | 4 +- packages/system/postgres-operator/Makefile | 4 +- packages/system/rabbitmq-operator/Makefile | 4 +- packages/system/redis-operator/Makefile | 4 +- packages/system/telepresence/Makefile | 4 +- .../system/victoria-metrics-operator/Makefile | 4 +- scripts/fluxcd-kustomize.sh | 37 +++++++++++++++++++ scripts/package-system.mk | 6 +-- 29 files changed, 94 insertions(+), 57 deletions(-) create mode 100755 scripts/fluxcd-kustomize.sh diff --git a/packages/system/capi-operator/Makefile b/packages/system/capi-operator/Makefile index b3c9f770..2fd794d3 100644 --- a/packages/system/capi-operator/Makefile +++ b/packages/system/capi-operator/Makefile @@ -1,5 +1,5 @@ -NAME=capi-operator -NAMESPACE=cozy-cluster-api +export NAME=capi-operator +export NAMESPACE=cozy-cluster-api include ../../../scripts/package-system.mk diff --git a/packages/system/capi-providers/Makefile b/packages/system/capi-providers/Makefile index 339d569f..6e8d7868 100644 --- a/packages/system/capi-providers/Makefile +++ b/packages/system/capi-providers/Makefile @@ -1,4 +1,4 @@ -NAME=capi-providers -NAMESPACE=cozy-cluster-api +export NAME=capi-providers +export NAMESPACE=cozy-cluster-api include ../../../scripts/package-system.mk diff --git a/packages/system/cert-manager-issuers/Makefile b/packages/system/cert-manager-issuers/Makefile index 7d38f770..7c01ba56 100644 --- a/packages/system/cert-manager-issuers/Makefile +++ b/packages/system/cert-manager-issuers/Makefile @@ -1,4 +1,4 @@ -NAME=cert-manager-issuers -NAMESPACE=cozy-cert-manager +export NAME=cert-manager-issuers +export NAMESPACE=cozy-cert-manager include ../../../scripts/package-system.mk diff --git a/packages/system/cert-manager/Makefile b/packages/system/cert-manager/Makefile index c871d9d3..929b160a 100644 --- a/packages/system/cert-manager/Makefile +++ b/packages/system/cert-manager/Makefile @@ -1,5 +1,5 @@ -NAME=cert-manager -NAMESPACE=cozy-$(NAME) +export NAME=cert-manager +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/cilium/Makefile b/packages/system/cilium/Makefile index a5caba3b..44d20e29 100644 --- a/packages/system/cilium/Makefile +++ b/packages/system/cilium/Makefile @@ -1,7 +1,7 @@ CILIUM_TAG=$(shell awk '$$1 == "version:" {print $$2}' charts/cilium/Chart.yaml) -NAME=cilium -NAMESPACE=cozy-$(NAME) +export NAME=cilium +export NAMESPACE=cozy-$(NAME) include ../../../scripts/common-envs.mk include ../../../scripts/package-system.mk diff --git a/packages/system/clickhouse-operator/Makefile b/packages/system/clickhouse-operator/Makefile index b83cf6df..64447cca 100644 --- a/packages/system/clickhouse-operator/Makefile +++ b/packages/system/clickhouse-operator/Makefile @@ -1,5 +1,5 @@ -NAME=clickhouse-operator -NAMESPACE=cozy-clickhouse-operator +export NAME=clickhouse-operator +export NAMESPACE=cozy-clickhouse-operator include ../../../scripts/package-system.mk diff --git a/packages/system/dashboard/Makefile b/packages/system/dashboard/Makefile index e7a91bd4..d17d36aa 100644 --- a/packages/system/dashboard/Makefile +++ b/packages/system/dashboard/Makefile @@ -1,5 +1,5 @@ -NAME=dashboard -NAMESPACE=cozy-$(NAME) +export NAME=dashboard +export NAMESPACE=cozy-$(NAME) include ../../../scripts/common-envs.mk include ../../../scripts/package-system.mk diff --git a/packages/system/etcd-operator/Makefile b/packages/system/etcd-operator/Makefile index 0c82cdb9..5c0dee74 100644 --- a/packages/system/etcd-operator/Makefile +++ b/packages/system/etcd-operator/Makefile @@ -1,5 +1,5 @@ -NAME=etcd-operator -NAMESPACE=cozy-${NAME} +export NAME=etcd-operator +export NAMESPACE=cozy-${NAME} include ../../../scripts/package-system.mk diff --git a/packages/system/grafana-operator/Makefile b/packages/system/grafana-operator/Makefile index 05916ae5..38eed61c 100644 --- a/packages/system/grafana-operator/Makefile +++ b/packages/system/grafana-operator/Makefile @@ -1,5 +1,5 @@ -NAME=grafana-operator -NAMESPACE=cozy-grafana-operator +export NAME=grafana-operator +export NAMESPACE=cozy-grafana-operator include ../../../scripts/package-system.mk diff --git a/packages/system/ingress-nginx/Makefile b/packages/system/ingress-nginx/Makefile index 21e77233..a6b85f48 100644 --- a/packages/system/ingress-nginx/Makefile +++ b/packages/system/ingress-nginx/Makefile @@ -1,5 +1,5 @@ -NAME=ingress-nginx -NAMESPACE=cozy-$(NAME) +export NAME=ingress-nginx +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/kafka-operator/Makefile b/packages/system/kafka-operator/Makefile index e68cb803..29c32688 100644 --- a/packages/system/kafka-operator/Makefile +++ b/packages/system/kafka-operator/Makefile @@ -1,5 +1,5 @@ -NAME=kafka-operator -NAMESPACE=cozy-$(NAME) +export NAME=kafka-operator +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/kamaji/Makefile b/packages/system/kamaji/Makefile index 163d5548..bc4af6e9 100644 --- a/packages/system/kamaji/Makefile +++ b/packages/system/kamaji/Makefile @@ -1,5 +1,5 @@ -NAME=kamaji -NAMESPACE=cozy-$(NAME) +export NAME=kamaji +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/kubeovn/Makefile b/packages/system/kubeovn/Makefile index b47ba177..ce53fcfe 100644 --- a/packages/system/kubeovn/Makefile +++ b/packages/system/kubeovn/Makefile @@ -1,7 +1,7 @@ KUBEOVN_TAG = v1.13.0 -NAME=kubeovn -NAMESPACE=cozy-$(NAME) +export NAME=kubeovn +export NAMESPACE=cozy-$(NAME) include ../../../scripts/common-envs.mk include ../../../scripts/package-system.mk diff --git a/packages/system/kubevirt-cdi-operator/Makefile b/packages/system/kubevirt-cdi-operator/Makefile index b34c0f0f..6cf08193 100644 --- a/packages/system/kubevirt-cdi-operator/Makefile +++ b/packages/system/kubevirt-cdi-operator/Makefile @@ -1,5 +1,5 @@ -NAME=kubevirt-cdi-operator -NAMESPACE=cozy-kubevirt-cdi +export NAME=kubevirt-cdi-operator +export NAMESPACE=cozy-kubevirt-cdi include ../../../scripts/package-system.mk diff --git a/packages/system/kubevirt-cdi/Makefile b/packages/system/kubevirt-cdi/Makefile index 09e37e3e..c6209a54 100644 --- a/packages/system/kubevirt-cdi/Makefile +++ b/packages/system/kubevirt-cdi/Makefile @@ -1,5 +1,5 @@ -NAME=kubevirt-cdi -NAMESPACE=cozy-$(NAME) +export NAME=kubevirt-cdi +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/kubevirt-operator/Makefile b/packages/system/kubevirt-operator/Makefile index 8f4de121..cea1a529 100644 --- a/packages/system/kubevirt-operator/Makefile +++ b/packages/system/kubevirt-operator/Makefile @@ -1,5 +1,5 @@ -NAME=kubevirt-operator -NAMESPACE=cozy-kubevirt +export NAME=kubevirt-operator +export NAMESPACE=cozy-kubevirt include ../../../scripts/package-system.mk diff --git a/packages/system/kubevirt/Makefile b/packages/system/kubevirt/Makefile index 80636712..e939b0f1 100644 --- a/packages/system/kubevirt/Makefile +++ b/packages/system/kubevirt/Makefile @@ -1,5 +1,5 @@ -NAME=kubevirt -NAMESPACE=cozy-$(NAME) +export NAME=kubevirt +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/linstor/Makefile b/packages/system/linstor/Makefile index 9191aa74..34e8cd9c 100644 --- a/packages/system/linstor/Makefile +++ b/packages/system/linstor/Makefile @@ -1,4 +1,4 @@ -NAME=linstor -NAMESPACE=cozy-$(NAME) +export NAME=linstor +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/mariadb-operator/Makefile b/packages/system/mariadb-operator/Makefile index 292fa0aa..a94e4306 100644 --- a/packages/system/mariadb-operator/Makefile +++ b/packages/system/mariadb-operator/Makefile @@ -1,5 +1,5 @@ -NAME=mariadb-operator -NAMESPACE=cozy-$(NAME) +export NAME=mariadb-operator +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/metallb/Makefile b/packages/system/metallb/Makefile index 423bbd50..09085f4e 100644 --- a/packages/system/metallb/Makefile +++ b/packages/system/metallb/Makefile @@ -1,5 +1,5 @@ -NAME=metallb -NAMESPACE=cozy-$(NAME) +export NAME=metallb +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/monitoring/Makefile b/packages/system/monitoring/Makefile index 8ebc1e4c..bfc68669 100644 --- a/packages/system/monitoring/Makefile +++ b/packages/system/monitoring/Makefile @@ -1,5 +1,5 @@ -NAME=monitoring -NAMESPACE=cozy-$(NAME) +export NAME=monitoring +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/piraeus-operator/Makefile b/packages/system/piraeus-operator/Makefile index 222d5ef7..ae459844 100644 --- a/packages/system/piraeus-operator/Makefile +++ b/packages/system/piraeus-operator/Makefile @@ -1,5 +1,5 @@ -NAME=piraeus-operator -NAMESPACE=cozy-linstor +export NAME=piraeus-operator +export NAMESPACE=cozy-linstor include ../../../scripts/package-system.mk diff --git a/packages/system/postgres-operator/Makefile b/packages/system/postgres-operator/Makefile index d5e25ee0..037948fc 100644 --- a/packages/system/postgres-operator/Makefile +++ b/packages/system/postgres-operator/Makefile @@ -1,5 +1,5 @@ -NAME=postgres-operator -NAMESPACE=cozy-$(NAME) +export NAME=postgres-operator +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/rabbitmq-operator/Makefile b/packages/system/rabbitmq-operator/Makefile index 143ff227..999958c0 100644 --- a/packages/system/rabbitmq-operator/Makefile +++ b/packages/system/rabbitmq-operator/Makefile @@ -1,5 +1,5 @@ -NAME=rabbitmq-operator -NAMESPACE=cozy-$(NAME) +export NAME=rabbitmq-operator +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/redis-operator/Makefile b/packages/system/redis-operator/Makefile index 1fc8474f..28007838 100644 --- a/packages/system/redis-operator/Makefile +++ b/packages/system/redis-operator/Makefile @@ -1,5 +1,5 @@ -NAME=redis-operator -NAMESPACE=cozy-$(NAME) +export NAME=redis-operator +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/packages/system/telepresence/Makefile b/packages/system/telepresence/Makefile index ff48731b..31de4820 100644 --- a/packages/system/telepresence/Makefile +++ b/packages/system/telepresence/Makefile @@ -1,5 +1,5 @@ -NAME=traffic-manager -NAMESPACE=cozy-telepresence +export NAME=traffic-manager +export NAMESPACE=cozy-telepresence include ../../../scripts/package-system.mk diff --git a/packages/system/victoria-metrics-operator/Makefile b/packages/system/victoria-metrics-operator/Makefile index 99e28582..5221bfae 100644 --- a/packages/system/victoria-metrics-operator/Makefile +++ b/packages/system/victoria-metrics-operator/Makefile @@ -1,5 +1,5 @@ -NAME=victoria-metrics-operator -NAMESPACE=cozy-$(NAME) +export NAME=victoria-metrics-operator +export NAMESPACE=cozy-$(NAME) include ../../../scripts/package-system.mk diff --git a/scripts/fluxcd-kustomize.sh b/scripts/fluxcd-kustomize.sh new file mode 100755 index 00000000..a0af5a71 --- /dev/null +++ b/scripts/fluxcd-kustomize.sh @@ -0,0 +1,37 @@ +#!/bin/sh +# This scripts adds common fluxcd labels to all objects + +if [ -z "$NAME" ]; then + echo 'Variable $NAME is not set!' >&2 + exit 1 +fi + +if [ -z "$NAMESPACE" ]; then + echo 'Variable $NAMESPACE is not set!' >&2 + exit 1 +fi + +TMP_DIR=$(mktemp -d) +cat - > "${TMP_DIR}/helm-generated-output.yaml" +cat > "${TMP_DIR}/global-labels.yaml" < "${TMP_DIR}/kustomization.yaml" <