Refactor update job to store release data in environment variables and simplify debug step

This commit is contained in:
Florian Weber 2025-06-26 16:07:23 +02:00
parent cadd22d22b
commit 34af6e65d2
Signed by: f.weber
GPG Key ID: A1C85EB19014A2D3

View File

@ -18,39 +18,55 @@ jobs:
runs-on: ubuntu-24.04 runs-on: ubuntu-24.04
steps: steps:
- name: Get latest Homebrewery release via GitHub API - name: Get latest Homebrewery release via GitHub API
id: latest_release
run: | run: |
# 1) API-Call
resp=$(curl -sSf \ resp=$(curl -sSf \
-H "Accept: application/vnd.github.v3+json" \ -H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token ${{ secrets.GH_TOKEN }}" \ -H "Authorization: token ${{ secrets.GH_TOKEN }}" \
https://api.github.com/repos/naturalcrit/homebrewery/releases/latest) https://api.github.com/repos/naturalcrit/homebrewery/releases/latest)
echo "tag_name=$(echo "$resp" | jq -r .tag_name)" >> "$GITHUB_OUTPUT" id=$( echo "$resp" | jq -r .id)
echo "name=$(echo "$resp" | jq -r .name)" >> "$GITHUB_OUTPUT" tag_name=$( echo "$resp" | jq -r .tag_name)
echo "id=$(echo "$resp" | jq -r .id)" >> "$GITHUB_OUTPUT" name=$( echo "$resp" | jq -r .name)
echo "url=$(echo "$resp" | jq -r .url)" >> "$GITHUB_OUTPUT" url=$( echo "$resp" | jq -r .url)
echo "draft=$(echo "$resp" | jq -r .draft)" >> "$GITHUB_OUTPUT" draft=$( echo "$resp" | jq -r .draft)
echo "prerelease=$(echo "$resp" | jq -r .prerelease)" >> "$GITHUB_OUTPUT" prerelease=$( echo "$resp" | jq -r .prerelease)
body_text=$( echo "$resp" | jq -r .body)
echo "ID=$id" >>"$GITHUB_ENV"
echo "TAG_NAME=$tag_name" >>"$GITHUB_ENV"
echo "NAME=$name" >>"$GITHUB_ENV"
echo "URL=$url" >>"$GITHUB_ENV"
echo "DRAFT=$draft" >>"$GITHUB_ENV"
echo "PRERELEASE=$prerelease" >>"$GITHUB_ENV"
{
echo "BODY<<EOF"
printf '%s\n' "$body_text"
echo "EOF"
} >>"$GITHUB_ENV"
- name: Debug step - name: Debug step
run: | run: |
echo "id: ${{ steps.latest_release.id }}" echo "id: $ID"
echo "draft: ${{ steps.latest_release.draft }}" echo "draft: $DRAFT"
echo "tag_name: ${{ steps.latest_release.tag_name }}" echo "tag_name: $TAG_NAME"
echo "name: ${{ steps.latest_release.name }}" echo "name: $NAME"
echo "url: ${{ steps.latest_release.url }}" echo "url: $URL"
echo "prerelease: ${{ steps.latest_release.prerelease }}" echo "prerelease: $PRERELEASE"
- name: Create Docker Release - name: Create Docker Release
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
if: ${{ steps.latest_release.id && !steps.latest_release.draft }} if: ${{ env.ID > 0 && env.DRAFT != 'true' }}
with: with:
prerelease: ${{ steps.latest_release.prerelease }} prerelease: ${{ env.PRERELEASE }}
name: ${{ steps.latest_release.name }} name: ${{ env.NAME }}
tag_name: ${{ steps.latest_release.tag_name }} tag_name: ${{ env.TAG_NAME }}
body: | body: |
# Homebrewery ${{ steps.latest_release.name }} Image # Homebrewery ${{ env.$NAME }} Image
> _This is an automated Docker Image update. Nothing other than the Homebrewery version changed._ > _This is an automated Docker Image update. Nothing other than the Homebrewery version changed._
See original Changelog from [${{ steps.latest_release.name }}](${{ steps.latest_release.url }}) ${{ env.BODY }}
See original Changelog from [${{ env.NAME }}](${{ env.URL }})