Skip to content

Commit f84811e

Browse files
committed
chore: set up semantic release
1 parent 1fdb25f commit f84811e

File tree

4 files changed

+8495
-2865
lines changed

4 files changed

+8495
-2865
lines changed

.github/workflows/release.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: Release
2+
on:
3+
push:
4+
branches:
5+
- master
6+
- next
7+
- "*.x"
8+
- "*.x.x"
9+
10+
permissions:
11+
contents: read # for checkout
12+
13+
jobs:
14+
release:
15+
name: Release
16+
runs-on: ubuntu-latest
17+
permissions:
18+
contents: write # to be able to publish a GitHub release
19+
issues: write # to be able to comment on released issues
20+
pull-requests: write # to be able to comment on released pull requests
21+
id-token: write # to enable use of OIDC for npm provenance
22+
steps:
23+
- name: Checkout
24+
uses: actions/checkout@v3
25+
with:
26+
fetch-depth: 0
27+
token: ${{ secrets.CI_GITHUB_TOKEN }}
28+
persist-credentials: false
29+
- name: Setup Node.js 14
30+
uses: actions/setup-node@v3
31+
with:
32+
node-version: 20
33+
- name: Install dependencies
34+
run: npm clean-install
35+
- name: Setup LTS Node.js
36+
uses: actions/setup-node@v3
37+
with:
38+
node-version: "lts/*"
39+
- name: Release
40+
env:
41+
GITHUB_TOKEN: ${{ secrets.CI_GITHUB_TOKEN }}
42+
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
43+
run: npx semantic-release

.releaserc

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"plugins": [
3+
[
4+
"@semantic-release/commit-analyzer",
5+
{
6+
"preset": "angular",
7+
"releaseRules": [
8+
{ "type": "docs", "release": "patch" },
9+
{ "type": "refactor", "release": "patch" },
10+
{ "type": "perf", "release": "patch" },
11+
{ "type": "revert", "release": "patch" }
12+
]
13+
}
14+
],
15+
[
16+
"@semantic-release/release-notes-generator",
17+
{
18+
"parserOpts": {
19+
"noteKeywords": ["BREAKING CHANGE", "BREAKING CHANGES", "BREAKING"]
20+
},
21+
"preset": "conventionalcommits",
22+
"presetConfig": {
23+
"types": [
24+
{ "type": "build", "section": "Build System", "hidden": false },
25+
{ "type": "chore", "section": "Build System", "hidden": false },
26+
{ "type": "ci", "section": "Continuous Integration", "hidden": false },
27+
{ "type": "docs", "section": "Documentation", "hidden": false },
28+
{ "type": "feat", "section": "Features", "hidden": false },
29+
{ "type": "fix", "section": "Bug Fixes", "hidden": false },
30+
{ "type": "perf", "section": "Performance Improvements", "hidden": false },
31+
{ "type": "refactor", "section": "Code Refactoring", "hidden": false },
32+
{ "type": "revert", "section": "Reverted Changes", "hidden": false },
33+
{ "type": "style", "section": "Styles", "hidden": false },
34+
{ "type": "test", "section": "Tests", "hidden": false }
35+
]
36+
},
37+
"writerOpts": {
38+
"commitsSort": ["subject", "scope"]
39+
}
40+
}
41+
],
42+
"@semantic-release/github",
43+
"@semantic-release/npm",
44+
"@semantic-release/git"
45+
],
46+
"branches": ["+([0-9])?(.{+([0-9]),x}).x", "main", {"name": "next", "prerelease": true}]
47+
}

0 commit comments

Comments
 (0)