@@ -20,55 +20,73 @@ jobs:
2020 architecture :
2121 - win-x64
2222 - win-arm64
23+ - linux-x64
24+ - linux-arm64
2325 env :
2426 release : ' fnorm-${{ github.ref_name }}-${{ matrix.architecture }}'
27+ release-directory : ' ${{ github.workspace }}/pub/${{ matrix.architecture }}'
28+ archive-directory : ' ${{ github.workspace }}/archives'
2529 steps :
2630 - uses : actions/checkout@v4
31+
2732 - name : Setup .NET
2833 uses : actions/setup-dotnet@v4
2934 with :
3035 dotnet-version : ' 9.0.x'
3136
37+ - name : Create an archive directory
38+ run : mkdir -p ${{ env.archive-directory }}
39+
3240 - name : Publish ${{ matrix.architecture }} (Windows)
3341 if : matrix.architecture == 'win-x64' || matrix.architecture == 'win-arm64'
34- run : dotnet publish ./src/FixNormalization -c Release -o ./pub/ ${{ matrix.architecture }} -r ${{ matrix.architecture }} --no-self-contained -v normal
42+ run : dotnet publish ./src/FixNormalization -c Release -o ${{ env.release-directory }} -r ${{ matrix.architecture }} --no-self-contained -v normal
3543
3644 - name : Publish ${{ matrix.architecture }} (Others)
3745 if : matrix.architecture != 'win-x64' && matrix.architecture != 'win-arm64'
38- run : dotnet publish ./src/FixNormalization -c Release -o ./pub/ ${{ matrix.architecture }} -r ${{ matrix.architecture }} --self-contained -v normal
46+ run : dotnet publish ./src/FixNormalization -c Release -o ${{ env.release-directory }} -r ${{ matrix.architecture }} --self-contained -v normal
3947
40- - name : Remove unnecessary files
48+ - name : Remove Unnecessary Files
4149 run : |
4250 pushd
43- Set-Location -Path . /pub/${{ matrix.architecture }}
51+ cd ${{ github.workspace }} /pub/${{ matrix.architecture }}
4452 Get-ChildItem -Filter *.pdb | Remove-Item -Force
4553 Get-ChildItem -Filter *.deps.json -Recurse | Remove-Item
4654 Get-ChildItem -Filter *.runtimeconfig.json -Recurse | Remove-Item
4755 popd
48- - name : Archive release ${{ env.release }}
49- uses : thedoctor0/zip-release@master
56+
57+ - name : Create Archives
58+ uses : thedoctor0/zip-release@0.7.5
5059 with :
51- filename : ' ./${{ env.release }}.zip'
52- directory : ' ./pub/${{ matrix.architecture }}'
53- - name : Upload release ${{ env.release }}
60+ type : ' zip'
61+ filename : ' ${{ env.release }}.zip'
62+ directory : ${{ env.archive-directory }}
63+ path : ${{ env.release-directory }}
64+
65+ - name : Upload Artifact
5466 uses : actions/upload-artifact@v4
5567 with :
5668 name : ${{ env.release }}-binary
57- path : ./${{ env.release }}.zip
69+ path : ${{ env.archive-directory }}/${{ env.release }}.zip
70+ overwrite : true
71+
5872 create-release :
5973 name : Create Release on GitHub
6074 needs : [publish]
61- runs-on : windows -latest
75+ runs-on : ubuntu -latest
6276 permissions :
6377 contents : write
6478 discussions : write
79+ env :
80+ blobs : ' ${{ github.workspace }}/blobs'
6581 steps :
66-
6782 - uses : actions/checkout@v4
68- - uses : actions/download-artifact@v4
83+
84+ - name : Download Artifacts
85+ uses : actions/download-artifact@v4
6986 with :
70- name : fnorm-${{ github.ref_name }}-*-binary
71- path : result
87+ pattern : ' *-binary'
88+ path : ${{ env.blobs }}
89+ merge-multiple : true
7290
7391 - name : Release
7492 uses : softprops/action-gh-release@v2
7795 draft : true
7896 token : ${{ secrets.GITHUB_TOKEN }}
7997 files : |
80- result/*.zip
98+ ${{ env.blobs }}/*
8199 make_latest : ${{ !contains(github.ref_name, '-') }}
82100 prerelease : ${{ contains(github.ref_name, '-') }}
83-
84-
0 commit comments