From c59a71035224a22363d2457183526d43278cd0c9 Mon Sep 17 00:00:00 2001 From: Ralf Kirchner Date: Thu, 29 May 2025 12:53:48 +0200 Subject: [PATCH] .gitea/workflows/release.yml aktualisiert --- .gitea/workflows/release.yml | 43 ++++++++++++++++++++++++------------ 1 file changed, 29 insertions(+), 14 deletions(-) diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 705b96c..3e09a05 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -11,8 +11,7 @@ jobs: steps: - name: Enable debug output - run: | - set -x + run: set -x - name: Checkout source uses: actions/checkout@v3 @@ -45,33 +44,49 @@ jobs: - name: Show git-chglog version run: git-chglog --version - - name: Generate CHANGELOG.md for current tag + - name: Determine previous tag + id: tags run: | - TAG=${GITHUB_REF##*/} # z.B. v1.0.0 - echo "Generating changelog for tag: $TAG" - git-chglog -o CHANGELOG.md "$TAG" - echo "Changelog generated:" - cat CHANGELOG.md + CURRENT_TAG="${GITHUB_REF##*/}" + PREVIOUS_TAG=$(git tag --sort=-creatordate | grep -v "$CURRENT_TAG" | tail -n1 || true) + + echo "CURRENT_TAG=$CURRENT_TAG" >> $GITHUB_ENV + echo "PREVIOUS_TAG=$PREVIOUS_TAG" >> $GITHUB_ENV + + - name: Generate CHANGELOGs + run: | + # Vollständiger Changelog + git-chglog -o CHANGELOG.md + + # Nur aktueller Abschnitt + if [ -n "$PREVIOUS_TAG" ]; then + git-chglog "$PREVIOUS_TAG..$CURRENT_TAG" > RELEASE_BODY.md + else + git-chglog "$CURRENT_TAG" > RELEASE_BODY.md + fi + + echo "Release changelog content:" + cat RELEASE_BODY.md - name: Create Gitea Release via API (Markdown-safe) env: TOKEN: ${{ secrets.TOKEN }} OWNER: ${{ env.OWNER }} REPO: ${{ env.REPO }} + CURRENT_TAG: ${{ env.CURRENT_TAG }} run: | - TAG=${GITHUB_REF##*/} - BODY=$(base64 -w0 CHANGELOG.md) + BODY=$(base64 -w0 RELEASE_BODY.md) DECODED_BODY=$(echo "$BODY" | base64 -d | jq -Rs .) - echo "Creating release for tag $TAG" + echo "Creating release for tag $CURRENT_TAG" - curl -X POST "https://dev.ksite.de/api/v1/repos/${OWNER}/${REPO}/releases" \ + curl -s -X POST "https://dev.ksite.de/api/v1/repos/${OWNER}/${REPO}/releases" \ -H "Content-Type: application/json" \ -H "Authorization: token $TOKEN" \ -d @- <