-
Notifications
You must be signed in to change notification settings - Fork 1.8k
104 lines (93 loc) · 4.64 KB
/
publish-release.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
name: Publish release
on:
workflow_dispatch: # 手动触发
inputs:
version:
description: '版本号'
required: true
jobs:
build:
name: publish relesae
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup .NET
uses: actions/setup-dotnet@v1
with:
dotnet-version: 5.0.x
- name: Publish and zip
run: |
cd ./src/Ray.BiliBiliTool.Console
dotnet publish --configuration Release --self-contained false -o ./bin/Publish/net5-dependent
echo "dotnet Ray.BiliBiliTool.Console.dll" > ./bin/Publish/net5-dependent/start.bat
dotnet publish --configuration Release --runtime win-x86 --self-contained true -p:PublishTrimmed=true -o ./bin/Publish/win-x86-x64
dotnet publish --configuration Release --runtime linux-arm --self-contained true -p:PublishTrimmed=true -o ./bin/Publish/linux-arm
dotnet publish --configuration Release --runtime linux-x64 --self-contained true -p:PublishTrimmed=true -o ./bin/Publish/linux-x64
dotnet publish --configuration Release --runtime osx-x64 --self-contained true -p:PublishTrimmed=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: ./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: ./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: ./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: ./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: ./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