Skip to content
This repository was archived by the owner on Apr 2, 2024. It is now read-only.

Commit 246eff3

Browse files
committed
Add release checklist using GH issue template
Signed-off-by: Arunprasad Rajkumar <[email protected]>
1 parent cf6e399 commit 246eff3

File tree

2 files changed

+95
-0
lines changed

2 files changed

+95
-0
lines changed

.github/ISSUE_TEMPLATE/release.md

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Release checklist
2+
3+
## Step-by-step release process
4+
5+
### Prepare release PR
6+
- [ ] Create a branch named `release-{version}`:
7+
- [ ] If it's a patch release, based the new branch out of the one that
8+
contains the fixes. For example, if we added some fixes to the already
9+
released `release-0.12` branch, then it will be the base for our `0.12.1`
10+
release.
11+
- [ ] Update `version` and `appVersion` in `deploy/helm-chart/Chart.yml`
12+
- [ ] Update Promscale in `pkg/version/version.go` update. If required, update
13+
the values for PrevReleaseVersion, PgVersionNumRange and
14+
ExtVersionRangeString.
15+
- [ ] If the release includes changes to prom-migrator, update the `version`
16+
variable at `migration-tool/cmd/prom-migrator/main.go`.
17+
- [ ] (optionally) Update `prom-migrator` version in `.goreleaser.yml` (2 places)
18+
- [ ] Run `./scripts/generate-deploy-script.sh`
19+
- [ ] Finalize CHANGELOG, adding release version and date
20+
- [ ] Commit: `git commit -a -m "Prepare for the 0.1.0-alpha.4 release"`
21+
- Create PR:
22+
- [ ] For major/minor releases the PR should target the master branch.
23+
- [ ] For patch releases the PR should target the release branch it was
24+
based of.
25+
- Wait for review and merge.
26+
27+
### Prepare git tag
28+
- [ ] Pull the branch were the PR was merged, it should be `master` for
29+
major/minor and `release-{version}` for patch releases. Triple check that
30+
you have the right commit checked out.
31+
- [ ] tag commit: `git tag -a 0.1.0-alpha.1 -m "Release 0.1.0-alpha.1"`
32+
- [ ] push tag to main repo (not in fork!) `git push origin 0.1.0-alpha.1`
33+
34+
### Create GitHub release notes
35+
36+
[ ] The `goreleaser` GitHub Action will automatically create a new draft release with the generated binaries, docker images, and a changelog attached. When it is created contact PM to validate if release notes are correct and click green publish button.
37+
38+
### Post-release
39+
40+
For major/minor releases:
41+
42+
- [ ] Update Promscale and PrevReleaseVersion in `pkg/version/version.go` to the
43+
next devel version.
44+
- [ ] Commit: `git commit -a -m "Prepare for the next development cycle"`
45+
- [ ] Create PR & Merge when ready
46+
- [ ] Update Promscale docs to point to the latest release as done in this [PR](https://github.com/timescale/docs/pull/1075)
47+
48+
For patch releases:
49+
50+
- [ ] Update Promscale docs to point to the latest release as done in this
51+
[PR](https://github.com/timescale/docs/pull/1075).
52+
- [ ] Create a branch based on master.
53+
- [ ] Cherry-pick the commits related to the patch.
54+
- [ ] Merge back into master.
55+
56+
Take a breath. You're done releasing.
57+
58+
## Release notes guide
59+
60+
Here are a couple of good examples of release notes which can be used for comparison:
61+
- [Full release 0.6.0](https://github.com/timescale/promscale/releases/tag/0.6.0)
62+
- [Patch release 0.6.2](https://github.com/timescale/promscale/releases/tag/0.6.2)
63+
64+
The following sections describe the different aspects of the release which should be highlighted.
65+
66+
### Headline Features
67+
68+
Describe the major features of this release. Point to announcements or blog posts for reference.
69+
70+
### Thanks
71+
72+
It's nice to shout out to community members who've contributed some changes. Use the following to find all authors (and then figure out who are internal and external on your own):
73+
74+
```
75+
git shortlog --summary --numbered --email <PREV_RELEASE>..<CURRENT_RELEASE>
76+
```
77+
78+
### Deprecations
79+
80+
Highlight functionality which has been deprecated in this release, and give and indication of when users can expect that the deprecated functionality will be removed.
81+
82+
### Backwards-incompatible changes
83+
84+
Highlight functionality which has been removed in this release, and point out the alternatives (if present).
85+
86+
### Upgrade notes
87+
88+
Provide any notes on special steps that users must take during the upgrade, e.g. configuration changes which must (or can) be made.
89+
90+
### Changelog
91+
92+
This will be automatically populated by `goreleaser`. Remove all bors merge commits and dependabot version bump commits.

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,3 +192,6 @@ applies as in TimescaleDB; please sign the [Contributor License
192192
Agreement](https://cla-assistant.io/timescale/promscale)
193193
(CLA) if you're a new contributor.
194194

195+
## Release
196+
197+
Release checklist is available when creating new ["Release Checklist" issue](https://github.com/timescale/promscale/issues/new?template=release.md).

0 commit comments

Comments
 (0)