#!/usr/bin/make -f # export DH_VERBOSE = 1 export ROOT = debian/tmp export APP_FOLDER = $(ROOT)/usr/local/share/applications/helm export DEB_VERSION = $(shell dpkg-parsechangelog | egrep '^Version:' | cut -f 2 -d ' ') export RELEASE = $(shell echo $(DEB_VERSION) | cut -f 1 -d '-') export REVISION = $(shell echo $(DEB_VERSION) | cut -f 4 -d '.') export APP_NAME = metrics-server export APP_VERSION = $(RELEASE)-$(REVISION) export APP_TARBALL_FLUXCD = $(APP_NAME)-$(APP_VERSION).tgz export HELM_REPO = stx-platform export STAGING_FLUXCD = staging-fluxcd export HELM_FOLDER = /usr/lib/helm %: dh $@ override_dh_auto_build: ############ # COMMON # ############ # Create the TGZ file. cd helm-charts && make ############ # FLUXCD # ############ # Setup the staging directory. mkdir -p $(STAGING_FLUXCD) cp files/metadata.yaml $(STAGING_FLUXCD) cp -Rv fluxcd-manifests $(STAGING_FLUXCD) mkdir -p $(STAGING_FLUXCD)/charts cp $(HELM_FOLDER)/metrics*.tgz $(STAGING_FLUXCD)/charts # Populate metadata. sed -i 's/APP_REPLACE_NAME/$(APP_NAME)/g' $(STAGING_FLUXCD)/metadata.yaml sed -i 's/APP_REPLACE_VERSION/$(APP_VERSION)/g' $(STAGING_FLUXCD)/metadata.yaml sed -i 's/HELM_REPLACE_REPO/$(HELM_REPO)/g' $(STAGING_FLUXCD)/metadata.yaml # Copy the plugins: installed in the buildroot mkdir -p $(STAGING_FLUXCD)/plugins cp /plugins/*.whl $(STAGING_FLUXCD)/plugins # Package fluxcd cp -R fluxcd-manifests $(STAGING_FLUXCD)/ # calculate checksum of all files in app_staging cd $(STAGING_FLUXCD) && find . -type f ! -name '*.md5' -print0 | xargs -0 md5sum > checksum.md5 tar cfz $(APP_TARBALL_FLUXCD) -C $(STAGING_FLUXCD)/ . # Cleanup staging rm -rf $(STAGING_FLUXCD) override_dh_auto_install: # Install the app tar file. install -d -m 755 $(APP_FOLDER) install -p -D -m 755 $(APP_TARBALL_FLUXCD) $(APP_FOLDER) override_dh_auto_test: override_dh_usrlocal: