-
Notifications
You must be signed in to change notification settings - Fork 1
130 lines (107 loc) · 3.28 KB
/
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
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
name: Build/release
on:
push:
tags:
- '*'
jobs:
# 构建网页版
web:
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Install pnpm
run: npm i -g pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Build web
run: pnpm build:web
env:
GH_TOKEN: ${{ secrets.SECRET_TOKEN }}
- name: Deploy website
# 部署github page
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: gh-pages
folder: out/renderer
release:
permissions:
contents: write
runs-on:
${{ matrix.os }} # 使用矩阵策略来确定操作系统
# 这个定义会启用3个系统进行打包
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
steps:
- name: Check out Git repository
uses: actions/checkout@v4
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Install pnpm
run: npm i -g pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Build Windows
if: startsWith(matrix.os, 'windows')
env:
GH_TOKEN: ${{ secrets.SECRET_TOKEN }}
run: |
pnpm build:win --publish onTag
- name: Build Mac
if: startsWith(matrix.os, 'macos')
env:
GH_TOKEN: ${{ secrets.SECRET_TOKEN }}
run: |
pnpm build:mac --publish onTag
- name: Build Linux
if: startsWith(matrix.os, 'ubuntu')
env:
GH_TOKEN: ${{ secrets.SECRET_TOKEN }}
run: |
pnpm build:linux --publish onTag
- name: upload artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.os }}
path: |
dist/bookwise-*.exe
dist/bookwise-*.dmg
dist/bookwise-*.zip
dist/bookwise-*.blockmap
dist/bookwise-*.snap
dist/bookwise-*.AppImage
dist/bookwise-*.deb
dist/bookwise-*.rpm
- name: release
uses: softprops/action-gh-release@v2
if: startsWith(github.ref, 'refs/tags/')
with:
files: dist/*
env:
GITHUB_TOKEN: ${{ secrets.SECRET_TOKEN }}
# - name: release
# uses: softprops/action-gh-release@v2
# if: startsWith(github.ref, 'refs/tags/')
# with:
# files: dist/*
# # GitHub token, automatically provided to the action
# # (No need to define this secret in the repo settings)
# github_token: ${{ secrets.SECRET_TOKEN }}
# - name: Electron app
# uses: softprops/action-gh-release@v2
# if: startsWith(github.ref, 'refs/tags/')
# with:
# # GitHub token, automatically provided to the action
# # (No need to define this secret in the repo settings)
# github_token: ${{ secrets.SECRET_TOKEN }}
# If the commit is tagged with a version (e.g. "v1.0.0"),
# release the app after building