Skip to content

Commit a53c4e7

Browse files
committed
ci: add release-please for release management
1 parent 7ee7c75 commit a53c4e7

File tree

4 files changed

+66
-0
lines changed

4 files changed

+66
-0
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Release Please
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
workflow_dispatch:
8+
9+
permissions:
10+
contents: write
11+
pull-requests: write
12+
13+
jobs:
14+
release-please:
15+
runs-on: ubuntu-latest
16+
steps:
17+
- name: Run Release Please
18+
uses: googleapis/release-please-action@16a9c90856f42705d54a6fda1823352bdc62cf38
19+
with:
20+
config-file: release-please-config.json
21+
manifest-file: .release-please-manifest.json

.release-please-manifest.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "1.0.2"
3+
}

MAINTAINERS.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Maintainers
2+
3+
This file documents the release workflow for this repository.
4+
5+
## Release automation (Release Please)
6+
7+
- Workflow: `.github/workflows/release-please.yml`
8+
- Trigger: pushes to `main` (or manual run via `workflow_dispatch`)
9+
- Behavior: opens or updates a release PR and manages `CHANGELOG.md`
10+
- Merge: merging the release PR creates the Git tag and GitHub Release
11+
12+
## Release checklist
13+
14+
1. Ensure commit messages follow conventional commits:
15+
- `fix:` for patch releases
16+
- `feat:` for minor releases
17+
- `feat!:` or `BREAKING CHANGE:` for major releases
18+
2. Verify `dist/` is up to date if any `src/` files changed since the last release:
19+
- run `npm run bundle`
20+
- if `dist/` changes, commit them to the release PR
21+
3. Confirm CI is green on the release PR
22+
4. Merge the release PR
23+
24+
## After merge
25+
26+
- Confirm the GitHub Release is published (not a draft)
27+
- Verify the Marketplace listing reflects the new release tag/version
28+
29+
## Notes
30+
31+
- `CHANGELOG.md` is generated by Release Please; avoid manual edits.
32+
- If no release PR is created, confirm there are new conventional commits since the last tag.

release-please-config.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"packages": {
3+
".": {
4+
"release-type": "simple",
5+
"package-name": "github-api-usage-tracker",
6+
"changelog-path": "CHANGELOG.md",
7+
"include-v-in-tag": true
8+
}
9+
}
10+
}

0 commit comments

Comments
 (0)