NAME = prometheus SPEC = golang-github-prometheus-prometheus.spec default: clean tar clean: rm -f $(NAME)-*.tar $(NAME)-*.tar.gz web-ui-*.tar.gz npm_licenses.tar.bz2 vendor.tar.gz tar: osc service manualrun @version=$$( awk '/^Version:/ {print $$2;exit;}' $(SPEC) ) && \ echo "Package version is $$version" && \ basename=$(NAME)-$$version && \ tar=$$basename.tar && \ web_ui=web-ui-$$version.tar && \ wd=$$(pwd) && \ tmpdir=$$(mktemp -d -p /tmp) && \ cd $$tmpdir && \ gunzip $$wd/$$tar.gz && \ tar -xf $$wd/$$tar && \ # recreate tarball explicitly in a format that handles long filenames \ tar --format=posix -cf $$wd/$$tar $$basename && \ cd $$basename && \ # Patches for Go modules go after here \ patch --no-backup-if-mismatch -p1 -i $$wd/0003-Bump-go-retryablehttp.patch && \ patch --no-backup-if-mismatch -p1 -i $$wd/0004-Bump-go-net.patch && \ # End of Go modules patches section \ go mod download && \ go mod verify && \ go mod vendor && \ tar --format=posix -cf $$wd/vendor.tar vendor && \ make assets npm_licenses assets-compress && \ tar -cf $$wd/$$web_ui web/ui/static/react && \ find web/ui/static -type f -name '*.gz' -exec tar -rf $$wd/$$web_ui "{}" \; && \ tar -rf $$wd/$$web_ui web/ui/embed.go && \ cd .. && \ echo "Creating web assets tarball" && \ mv $$basename/npm_licenses.tar.bz2 $$wd && \ cd $$wd && \ gzip $$tar && \ gzip -f $$web_ui && \ gzip -f vendor.tar && \ rm -rf $$tmpdir