@@ -11,18 +11,28 @@ jobs:
1111 release-stable :
1212 runs-on : ubuntu-24.04
1313 name : Release Stable
14+ permissions :
15+ contents : write
16+ id-token : write # Required for npm trusted publishing
1417 outputs :
1518 published : ${{ steps.changesets.outputs.published }}
1619 steps :
1720 - name : Checkout Repo
1821 uses : actions/checkout@v4
1922
2023 - uses : pnpm/action-setup@v4
24+
2125 - name : Setup NodeJS
2226 uses : actions/setup-node@v4
2327 with :
2428 node-version : 22
2529 cache : " pnpm"
30+ registry-url : " https://registry.npmjs.org"
31+
32+ # Ensure npm >= 11.5.1 for trusted publishing support.
33+ # Automatically fetch future security updates
34+ - name : Update npm
35+ run : npm install -g npm@^11.5.1
2636
2737 - name : Install Dependencies
2838 run : pnpm install --frozen-lockfile
3747 version : pnpm changeset-version
3848 env :
3949 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
40- NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
4150
4251 - name : Get current package version
4352 id : get_version
@@ -54,32 +63,32 @@ jobs:
5463 name : Release Unstable
5564 needs : release-stable
5665 if : always() && github.event_name == 'push' && needs.release-stable.outputs.published == 'false'
66+ permissions :
67+ contents : write
68+ id-token : write # Required for npm trusted publishing
5769 steps :
5870 - name : Checkout Repo
5971 uses : actions/checkout@v4
6072
6173 - uses : pnpm/action-setup@v4
74+
6275 - name : Setup NodeJS
6376 uses : actions/setup-node@v4
6477 with :
6578 node-version : 20
6679 cache : " pnpm"
80+ registry-url : " https://registry.npmjs.org"
81+
82+ # Ensure npm >= 11.5.1 for trusted publishing support
83+ - name : Update npm
84+ run :
npm install -g [email protected] 6785
6886 - name : Install Dependencies
6987 run : pnpm install --frozen-lockfile
7088
71- - name : Creating .npmrc
72- run : |
73- cat << EOF > ".npmrc"
74- //registry.npmjs.org/:_authToken=$NPM_TOKEN
75- EOF
76- env :
77- NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
78-
7989 - name : Create unstable release
8090 env :
8191 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
82- NPM_TOKEN : ${{ secrets.NPM_TOKEN }}
8392 run : |
8493 # this ensures there's always a patch release created
8594 cat << 'EOF' > .changeset/snapshot-template-changeset.md
0 commit comments