From 0d0e7788f8c86bcdbbef505654e9489808f38183 Mon Sep 17 00:00:00 2001 From: PastaLaPate Date: Sun, 1 Nov 2026 16:28:23 +0100 Subject: ci(release-binaries): use a table to download binaries instead of long files --- .github/workflows/release-binaries.yml | 59 +++++++++++++++++++++++++++------- 1 file changed, 47 insertions(+), 12 deletions(-) (limited to '.github') diff --git a/.github/workflows/release-binaries.yml b/.github/workflows/release-binaries.yml index 20aa57f7aa..ea1005ca01 100644 --- a/.github/workflows/release-binaries.yml +++ b/.github/workflows/release-binaries.yml @@ -563,36 +563,71 @@ jobs: run: | set -euo pipefail mkdir dist + # Asset names drop the commit sha: the release tag already identifies the build, and + # stable names let the notes table link to them. + strip_sha() { sed "s/-${GITHUB_SHA}//" <<< "$1"; } for artifact in artifacts/*/; do name=$(basename "$artifact") if compgen -G "$artifact*.AppImage" > /dev/null; then # Linux: ship the AppImage and the tar.gz as they are. - cp "$artifact"/*.AppImage "$artifact"/*.tar.gz dist/ + for file in "$artifact"*.AppImage "$artifact"*.tar.gz; do + cp "$file" "dist/$(strip_sha "$(basename "$file")")" + done elif compgen -G "$artifact*.zip" > /dev/null; then - cp "$artifact"/*.zip dist/ + for file in "$artifact"*.zip; do + cp "$file" "dist/$(strip_sha "$(basename "$file")")" + done else - (cd "$artifact" && zip -qr "${GITHUB_WORKSPACE}/dist/${name}.zip" .) + (cd "$artifact" && zip -qr "${GITHUB_WORKSPACE}/dist/$(strip_sha "$name").zip" .) fi done + ls -la dist - name: Create release shell: bash env: GH_TOKEN: ${{ github.token }} run: | - ls -la dist - gh release create "build-${GITHUB_RUN_NUMBER}" dist/* \ + set -euo pipefail + tag="build-${GITHUB_RUN_NUMBER}" + base="https://github.com/${GITHUB_REPOSITORY}/releases/download/${tag}" + + cat > notes.md <