File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Release
2+
3+ on :
4+ workflow_dispatch :
5+ inputs :
6+ run_id :
7+ description : ' Workflow run ID to take artifacts from'
8+ required : true
9+ type : string
10+ tag :
11+ description : ' Tag name (e.g. v1.0.5)'
12+ required : true
13+ type : string
14+ prerelease :
15+ description : ' Mark as pre-release'
16+ required : false
17+ type : boolean
18+ default : false
19+
20+ jobs :
21+ release :
22+ name : Create Release
23+ runs-on : ubuntu-latest
24+ permissions :
25+ contents : write
26+ steps :
27+ - uses : actions/checkout@v4
28+
29+ - name : Download artifacts
30+ env :
31+ GH_TOKEN : ${{ github.token }}
32+ run : |
33+ mkdir -p release-assets
34+ gh run download ${{ inputs.run_id }} --dir release-artifacts
35+
36+ for dir in release-artifacts/*/; do
37+ name=$(basename "$dir")
38+ (cd "$dir" && zip -r "../../release-assets/${name}.zip" .)
39+ done
40+
41+ - name : Create tag
42+ run : |
43+ git tag ${{ inputs.tag }}
44+ git push origin ${{ inputs.tag }}
45+
46+ - name : Create release
47+ env :
48+ GH_TOKEN : ${{ github.token }}
49+ run : |
50+ gh release create ${{ inputs.tag }} \
51+ --title "${{ inputs.tag }}" \
52+ ${{ inputs.prerelease && '--prerelease' || '' }} \
53+ release-assets/*
You can’t perform that action at this time.
0 commit comments