diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 3a31650..cfd66a1 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -108,6 +108,48 @@ jobs: echo "DEBUG | ZIP-Datei erzeugt: dist/${ZIP_NAME}" + - name: Gitea‑Release erstellen + id: create_release + run: | + TAG="${{ github.ref_name }}" + VERSION="${{ steps.releaseinfo.outputs.version }}" + CHANNEL="${{ steps.releaseinfo.outputs.channel }}" + + echo "Erstelle Release für Tag: $TAG" + echo "Version: $VERSION" + echo "Kanal: $CHANNEL" + + API_URL="https://${{ vars.RELEASE_URL }}/api/v1/repos/${GITHUB_REPOSITORY}/releases" + + # JSON‑Body erzeugen + JSON=$(jq -n \ + --arg tag "$TAG" \ + --arg name "Version $VERSION" \ + --arg body "Automatisch erzeugtes Release für Kanal: $CHANNEL" \ + '{tag_name: $tag, name: $name, body: $body, draft: false, prerelease: false}') + + echo "Sende API‑Request an: $API_URL" + echo "JSON‑Payload:" + echo "$JSON" + + # Release erstellen + API_RESPONSE=$(curl -s -X POST "$API_URL" \ + -H "accept: application/json" \ + -H "Authorization: token ${{ secrets.RELEASE_TOKEN }}" \ + -H "Content-Type: application/json" \ + -d "$JSON") + + RELEASE_ID=$(echo "$API_RESPONSE" | jq -r '.id') + + if [ "$RELEASE_ID" = "null" ] || [ -z "$RELEASE_ID" ]; then + echo "Fehler beim Erstellen des Releases!" + echo "API‑Antwort:" + echo "$API_RESPONSE" + exit 1 + fi + + echo "Release erfolgreich erstellt. ID: $RELEASE_ID" + echo "release_id=$RELEASE_ID" >> $GITHUB_OUTPUT - name: Debug Info