File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Release
2+
3+ on :
4+ push :
5+ tags :
6+ - ' v*.*.*'
7+ - ' v*.*.*-*'
8+ permissions :
9+ contents : write
10+ id-token : write
11+ packages : write
12+
13+ jobs :
14+ release :
15+ runs-on : ubuntu-latest
16+
17+ steps :
18+ - name : Checkout code
19+ uses : actions/checkout@v6
20+
21+ - name : Setup Node.js
22+ uses : actions/setup-node@v6
23+ with :
24+ node-version : ' 26.x'
25+ registry-url : ' https://registry.npmjs.org'
26+ cache : ' npm'
27+
28+ - name : Install dependencies
29+ run : npm ci
30+
31+ - name : Run all checks and build
32+ run : npm run all
33+
34+ - name : Verify the integrity of provenance attestations and registry signatures for installed dependencies
35+ run : npm audit signatures
36+
37+ - name : Determine npm tag and release type
38+ id : release-info
39+ run : |
40+ VERSION=$(node -p "require('./package.json').version")
41+ if [[ "$VERSION" =~ -.*$ ]]; then
42+ echo "npm_tag=next" >> $GITHUB_OUTPUT
43+ echo "is_prerelease=true" >> $GITHUB_OUTPUT
44+ else
45+ echo "npm_tag=latest" >> $GITHUB_OUTPUT
46+ echo "is_prerelease=false" >> $GITHUB_OUTPUT
47+ fi
48+
49+ - name : Stage publish to npm
50+ run : npm stage publish --provenance --access public --tag ${{ steps.release-info.outputs.npm_tag }}
51+
52+ - name : Create GitHub Release
53+ uses : softprops/action-gh-release@v3
54+ with :
55+ generate_release_notes : true
56+ prerelease : true
57+ make_latest : false
You can’t perform that action at this time.
0 commit comments