docs: apply updates discovered during the final release
galargh committed
Oct 12, 2022 at 12:13 UTC
4f76b9f3263618edefe3e11f825bae3fa850754c
1 file changed
+36
-26
docs/RELEASE_ISSUE_TEMPLATE.md
+36
-26
@@ -42,6 +42,7 @@ Checklist:
42
- [ ] Ensure you have [GPG key generated]() and [added to your GitHub account](https://docs.github.com/en/authentication/managing-commit-signature-verification/adding-a-gpg-key-to-your-github-account). This will enable you to created signed tags.
43
- [ ] Ensure you have [admin access](https://discuss.ipfs.tech/g/admins) to [IPFS Discourse](https://discuss.ipfs.tech/). Admin access is required to globally pin posts and create banners. @2color might be able to assist you.
44
- [ ] Access to [#bifrost](https://filecoinproject.slack.com/archives/C03MMMF606T) channel in FIL Slack might come in handy. Ask the release reviewer to invite you over.
45
+ - [ ] Access to [##shared-pl-marketing-requests](https://filecoinproject.slack.com/archives/C018EJ8LWH1) channel in FIL Slack will be required to request social shares. Ask the release reviewer to invite you over.
46
- [ ] After the release is deployed to our internal infrastructure, you're going to need read access to [IPFS network metrics](https://github.com/protocol/pldw/blob/624f47cf4ec14ad2cec6adf601a9f7b203ef770d/docs/sources/ipfs.md#ipfs-network-metrics) dashboards. Open an access request in https://github.com/protocol/pldw/issues/new/choose if you don't have it yet ([example](https://github.com/protocol/pldw/issues/158)).
47
- [ ] You're also going to need NPM installed on your system. See [here](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) for instructions.
48
- [ ] Prepare changelog proposal in [docs/changelogs/vX.Y.md](docs/changelogs).
@@ -55,20 +56,17 @@ Checklist:
56
- [ ] See the list here: https://hub.docker.com/r/cimg/go/tags
57
- [ ] [ipfs/distributions](https://github.com/ipfs/distributions): bump [this version](https://github.com/ipfs/distributions/blob/master/.tool-versions#L2)
58
- [ ] [ipfs/kubo](https://github.com/ipfs/kubo): [example PR](https://github.com/ipfs/kubo/pull/8599)
59
+ - [ ] [ipfs/ipfs-docs](https://github.com/ipfs/ipfs-docs): [example PR](https://github.com/ipfs/ipfs-docs/pull/1298)
60
- [ ] Fork a new branch (`release-vX.Y.Z`) from `master`.
61
- [ ] Bump the version in `version.go` in the `master` branch to `vX.(Y+1).0-dev`.
62
- [ ] **Stage 2 - Release Candidate** - _if any [non-trivial](docs/releases.md#footnotes) changes need to be included in the release, return to this stage_
63
- [ ] Bump the version in `version.go` in the `release-vX.Y.Z` branch to `vX.Y.Z-rcN`.
64
- [ ] If applicable, add new commits to the `release-vX.Y.Z` branch from `master` using `git cherry-pick -x ...`
65
- Note: `release-*` branches are protected. You can do all needed updates on a separated branch (e.g. `wip-release-vX.Y.Z`) and when everything is settled push to `release-vX.Y.Z`
64
- - [ ] Update the [docs/changelogs/vX.Y.md](docs/changelogs) with the new commits and contributors.
65
- - [ ] Run `./bin/mkreleaselog` twice to generate the changelog and copy the output.
66
- - The first run of the script might be poluted with `git clone` output.
67
- - [ ] Paste the output into the `### Changelog` section of the changelog file inside the `<details><summary></summary></details>` block.
68
- - [ ] Commit the changelog changes.
66
- [ ] Push the `release-vX.Y.Z` branch to GitHub (`git push origin release-vX.Y.Z`) and create a draft PR targetting `release` branch if it doesn't exist yet ([example](https://github.com/ipfs/kubo/pull/9306)).
67
- [ ] Wait for CI to run and complete PR checks. All checks should pass.
68
- [ ] Tag HEAD `release-vX.Y.Z` commit with `vX.Y.Z-rcN` (`git tag -s vX.Y.Z-rcN -m 'Pre-release X.Y.Z-rcn'`)
69
+ - [ ] Run `git show vX.Y.Z-rcN` to ensure the tag is correct.
70
- [ ] Push the `vX.Y.Z-rcN` tag to GitHub (`git push origin vX.Y.Z-rcN`; DO NOT USE `git push --tags` because it pushes all your local tags).
71
- [ ] Add artifacts to https://dist.ipfs.tech by making a PR against [ipfs/distributions](https://github.com/ipfs/distributions)
72
- [ ] Clone the `ipfs/distributions` repo locally.
@@ -76,9 +74,12 @@ Checklist:
74
- [ ] Run `./dist.sh add-version kubo vX.Y.Z-rcN` to add the new version to the `versions` file ([instructions](https://github.com/ipfs/distributions#usage)).
75
- If you're adding a new RC, `dist.sh` will print _WARNING: not marking pre-release kubo vX.Y.Z-rc1n as the current version._.
76
- [ ] Push the `kubo-release-vX.Y.Z-rcn` branch to GitHub and create a PR from that branch ([example](https://github.com/ipfs/distributions/pull/760)).
79
- - [ ] Wait for PR to build artifacts and generate diff (~30min)
80
- - [ ] Inspect results, merge if CI is green and the diff looks ok
81
- - [ ] Wait for `master` branch to build. It will automatically update DNSLink at https://dist.ipfs.tech (~30min)
77
+ - [ ] Ask for a review from the release reviewer.
78
+ - [ ] Enable auto-merge for the PR.
79
+ - PR build will build the artifacts and generate a diff in around 30 minutes
80
+ - PR will be merged automatically once the diff is approved
81
+ - `master` build will publish the artifacts to https://dist.ipfs.io in around 30 minutes
82
+ - [ ] Ensure that the artifacts are available at https://dist.ipfs.io
83
- [ ] Publish the RC to [the NPM package](https://www.npmjs.com/package/go-ipfs?activeTab=versions) by running https://github.com/ipfs/npm-go-ipfs/actions/workflows/main.yml (it happens automatically but it is safe to speed up the process and kick of a run manually)
84
- _insert additional steps that are relevant only for the final release here_
85
- [ ] Cut a pre-release on [GitHub](https://github.com/ipfs/kubo/releases) ([instructions](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository#creating-a-release), [example](https://github.com/ipfs/kubo/releases/tag/v0.16.0-rc1))
@@ -143,41 +144,48 @@ Checklist:
144
- [ ] **Stage 5 - Release** - _ONLY FOR FINAL RELEASE_
145
- [ ] Prepare the `release` branch.
146
- [ ] Bump the version in `version.go` in the `release-vX.Y.Z` branch to `vX.Y.Z`.
147
+ - [ ] Update the [docs/changelogs/vX.Y.md](docs/changelogs) with the new commits and contributors.
148
+ - [ ] Run `./bin/mkreleaselog` twice to generate the changelog and copy the output.
149
+ - The first run of the script might be poluted with `git clone` output.
150
+ - [ ] Paste the output into the `### Changelog` section of the changelog file inside the `<details><summary></summary></details>` block.
151
+ - [ ] Commit the changelog changes.
152
- [ ] Push the `release-vX.Y.Z` branch to GitHub (`git push origin release-vX.Y.Z`)
153
- [ ] Mark the PR created from `release-vX.Y.Z` as ready for review.
154
- [ ] Ensure the PR is targetting `release` branch.
155
- [ ] Ensure that CI is green.
156
- [ ] Have release reviewer review the PR.
157
- [ ] Merge the PR into `release` branch using the `Create a merge commit` (do **NOT** use `Squash and merge` nor `Rebase and merge` because we need to be able to sign the merge commit).
158
+ - Note: do not delete the `release-vX.Y.Z` branch.
159
- [ ] Checkout the `release` branch locally.
160
- Remember to pull the latest changes.
161
- [ ] Create a signed tag for the release.
162
- [ ] Have release reviewer review the subsequent tagging commits you intend to run.
163
- This is a dangerous operation, as it is difficult to reverse due to Go modules and automated Docker image publishing
164
- [ ] Tag HEAD `release` commit with `vX.Y.Z` (`git tag -s vX.Y.Z -m 'Release X.Y.Z'`)
165
+ - [ ] Run `git show vX.Y.Z` to ensure the tag is correct.
166
- [ ] Push the `vX.Y.Z` tag to GitHub (`git push origin vX.Y.Z`; DO NOT USE `git push --tags` because it pushes all your local tags).
167
+ - [ ] Publish the release.
168
- [ ] Wait for [Publish docker image](https://github.com/ipfs/kubo/actions/workflows/docker-image.yml) workflow run initiated by the tag push to finish.
160
- - [ ] Add artifacts to https://dist.ipfs.tech by making a PR against [ipfs/distributions](https://github.com/ipfs/distributions)
161
- - [ ] Clone the `ipfs/distributions` repo locally.
162
- - [ ] Create a new branch (`kubo-release-vX.Y.Z`) from `master`.
163
- - [ ] Run `./dist.sh add-version kubo vX.Y.Z` to add the new version to the `versions` file ([instructions](https://github.com/ipfs/distributions#usage)).
164
- - [ ] Push the `kubo-release-vX.Y.Z` branch to GitHub and create a PR from that branch ([example](TODO)).
165
- - [ ] Wait for PR to build artifacts and generate diff (~30min)
166
- - [ ] Inspect results, merge if CI is green and the diff looks ok
167
- - [ ] Wait for `master` branch to build. It will automatically update DNSLink at https://dist.ipfs.tech (~30min)
168
- - [ ] Publish the release to [the NPM package](https://www.npmjs.com/package/go-ipfs?activeTab=versions) by running https://github.com/ipfs/npm-go-ipfs/actions/workflows/main.yml (it happens automatically but it is safe to speed up the process and kick of a run manually)
169
- - [ ] Publish the release to [chocolatey](https://chocolatey.org/packages/go-ipfs) by running https://github.com/ipfs/choco-go-ipfs/actions/workflows/main.yml (it happens automatically but it is safe to speed up the process and kick of a run manually)
170
- - [ ] Wait for Chocolatey to approve the release (usually takes a few hours)
171
- - [ ] Ensure the release is published to [snap](https://snapcraft.io/ipfs)
172
- - [ ] Ensure the release is published to [arch](https://www.archlinux.org/packages/community/x86_64/go-ipfs/) (flag it out of date)
173
- - [ ] Cut the release on [GitHub](https://github.com/ipfs/kubo/releases) ([instructions](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository#creating-a-release), [example](TODO))
169
+ - [ ] Add artifacts to https://dist.ipfs.tech by making a PR against [ipfs/distributions](https://github.com/ipfs/distributions)
170
+ - [ ] Clone the `ipfs/distributions` repo locally.
171
+ - [ ] Create a new branch (`kubo-release-vX.Y.Z`) from `master`.
172
+ - [ ] Run `./dist.sh add-version kubo vX.Y.Z` to add the new version to the `versions` file ([instructions](https://github.com/ipfs/distributions#usage)).
173
+ - [ ] Push the `kubo-release-vX.Y.Z` branch to GitHub and create a PR from that branch ([example](https://github.com/ipfs/distributions/pull/768)).
174
+ - [ ] Ask for a review from the release reviewer.
175
+ - [ ] Enable auto-merge for the PR.
176
+ - PR build will build the artifacts and generate a diff in around 30 minutes
177
+ - PR will be merged automatically once the diff is approved
178
+ - `master` build will publish the artifacts to https://dist.ipfs.io in around 30 minutes
179
+ - [ ] Ensure that the artifacts are available at https://dist.ipfs.io
180
+ - [ ] Publish the release to [the NPM package](https://www.npmjs.com/package/go-ipfs?activeTab=versions) by running https://github.com/ipfs/npm-go-ipfs/actions/workflows/main.yml (it happens automatically but it is safe to speed up the process and kick of a run manually)
181
+ - [ ] Cut the release on [GitHub](https://github.com/ipfs/kubo/releases) ([instructions](https://docs.github.com/en/repositories/releasing-projects-on-github/managing-releases-in-a-repository#creating-a-release), [example](https://github.com/ipfs/kubo/releases/tag/v0.16.0))
182
- Use `vX.Y.Z` as the tag.
183
- Link to the release issue in the description.
176
- - Copy the relevant [changelog](https://github.com/ipfs/kubo/blob/master/docs/changelogs/) into the release description.
184
+ - Copy the relevant [changelog](https://github.com/ipfs/kubo/blob/release/docs/changelogs/) into the release description.
185
- Keep the release notes as trim as possible (e.g. remove top headers where possible, [example](https://github.com/ipfs/kubo/releases/tag/v0.15.0))
186
- [ ] Synchronize release artifacts by running [sync-release-assets](https://github.com/ipfs/kubo/actions/workflows/sync-release-assets.yml) workflow.
179
- - [ ] Announce the RC
180
- - [ ] Create a new post on [IPFS Discourse](https://discuss.ipfs.tech). ([example](TODO))
187
+ - [ ] Announce the release
188
+ - [ ] Create a new post on [IPFS Discourse](https://discuss.ipfs.tech). ([example](https://discuss.ipfs.tech/t/kubo-v0-16-0-release-is-out/15286))
189
- Use `Kubo vX.Y.Z Release is out!` as the title.
190
- Use `kubo` and `go-ipfs` as topics.
191
- Repeat the title as a heading (`##`) in the description.
@@ -191,7 +199,9 @@ Checklist:
199
- [ ] Add a link from release notes to Discuss post (like we did here: https://github.com/ipfs/kubo/releases/tag/v0.15.0)
200
- [ ] Update the draft PR created for [interop](https://github.com/ipfs/interop) to use the new release and mark it as ready for review.
201
- [ ] Update the draft PR created for [IPFS Desktop](https://github.com/ipfs-shipyard/ipfs-desktop) to use the new release and mark it as ready for review.
194
- - [ ] Update docs by merging the auto-created PR in https://github.com/ipfs/ipfs-docs/pulls ([example](https://github.com/ipfs/ipfs-docs/pull/1263)) (they are created automatically every 12 hours)
202
+ - [ ] Update docs
203
+ - [ ] Run https://github.com/ipfs/ipfs-docs/actions/workflows/update-on-new-ipfs-tag.yml to generate a PR to the docs repo
204
+ - [ ] Merge the auto-created PR in https://github.com/ipfs/ipfs-docs/pulls ([example](https://github.com/ipfs/ipfs-docs/pull/1263))
205
- [ ] Get the blog post created and shared
206
- [ ] Submit a request for blog post creation using [the form](https://airtable.com/shrNH8YWole1xc70I).
207
- Notify marketing in #shared-pl-marketing-requests about the blog entry request (since the form tends to go to spam).