Skip to content

Commit bd9748c

Browse files
committed
fix(release): implement semantic release
1 parent e73c3bf commit bd9748c

3 files changed

Lines changed: 66 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- rc/*
8+
workflow_dispatch:
9+
10+
jobs:
11+
release:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v6
15+
with:
16+
persist-credentials: false
17+
18+
- id: token
19+
uses: actions/create-github-app-token@v3
20+
with:
21+
app-id: ${{ vars.FRECKLE_AUTOMATION_APP_ID }}
22+
private-key: ${{ secrets.FRECKLE_AUTOMATION_PRIVATE_KEY }}
23+
24+
- id: release
25+
uses: cycjimmy/semantic-release-action@v4
26+
with:
27+
extra_plugins: |
28+
conventional-changelog-conventionalcommits
29+
semantic-release-major-tag
30+
env:
31+
FORCE_COLOR: 1
32+
GITHUB_TOKEN: ${{ steps.token.outputs.token }}

.releaserc.yaml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
plugins:
2+
- - "@semantic-release/commit-analyzer"
3+
- preset: "conventionalcommits"
4+
- - "@semantic-release/release-notes-generator"
5+
- preset: "conventionalcommits"
6+
- - "@semantic-release/github"
7+
- successCommentCondition: false
8+
9+
- "semantic-release-major-tag"
10+
11+
branches:
12+
- main
13+
- name: rc/*
14+
prerelease: '${name.replace(/^rc\//, "rc-")}'

README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,26 @@ Depending on the version of PlatformCLI you install, not all
224224
environment-variable-based configurations may be supported. Please refer to the
225225
documentation for the version you're using.
226226

227+
## Action Versioning
228+
229+
Versioned tags will exist, such as `v1.0.0` and `v2.1.1`. Tags will also exist
230+
for each major version, such as `v1` or `v2` and point to the newest version in
231+
that series.
232+
233+
## Release
234+
235+
To trigger a release (and update the `@v{major}` tag), merge a commit to `main`
236+
that follows [Conventional Commits][]. In short,
237+
238+
- `fix:` to trigger a patch release,
239+
- `feat:` for minor, and
240+
- `<type>!:` or use a `BREAKING CHANGE:` trailer to bump major
241+
242+
We don't enforce conventional commits generally (though you are free do so),
243+
it's only required if you want to trigger release.
244+
245+
[conventional commits]: https://www.conventionalcommits.org/en/v1.0.0/#summary
246+
227247
---
228248

229249
[LICENSE](./LICENSE)

0 commit comments

Comments
 (0)