From 57e84c6e389d6d2853097782c2909f2e503e9ca4 Mon Sep 17 00:00:00 2001 From: RayWang <2271272653@qq.com> Date: Sat, 21 Nov 2020 17:55:09 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=87=AA=E5=8A=A8=E6=89=93?= =?UTF-8?q?=E5=8C=85=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/publish-release.yml | 106 ++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 .github/workflows/publish-release.yml diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml new file mode 100644 index 000000000..79fefc37a --- /dev/null +++ b/.github/workflows/publish-release.yml @@ -0,0 +1,106 @@ +name: Publish release + +on: + workflow_dispatch: # 手动触发 + inputs: + version: + description: '版本号' + required: true + +jobs: + build: + name: Publish release and upload asset + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Setup .NET + uses: actions/setup-dotnet@v1.7.2 + with: + dotnet-version: 5.0.100 + + - name: Publish and zip + run: | + cd ./test + dotnet restore + dotnet build --configuration Release --no-restore + cd ./src/Ray.BiliBiliTool.Console + dotnet publish --self-contained false -o ./bin/Publish/net5-dependent + dotnet publish --runtime win-x86 --self-contained true -o ./bin/Publish/win-x86-x64 + dotnet publish --runtime linux-arm --self-contained true -o ./bin/Publish/linux-arm + dotnet publish --runtime linux-x64 --self-contained true -o ./bin/Publish/linux-x64 + dotnet publish --runtime osx-x64 --self-contained true -o ./bin/Publish/osx-x64 + cd ./bin/Publish + zip -q -r bilibili-tool-v${{ github.event.inputs.version }}-net5-dependent.zip net5-dependent + zip -q -r bilibili-tool-v${{ github.event.inputs.version }}-win-x86-x64.zip win-x86-x64 + zip -q -r bilibili-tool-v${{ github.event.inputs.version }}-linux-arm.zip linux-arm + zip -q -r bilibili-tool-v${{ github.event.inputs.version }}-linux-x64.zip linux-x64 + zip -q -r bilibili-tool-v${{ github.event.inputs.version }}-osx-x64.zip osx-x64 + + - name: Create release info + id: create_release + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.event.inputs.version }} + release_name: BiliBiliTool-V${{ github.event.inputs.version }} + draft: true + prerelease: false + + - name: Upload release asset + id: upload-release-asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./test/src/Ray.BiliBiliTool.Console/bin/Publish/bilibili-tool-v${{ github.event.inputs.version }}-net5-dependent.zip + asset_name: bilibili-tool-v${{ github.event.inputs.version }}-net5-dependent.zip + asset_content_type: application/zip + + - name: Upload win-x86-x64 + id: upload-win-x86-x64 + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./test/src/Ray.BiliBiliTool.Console/bin/Publish/bilibili-tool-v${{ github.event.inputs.version }}-win-x86-x64.zip + asset_name: bilibili-tool-v${{ github.event.inputs.version }}-win-x86-x64.zip + asset_content_type: application/zip + + - name: Upload linux-arm + id: upload-linux-arm + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./test/src/Ray.BiliBiliTool.Console/bin/Publish/bilibili-tool-v${{ github.event.inputs.version }}-linux-arm.zip + asset_name: bilibili-tool-v${{ github.event.inputs.version }}-linux-arm.zip + asset_content_type: application/zip + + - name: Upload linux-x64 + id: upload-linux-x64 + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./test/src/Ray.BiliBiliTool.Console/bin/Publish/bilibili-tool-v${{ github.event.inputs.version }}-linux-x64.zip + asset_name: bilibili-tool-v${{ github.event.inputs.version }}-linux-x64.zip + asset_content_type: application/zip + + - name: Upload osx-x64 + id: upload-osx-x64 + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: ./test/src/Ray.BiliBiliTool.Console/bin/Publish/bilibili-tool-v${{ github.event.inputs.version }}-osx-x64.zip + asset_name: bilibili-tool-v${{ github.event.inputs.version }}-osx-x64.zip + asset_content_type: application/zip