1- name : Zip and Upload Folders
1+ name : Zip and Upload Folders with GITHUB_TOKEN
22
33on :
44 workflow_dispatch :
@@ -21,19 +21,24 @@ jobs:
2121 fi
2222 done
2323
24- - name : Find latest release tag
25- id : get_release
24+ - name : Get upload URL of release with tag 'latest'
25+ id : get_upload_url
2626 run : |
27- tag=$(gh release list --limit 1 --json tagName -q '.[0].tagName')
28- echo "Found latest release: $tag"
29- echo "tag=$tag" >> "$GITHUB_OUTPUT"
30- env :
31- GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
27+ api_url="https://api.github.com/repos/${{ github.repository }}/releases/tags/latest"
28+ response=$(curl -s -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" "$api_url")
3229
33- - name : Upload zip files to latest release
30+ upload_url=$(echo "$response" | jq -r .upload_url | sed -e "s/{?name,label}//")
31+ echo "Upload URL: $upload_url"
32+ echo "upload_url=$upload_url" >> "$GITHUB_OUTPUT"
33+
34+ - name : Upload zip files using GitHub API
3435 run : |
3536 for file in zip_outputs/*.zip; do
36- gh release upload "${{ steps.get_release.outputs.tag }}" "$file" --clobber
37+ filename=$(basename "$file")
38+ echo "Uploading $filename..."
39+ curl -s -X POST \
40+ -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
41+ -H "Content-Type: application/zip" \
42+ --data-binary @"$file" \
43+ "${{ steps.get_upload_url.outputs.upload_url }}?name=$filename"
3744 done
38- env :
39- GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
0 commit comments