From 8c4a7d9a759c4b2ba618dcc0d609968e44cc6a16 Mon Sep 17 00:00:00 2001 From: Felipe Publio Date: Tue, 25 Feb 2025 12:39:36 -0300 Subject: [PATCH] Refactor asset download process in GitHub Actions workflow to use curl for improved reliability and error handling --- .github/workflows/apt.yaml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/.github/workflows/apt.yaml b/.github/workflows/apt.yaml index 09769c6..d4a7aa9 100644 --- a/.github/workflows/apt.yaml +++ b/.github/workflows/apt.yaml @@ -70,30 +70,32 @@ jobs: - name: Download GitHub Release Assets run: | mkdir -p /tmp/debs/amd64 /tmp/debs/arm64 + api_response=$(curl -s \ + "https://api.github.com/repos/${{ github.repository }}/releases/latest") + RELEASE_TAG=$(echo "$api_response" | jq -r .tag_name) + assets_url=$(echo "$api_response" | jq -r .assets_url) - # Get the tag of the current release - RELEASE_TAG="${{ github.event.release.tag_name }}" echo "Processing release $RELEASE_TAG" - - # Get list of assets from the release - assets_url="${{ github.event.release.assets_url }}" + echo "Assets URL: $assets_url" # Download amd64 .deb file amd64_asset=$(curl -s $assets_url | jq -r '.[] | select(.name | endswith("_linux_amd64.deb")) | .browser_download_url') if [ -n "$amd64_asset" ]; then echo "Downloading AMD64 package: $amd64_asset" - wget -P /tmp/debs/amd64 $amd64_asset + curl -L -o "/tmp/debs/amd64/$(basename $amd64_asset)" "$amd64_asset" else echo "No AMD64 .deb package found in release" + exit 1 fi # Download arm64 .deb file arm64_asset=$(curl -s $assets_url | jq -r '.[] | select(.name | endswith("_linux_arm64.deb")) | .browser_download_url') if [ -n "$arm64_asset" ]; then echo "Downloading ARM64 package: $arm64_asset" - wget -P /tmp/debs/arm64 $arm64_asset + curl -L -o "/tmp/debs/arm64/$(basename $arm64_asset)" "$arm64_asset" else echo "No ARM64 .deb package found in release" + exit 1 fi # Verify downloads