Skip to content

Commit 7c90500

Browse files
committed
add actions
1 parent 19a516c commit 7c90500

File tree

1 file changed

+104
-0
lines changed

1 file changed

+104
-0
lines changed
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
name: Release_CLI_Stable
2+
3+
on:
4+
push:
5+
tags:
6+
- "*.*.*"
7+
- "!*.*.*-beta*"
8+
- "!*.*.*-rc*"
9+
10+
jobs:
11+
publish_cli:
12+
name: Build and upload cli artifact
13+
runs-on: ubuntu-latest
14+
strategy:
15+
matrix:
16+
targets:
17+
[
18+
"linux-x64",
19+
"osx-x64",
20+
"win-x86",
21+
]
22+
steps:
23+
- name: Checkout
24+
uses: actions/checkout@v1
25+
- name: Set up .NET Core
26+
uses: actions/setup-dotnet@v1
27+
with:
28+
dotnet-version: "5.0.x"
29+
- name: Publish .NET app
30+
env:
31+
RID: ${{ matrix.targets }}
32+
VERSION: ${{ github.ref_name }}
33+
run: dotnet publish src/dotnet-cnblogs/dotnet-cnblog.csproj -c Release -r $RID -p:PublishSingleFile=true -p:PublishTrimmed=true -p:DebugType=None -p:DebugSymbols=false -p:EnableCompressionInSingleFile=true --self-contained true --output /home/runner/work/clis/$RID
34+
35+
- name: Package assets
36+
env:
37+
RID: ${{ matrix.targets }}
38+
VERSION: ${{ github.ref_name }}
39+
run: |
40+
mkdir /home/runner/work/release
41+
ls /home/runner/work/clis/
42+
zip -j /home/runner/work/release/dotnet-cnblogs.$VERSION.$RID.zip /home/runner/work/clis/$RID/*
43+
- name: Upload artifacts
44+
uses: actions/upload-artifact@v2
45+
with:
46+
name: dotnet-cnblogs
47+
path: /home/runner/work/release
48+
49+
publish_windows_x64_and_arm_aot:
50+
name: Build and upload windows x64 and arm64 aot cli artifact
51+
runs-on: windows-latest
52+
strategy:
53+
matrix:
54+
targets:
55+
[
56+
"win-x64",
57+
"win-arm64"
58+
]
59+
steps:
60+
- name: Checkout
61+
uses: actions/checkout@v1
62+
- name: Setup .NET Core SDK 6.x
63+
uses: actions/setup-dotnet@v2
64+
with:
65+
dotnet-version: 6.x
66+
- name: Publish .NET app
67+
env:
68+
RID: ${{ matrix.targets }}
69+
VERSION: ${{ github.ref_name }}
70+
run: dotnet publish src/dotnet-cnblogs/dotnet-cnblog.csproj -c Release -r $($env:RID) -p:UseAot=true -p:DebugType=None -p:DebugSymbols=false --self-contained true --output ../publish/$($env:RID)
71+
72+
- name: Package assets
73+
env:
74+
RID: ${{ matrix.targets }}
75+
VERSION: ${{ github.ref_name }}
76+
run: |
77+
mkdir ../release
78+
rm -fo ../publish/$($env:RID)/*.pdb
79+
ls ../publish/
80+
Compress-Archive -Path ../publish/$($env:RID)/* -DestinationPath ../release/dotnet-cnblogs.$($env:VERSION).$($env:RID).zip
81+
- name: Upload artifacts
82+
uses: actions/upload-artifact@v2
83+
with:
84+
name: dotnet-cnblogs
85+
path: D:/a/dotnet-cnblogs/release
86+
87+
release_cli:
88+
name: Publish release
89+
needs: ['publish_cli','publish_windows_x64_and_arm_aot']
90+
runs-on: ubuntu-latest
91+
92+
steps:
93+
- name: Download build artifacts
94+
uses: actions/download-artifact@v1
95+
with:
96+
name: dotnet-cnblogs
97+
- name: list dotnet-cnblogs
98+
run: ls dotnet-cnblogs
99+
- name: Release
100+
uses: softprops/action-gh-release@v1
101+
if: startsWith(github.ref, 'refs/tags/')
102+
with:
103+
files: dotnet-cnblogs/**
104+
generate_release_notes: true

0 commit comments

Comments
 (0)