Skip to content

Commit 4c2ebad

Browse files
committed
重构自动打包和发布工作流,分离发布和打包作业;新增版本标签生成和发布步骤,优化上传资产逻辑
1 parent 6857fed commit 4c2ebad

1 file changed

Lines changed: 39 additions & 26 deletions

File tree

.github/workflows/auto_package_and_release.yml

Lines changed: 39 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,45 @@ name: Package and Release
33
on:
44
workflow_dispatch:
55
push:
6+
branches:
7+
- main
68
paths:
79
- 'package/config.yml'
810

911
jobs:
10-
package-and-release:
12+
release:
13+
name: release
14+
runs-on: windows-latest
15+
outputs: # 新增 outputs 部分
16+
release_id: ${{ steps.create_release.outputs.id }}
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v4
20+
with:
21+
fetch-depth: 0 # 获取所有历史记录以便生成标签
22+
23+
- name: Generate version tag
24+
id: version
25+
run: |
26+
# 使用 UTC 时间确保一致性
27+
$date = (Get-Date).ToUniversalTime().ToString("yy.MM.dd")
28+
$tag = "v$date"
29+
$release = "Release $date"
30+
echo "tag=$tag" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
31+
echo "release_name=$release" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
32+
33+
- name: Create Release
34+
id: create_release
35+
uses: softprops/action-gh-release@v1 # 使用更活跃维护的 release 操作
36+
env:
37+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
38+
with:
39+
tag_name: ${{ steps.version.outputs.tag }}
40+
name: ${{ steps.version.outputs.release_name }}
41+
generate_release_notes: true
42+
draft: false
43+
prerelease: false
44+
package:
1145
strategy:
1246
matrix:
1347
os: [windows-latest, windows-11-arm]
@@ -28,16 +62,6 @@ jobs:
2862
with:
2963
python-version: '3.12'
3064

31-
- name: Generate version tag
32-
id: version
33-
run: |
34-
# 使用 UTC 时间确保一致性
35-
$date = (Get-Date).ToUniversalTime().ToString("yy.MM.dd")
36-
$tag = "v$date"
37-
$release = "Release $date"
38-
echo "tag=$tag" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
39-
echo "release_name=$release" | Out-File -FilePath $env:GITHUB_OUTPUT -Encoding utf8 -Append
40-
4165
- name: UPX Setup(Windows amd64)
4266
if: ${{ matrix.os == 'windows-latest' }}
4367
run: |
@@ -61,23 +85,12 @@ jobs:
6185
cd package
6286
python build.py config.yml
6387
64-
- name: Create Release
65-
id: create_release
66-
uses: softprops/action-gh-release@v1 # 使用更活跃维护的 release 操作
67-
env:
68-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
69-
with:
70-
tag_name: ${{ steps.version.outputs.tag }}
71-
name: ${{ steps.version.outputs.release_name }}
72-
generate_release_notes: true
73-
draft: false
74-
prerelease: false
75-
76-
- name: Upload Release Assets
88+
- name: Upload Release Assets}
7789
uses: xresloader/upload-to-github-release@main
7890
env:
7991
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
8092
with:
8193
file: "./dist/*.exe;./dist/*.zip"
82-
release_id: ${{ steps.create_release.outputs.id }}
83-
verbose: true
94+
release_id: ${{ needs.release.outputs.release_id }}
95+
verbose: false
96+
overwrite: true

0 commit comments

Comments
 (0)