feat: support all SemVer 2.0 pre-release identifiers
Install yq / install-yq (ubuntu-latest-amd64, amd64, linux) (push) Successful in 9s
Install yq / install-yq (ubuntu-latest-arm64, arm64, linux) (push) Successful in 11s
Markdown linter / markdown-link-checker (push) Successful in 29s
Markdown linter / markdown-lint (push) Successful in 35s

Replace the RC-only pattern with a generic SemVer 2.0 pre-release
pattern so that tags like -alpha, -beta, -dev or -rc are all correctly
detected as pre-releases. Previously only -rc tags were recognized.

Also configure git user identity before tagging in the auto-release
workflow.

Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
2026-08-17 22:14:28 +02:00
co-authored by Copilot
parent 1aaa54e066
commit 994de3ecec
3 changed files with 11 additions and 9 deletions
+4 -4
View File
@@ -7,7 +7,7 @@
set -euo pipefail
readonly CHART_FILE="${CHART_FILE:="Chart.yaml"}"
readonly RC_PATTERN="\-rc([-\.][0-9]+)?$"
readonly PRERELEASE_PATTERN="\-[a-zA-Z0-9]+([-\.][a-zA-Z0-9]+)*$"
CHANGE_LOG_YAML=""
@@ -24,8 +24,8 @@ if [[ ! -f "${CHART_FILE}" ]]; then
fi
# Determine old and new tags
DEFAULT_NEW_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${RC_PATTERN}" | head --lines 1)"
DEFAULT_OLD_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${RC_PATTERN}" | head --lines 2 | tail --lines 1)"
DEFAULT_NEW_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${PRERELEASE_PATTERN}" | head --lines 1)"
DEFAULT_OLD_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${PRERELEASE_PATTERN}" | head --lines 2 | tail --lines 1)"
if [[ -n "${INPUT_OLD_TAG:-}" ]]; then
OLD_TAG="${INPUT_OLD_TAG}"
@@ -49,7 +49,7 @@ if [[ -z "$(git tag --list "${NEW_TAG}")" ]]; then
exit 1
fi
if [[ "${NEW_TAG}" =~ ${RC_PATTERN} ]]; then
if [[ "${NEW_TAG}" =~ ${PRERELEASE_PATTERN} ]]; then
echo "INFO: Tag '${NEW_TAG}' is a prerelease, setting prerelease annotation and skipping changelog."
yq --no-colors --inplace ".annotations.\"artifacthub.io/prerelease\" = \"true\" | sort_keys(.)" "${CHART_FILE}"
exit 0