Skip to content

Commit 8b59440

Browse files
committed
build: migrate to release-please
1 parent 29331c1 commit 8b59440

File tree

7 files changed

+72
-2362
lines changed

7 files changed

+72
-2362
lines changed

.github/workflows/coverage.yml.bk

Lines changed: 0 additions & 15 deletions
This file was deleted.

.github/workflows/docs.yml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,32 +2,38 @@ name: Documentation
22

33
on:
44
push:
5-
branches: [master, pre, develop]
5+
branches: [master]
66

77
jobs:
88
docs:
99
name: Build Documentation
1010
runs-on: ubuntu-latest
11-
# if: "contains(github.event.head_commit.message, 'chore(release)')"
1211
steps:
1312
- name: Checkout
14-
uses: actions/checkout@v3
13+
uses: actions/checkout@v4
1514
with:
1615
fetch-depth: 0
16+
1717
- name: Setup Node.js
18-
uses: actions/setup-node@v3
18+
uses: actions/setup-node@v4
1919
with:
2020
node-version: '20.x'
21-
- name: Install PNPM
22-
run: npm i -g pnpm
21+
22+
- name: Install pnpm
23+
uses: pnpm/action-setup@v4
24+
with:
25+
version: latest
26+
2327
- name: Install dependencies
2428
run: |
2529
pnpm install --frozen-lockfile
2630
cd docs && pnpm install --frozen-lockfile
31+
2732
- name: Build Docs
2833
run: pnpm docs:build
34+
2935
- name: Deploy on GitHub Pages
30-
uses: peaceiris/actions-gh-pages@v3
36+
uses: peaceiris/actions-gh-pages@v4
3137
with:
3238
github_token: ${{ secrets.GITHUB_TOKEN }}
3339
publish_dir: ./docs/build

.github/workflows/pull_requests.yml

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,30 @@ name: Pull Requests
22

33
on:
44
pull_request:
5-
branches: [master, develop, pre]
5+
branches: [master, develop]
6+
67
jobs:
78
build:
89
runs-on: ubuntu-latest
910
steps:
10-
- uses: actions/checkout@v2
11-
- uses: actions/setup-node@v1
11+
- name: Checkout
12+
uses: actions/checkout@v4
13+
14+
- name: Setup Node.js
15+
uses: actions/setup-node@v4
1216
with:
1317
node-version: '20.x'
14-
- name: Install PNPM
15-
run: npm i -g pnpm
18+
19+
- name: Install pnpm
20+
uses: pnpm/action-setup@v4
21+
with:
22+
version: latest
23+
1624
- name: Install dependencies
1725
run: pnpm install --frozen-lockfile
26+
1827
- name: Run Tests
1928
run: pnpm test
29+
2030
- name: Build Package
2131
run: pnpm build

.github/workflows/release.yml

Lines changed: 40 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,59 @@
11
name: Release
2+
23
on:
34
push:
4-
branches: [master, pre, develop]
5+
branches: [master]
6+
57
permissions:
6-
contents: read # for checkout
8+
contents: write
9+
pull-requests: write
10+
id-token: write
711

812
jobs:
9-
release:
10-
name: Release
13+
release-please:
14+
name: Release Please
1115
runs-on: ubuntu-latest
12-
permissions:
13-
contents: write # to be able to publish a GitHub release
14-
issues: write # to be able to comment on released issues
15-
pull-requests: write # to be able to comment on released pull requests
16-
id-token: write # to enable use of OIDC for npm provenance
16+
outputs:
17+
release_created: ${{ steps.release.outputs.release_created }}
18+
tag_name: ${{ steps.release.outputs.tag_name }}
1719
steps:
18-
- name: Checkout
19-
uses: actions/checkout@v3
20+
- name: Release Please
21+
id: release
22+
uses: googleapis/release-please-action@v4
2023
with:
21-
fetch-depth: 0
24+
token: ${{ secrets.GITHUB_TOKEN }}
25+
release-type: node
26+
27+
publish:
28+
name: Publish to NPM
29+
runs-on: ubuntu-latest
30+
needs: release-please
31+
if: ${{ needs.release-please.outputs.release_created }}
32+
steps:
33+
- name: Checkout
34+
uses: actions/checkout@v4
35+
2236
- name: Setup Node.js
23-
uses: actions/setup-node@v3
37+
uses: actions/setup-node@v4
2438
with:
2539
node-version: '20.x'
26-
- name: Install PNPM
27-
run: npm i -g pnpm
40+
registry-url: 'https://registry.npmjs.org'
41+
42+
- name: Install pnpm
43+
uses: pnpm/action-setup@v4
44+
with:
45+
version: latest
46+
2847
- name: Install dependencies
2948
run: pnpm install --frozen-lockfile
49+
3050
- name: Run Tests
3151
run: pnpm test
52+
3253
- name: Build Package
3354
run: pnpm build
34-
- name: Pack
35-
run: cd ./build && pnpm pack --pack-destination=../
36-
# - name: Verify the integrity of provenance attestations and registry signatures for installed dependencies
37-
# run: npm audit signatures
38-
- name: Semantic Release
55+
56+
- name: Publish to NPM
57+
run: pnpm publish ./build --access public --no-git-checks
3958
env:
40-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
41-
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
42-
run: npx semantic-release
59+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

package.json

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,14 @@
2121
"test": "jest",
2222
"docs:build": "cd docs && pnpm build",
2323
"docs:watch": "cd docs && pnpm start",
24-
"docs:deploy": "pnpm docs:build && gh-pages -d docs",
25-
"semantic-release": "semantic-release",
26-
"changelog": "conventional-changelog -i CHANGELOG.md -s -r 0; echo \"# Change Log\n\n$(cat CHANGELOG.md)\" > CHANGELOG.md"
24+
"docs:deploy": "pnpm docs:build && gh-pages -d docs"
2725
},
2826
"devDependencies": {
29-
"@semantic-release/changelog": "^6.0.3",
30-
"@semantic-release/exec": "^7.1.0",
31-
"@semantic-release/git": "^10.0.1",
32-
"@semantic-release/release-notes-generator": "^14.1.0",
3327
"@types/jest": "^30.0.0",
3428
"@types/node": "^25.0.10",
35-
"conventional-changelog": "^7.1.1",
36-
"conventional-changelog-cli": "^5.0.0",
3729
"gh-pages": "^6.3.0",
3830
"jest": "^30.2.0",
3931
"prettier": "^3.8.1",
40-
"semantic-release": "^25.0.2",
4132
"ts-jest": "^29.4.6",
4233
"ts-node": "^10.9.2",
4334
"typescript": "^5.9.3"

0 commit comments

Comments
 (0)