Skip to content

Commit 6d3308e

Browse files
committed
chore: update release process
1 parent 2c8a765 commit 6d3308e

3 files changed

Lines changed: 1481 additions & 60 deletions

File tree

.github/workflows/release.yml

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,46 @@
11
name: Release
22

33
on:
4-
push:
5-
tags:
6-
- 'v*'
4+
workflow_dispatch:
5+
6+
permissions:
7+
contents: write
8+
id-token: write
79

810
jobs:
11+
checks:
12+
uses: ./.github/workflows/ci.yml
13+
914
release:
15+
needs: checks
1016
runs-on: ubuntu-latest
1117
steps:
1218
- uses: actions/checkout@v4
1319
with:
1420
fetch-depth: 0
1521

22+
- name: Setup pnpm
23+
uses: pnpm/action-setup@v4
24+
1625
- name: Setup Node.js
17-
uses: actions/setup-node@v3
26+
uses: actions/setup-node@v4
1827
with:
19-
node-version: 21
28+
node-version: 22
29+
cache: pnpm
30+
registry-url: 'https://registry.npmjs.org'
2031

21-
- name: Install pnpm
32+
- name: Git config
2233
run: |
23-
corepack enable
24-
corepack prepare pnpm@latest --activate
34+
git config user.name "${GITHUB_ACTOR}"
35+
git config user.email "${GITHUB_ACTOR}@users.noreply.github.com"
36+
37+
- run: corepack enable && npm i -g npm@11
38+
39+
- name: Install dependencies
40+
run: pnpm install
2541

26-
- run: npx changelogithub
42+
- name: Release
43+
run: pnpm release
2744
env:
28-
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
45+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

package.json

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@
2727
"type": "module",
2828
"main": "./dist/index.js",
2929
"publishConfig": {
30-
"access": "public"
30+
"access": "public",
31+
"provenance": true
3132
},
3233
"scripts": {
3334
"build": "tsdown",
@@ -37,7 +38,7 @@
3738
"lint": "oxlint --fix",
3839
"format": "oxfmt --write .",
3940
"prepublishOnly": "pnpm build",
40-
"release": "bumpp --commit --push --tag && pnpm publish",
41+
"release": "pnpm build && release-it --ci",
4142
"dev:playground": "pnpm vite -c playground/vite.config.ts",
4243
"quick:test": "node bin/test.ts",
4344
"test": "node bin/test.ts",
@@ -55,13 +56,14 @@
5556
"@japa/file-system": "^3.0.0",
5657
"@japa/runner": "^5.3.0",
5758
"@julr/tooling-configs": "^6.1.0",
59+
"@release-it/conventional-changelog": "^10.0.6",
5860
"@types/node": "^24.12.0",
5961
"@vinejs/vine": "^4.3.0",
6062
"arktype": "^2.2.0",
61-
"bumpp": "^10.4.1",
6263
"cross-env": "^10.1.0",
6364
"oxfmt": "^0.40.0",
6465
"oxlint": "^1.55.0",
66+
"release-it": "^19.2.4",
6567
"tsdown": "^0.21.3",
6668
"typescript": "^5.9.3",
6769
"valibot": "^1.2.0",
@@ -74,5 +76,29 @@
7476
"engines": {
7577
"node": ">=22"
7678
},
77-
"packageManager": "pnpm@10.32.1"
79+
"packageManager": "pnpm@10.32.1",
80+
"release-it": {
81+
"git": {
82+
"requireCleanWorkingDir": true,
83+
"requireUpstream": true,
84+
"commitMessage": "chore(release): ${version}",
85+
"tagAnnotation": "v${version}",
86+
"push": true,
87+
"tagName": "v${version}"
88+
},
89+
"github": {
90+
"release": true
91+
},
92+
"npm": {
93+
"publish": true,
94+
"skipChecks": true
95+
},
96+
"plugins": {
97+
"@release-it/conventional-changelog": {
98+
"preset": {
99+
"name": "angular"
100+
}
101+
}
102+
}
103+
}
78104
}

0 commit comments

Comments
 (0)