Previously, all system charts have had their versions bumped with every update of Cozystack, even if the underlying images and templates did not change. Additionally, some components would have their docker images rebuilt and get updated digests because of a changed docker context, even though no relevant code had been changed. This would cause an upgrade of several HelmReleases on every upgrade of Cozystack, even when in practice nothing had changed. This is especially noticeable for charts, such as kubeovn, which is a dependency for almost all other system HelmReleases. By moving kubeovn out of the monorepo and decoupling its release cycle from the release cycle of Cozystack, this issue can be resolved and is another step towards decomposing Cozystack. ```release-note [kubeovn] Decouple the release cycle of kubeovn from Cozystack's release cycle, preventing unnecessary redeployments of all Helm releases, when upgrading Cozystack. ``` Signed-off-by: Timofei Larkin <lllamnyp@gmail.com>
14 lines
678 B
Makefile
14 lines
678 B
Makefile
OUT=../../_out/repos/system
|
|
CHARTS := $(shell grep -F 'version: 0.0.0' */Chart.yaml | cut -f1 -d/)
|
|
VERSIONED_CHARTS := $(shell grep '^version:' */Chart.yaml | grep -Fv '0.0.0' | cut -f1 -d/)
|
|
|
|
include ../../scripts/common-envs.mk
|
|
|
|
repo:
|
|
rm -rf "$(OUT)"
|
|
helm package -d "$(OUT)" $(CHARTS) --version $(COZYSTACK_VERSION)
|
|
helm package -d "$(OUT)" $(VERSIONED_CHARTS)
|
|
cd "$(OUT)" && helm repo index .
|
|
|
|
fix-charts:
|
|
find . -maxdepth 2 -name Chart.yaml | awk -F/ '{print $$2}' | while read i; do sed -i -e "s/^name: .*/name: cozy-$$i/" -e "s/^version: .*/version: 0.0.0 # Placeholder, the actual version will be automatically set during the build process/g" "$$i/Chart.yaml"; done
|