88permissions :
99 contents : write
1010
11+ concurrency :
12+ group : release-management-${{ github.ref }}
13+ cancel-in-progress : true
14+
1115jobs :
12- build_and_upload :
16+ build :
1317 name : Build SU2 (${{ matrix.os_bin }})
1418 runs-on : ubuntu-latest
1519
5963 cd install
6064 zip -r ../${{ matrix.os_bin }}.zip bin/*
6165
62- - name : Upload Workflow Artifact
66+ - name : Upload Build Artifact
6367 uses : actions/upload-artifact@v5
6468 with :
6569 name : ${{ matrix.os_bin }}
@@ -71,11 +75,45 @@ jobs:
7175 env :
7276 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
7377
74- - name : Upload Release Asset
78+ release :
79+ name : Update Draft Release
80+ runs-on : ubuntu-latest
81+ needs : build
82+
83+ steps :
84+ - name : Checkout Repository
85+ uses : actions/checkout@v4
86+
87+ - name : Download All Build Artifacts
88+ uses : actions/download-artifact@v5
89+ with :
90+ path : release-assets
91+
92+ - name : Flatten Artifact Directory
93+ run : |
94+ find release-assets -name "*.zip" -exec mv {} . \;
95+
96+ - name : Update Release Draft
97+ id : release_drafter
98+ uses : release-drafter/release-drafter@v6
99+ env :
100+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
101+
102+ - name : Upload Release Assets
75103 env :
76104 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
77105 TAG_NAME : ${{ steps.release_drafter.outputs.tag_name }}
78106 run : |
79- gh release upload "$TAG_NAME" \
80- "${{ matrix.os_bin }}.zip#SU2-${TAG_NAME}-${{ matrix.os_bin }}.zip" \
81- --clobber
107+ set -e
108+
109+ for file in *.zip; do
110+
111+ asset_name="SU2-${TAG_NAME}-${file}"
112+
113+ echo "Uploading $asset_name"
114+
115+ gh release upload "$TAG_NAME" \
116+ "$file#$asset_name" \
117+ --clobber
118+
119+ done
0 commit comments