Skip to content

Commit 4a30d68

Browse files
committed
ci: add publish workflows
1 parent 5bb415f commit 4a30d68

File tree

2 files changed

+90
-0
lines changed

2 files changed

+90
-0
lines changed

.github/workflows/build.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: build
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
types:
11+
- opened
12+
- synchronize
13+
14+
jobs:
15+
quality-check:
16+
runs-on: ubuntu-latest
17+
steps:
18+
- name: Checkout Repository
19+
uses: actions/checkout@v5
20+
with:
21+
fetch-depth: 0
22+
23+
- name: Set up Node
24+
uses: actions/setup-node@v5
25+
with:
26+
node-version: "22"
27+
cache: "npm"
28+
29+
- name: Install dependencies
30+
run: npm ci
31+
32+
- name: Electron rebuild
33+
run: npm run electron-rebuild
34+
35+
- name: Type Check
36+
run: npm run check-types
37+
38+
- name: Lint
39+
run: npm run lint

.github/workflows/release.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: release
2+
3+
on:
4+
push:
5+
tags:
6+
- "[0-9]+.[0-9]+.[0-9]+"
7+
8+
jobs:
9+
package-publish:
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Checkout Repository
13+
uses: actions/checkout@v5
14+
with:
15+
fetch-depth: 0
16+
17+
- name: Set up Node
18+
uses: actions/setup-node@v5
19+
with:
20+
node-version: "22"
21+
cache: "npm"
22+
23+
- name: Install dependencies
24+
run: npm ci
25+
26+
- name: Electron rebuild
27+
run: npm run electron-rebuild
28+
29+
- name: Build
30+
run: npm run package
31+
32+
- name: Create GitHub Release
33+
id: create_release
34+
uses: actions/create-release@v1
35+
env:
36+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
37+
with:
38+
tag_name: ${{ github.ref_name }}
39+
release_name: Release ${{ github.ref_name }}
40+
draft: false
41+
prerelease: false
42+
43+
- name: Upload VSIX artifact
44+
uses: actions/upload-release-asset@v1
45+
env:
46+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
47+
with:
48+
upload_url: ${{ steps.create_release.outputs.upload_url }}
49+
asset_path: ./achievements-*.vsix
50+
asset_name: achievements-${{ github.ref_name }}.vsix
51+
asset_content_type: application/vsix

0 commit comments

Comments
 (0)