fixed release target
All checks were successful
Go / build (1.23) (push) Successful in 17s

This commit is contained in:
Colin Henry 2024-10-27 12:28:57 -07:00
parent 7e1daaf7d5
commit b7969f89b5

View File

@ -1,20 +1,19 @@
# Variables
REPO_REMOTE := origin
VERSION_TAG_PREFIX := "v" # Prefix for version tags, if any
# Helper function to get the latest tag and increment the version
define next_version
latest_tag=$$(git describe --tags --abbrev=0 2>/dev/null || echo "$(VERSION_TAG_PREFIX)0.0.0"); \
major=$$(echo $$latest_tag | sed -E 's/$(VERSION_TAG_PREFIX)([0-9]+)\.[0-9]+\.[0-9]+/\1/'); \
minor=$$(echo $$latest_tag | sed -E 's/$(VERSION_TAG_PREFIX)[0-9]+\.([0-9]+)\.[0-9]+/\1/'); \
patch=$$(echo $$latest_tag | sed -E 's/$(VERSION_TAG_PREFIX)[0-9]+\.[0-9]+\.([0-9]+)/\1/'); \
latest_tag=$$(git describe --tags --abbrev=0 2>/dev/null || echo "v0.0.0"); \
major=$$(echo $$latest_tag | sed -E 's/^v([0-9]+)\.[0-9]+\.[0-9]+/\1/'); \
minor=$$(echo $$latest_tag | sed -E 's/^v[0-9]+\.([0-9]+)\.[0-9]+/\1/'); \
patch=$$(echo $$latest_tag | sed -E 's/^v[0-9]+\.[0-9]+\.([0-9]+)/\1/'); \
next_patch=$$(($$patch + 1)); \
echo "$(VERSION_TAG_PREFIX)$$major.$$minor.$$next_patch"
echo "v$$major.$$minor.$$next_patch"
endef
# Target to tag and push the next version
release:
@next_version=$$($(next_version)); \
echo "Tagging with version $$next_version"; \
echo "Tagging with version $$next_version";
git tag $$next_version; \
git push $(REPO_REMOTE) $$next_version