Korrektur der Version- und Channel-Bestimmung für Suffixe

This commit is contained in:
Michael Otto
2026-03-13 09:59:19 +01:00
parent 541c210bf6
commit 46d23087e2

View File

@@ -4,7 +4,7 @@ run-name: "Release | ${{ github.ref_name }}"
on: on:
push: push:
tags: tags:
- '*' - 'v*'
jobs: jobs:
release: release:
@@ -41,28 +41,46 @@ jobs:
run: | run: |
TAG="${{ github.ref_name }}" TAG="${{ github.ref_name }}"
if [[ "$TAG" =~ ^v ]]; then case "$TAG" in
*-unstable*)
VERSION="${TAG%-unstable}"
VERSION="${VERSION#v}"
CHANNEL="unstable"
DRAFT="false"
PRERELEASE="true"
;;
*-testing*)
VERSION="${TAG%-testing}"
VERSION="${VERSION#v}"
CHANNEL="testing"
DRAFT="false"
PRERELEASE="true"
;;
v*)
VERSION="${TAG#v}" VERSION="${TAG#v}"
CHANNEL="stable" CHANNEL="stable"
DRAFT="false" DRAFT="false"
PRERELEASE="false" PRERELEASE="false"
elif [[ "$TAG" =~ ^t ]]; then ;;
t*)
VERSION="${TAG#t}" VERSION="${TAG#t}"
CHANNEL="testing" CHANNEL="testing"
DRAFT="false" DRAFT="false"
PRERELEASE="true" PRERELEASE="true"
elif [[ "$TAG" =~ ^u ]]; then ;;
u*)
VERSION="${TAG#u}" VERSION="${TAG#u}"
CHANNEL="unstable" CHANNEL="unstable"
DRAFT="false" DRAFT="false"
PRERELEASE="true" PRERELEASE="true"
else ;;
# Fallback für andere Prefixe, z.B. x26.3.1 -> 26.3.1-unstable *)
VERSION="${TAG#?}" VERSION="${TAG#?}"
CHANNEL="unstable" CHANNEL="unstable"
DRAFT="false" DRAFT="false"
PRERELEASE="true" PRERELEASE="true"
fi ;;
esac
echo "version=$VERSION" >> $GITHUB_OUTPUT echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "channel=$CHANNEL" >> $GITHUB_OUTPUT echo "channel=$CHANNEL" >> $GITHUB_OUTPUT
@@ -175,15 +193,9 @@ jobs:
API_URL="https://${{ vars.RELEASE_URL }}/api/v1/repos/${GITHUB_REPOSITORY}/releases" API_URL="https://${{ vars.RELEASE_URL }}/api/v1/repos/${GITHUB_REPOSITORY}/releases"
if [[ "$CHANNEL" == "stable" ]]; then
RELEASE_NAME="$VERSION"
else
RELEASE_NAME="$VERSION-$CHANNEL"
fi
JSON=$(jq -n \ JSON=$(jq -n \
--arg tag "$TAG" \ --arg tag "$TAG" \
--arg name "$RELEASE_NAME" \ --arg name "Version $VERSION" \
--arg body "${{ steps.changelog.outputs.current }}" \ --arg body "${{ steps.changelog.outputs.current }}" \
--argjson draft "${{ steps.releaseinfo.outputs.draft }}" \ --argjson draft "${{ steps.releaseinfo.outputs.draft }}" \
--argjson prerelease "${{ steps.releaseinfo.outputs.prerelease }}" \ --argjson prerelease "${{ steps.releaseinfo.outputs.prerelease }}" \