medic / cht-core

The CHT Core Framework makes it faster to build responsive, offline-first digital health apps that equip health workers to provide better care in their communities. It is a central resource of the Community Health Toolkit.
https://communityhealthtoolkit.org
GNU Affero General Public License v3.0
468 stars 218 forks source link

Release 3.16.0 #7660

Closed mrjones-plip closed 2 years ago

mrjones-plip commented 2 years ago

Planning - Product Manager

Development - Release Engineer

When development is ready to begin one of the engineers should be nominated as a Release Engineer. They will be responsible for making sure the following tasks are completed though not necessarily completing them.

Releasing - Release Engineer

Once all issues have passed acceptance testing and have been merged into master release testing can begin.

To get a sneak peak at this upcoming release, you can install <major>.<minor>.<patch>-beta.1 on your testing environment. We suggest you test your forms and workflows with this release candidate version and raise any issues that you experience. This helps to to discover any potential regressions that wouldn't otherwise be caught during release testing.

Keep an eye on the forum for the release announcement in the next couple of weeks!

- [x] Add release notes to the [Core Framework Releases](https://docs.communityhealthtoolkit.org/core/releases/) page:
  - [x] Create a new document for the release in the [releases folder](https://github.com/medic/cht-docs/tree/main/content/en/core/releases).
  - [x] Ensure all issues are in the GH Milestone, that they're correctly labelled (in particular: they have the right Type, "UI/UX" if they change the UI, and "Breaking change" if appropriate), and have human readable descriptions.
  - [x] Use [this script](https://github.com/medic/cht-core/blob/master/scripts/release-notes) to export the issues into our release note format.
  - [x] Manually document any known migration steps and known issues.
  - [x] Provide description, screenshots, videos, and anything else to help communicate particularly important changes.
  - [x] Document any required or recommended upgrades to our other products (eg: cht-conf, cht-gateway, cht-android).
  - [x] Add the release to the [Supported versions](https://docs.communityhealthtoolkit.org/core/releases/#supported-versions) and update the EOL date and status of previous releases. Also add a link in the `Release Notes` section to the new release page.
  - [x] Assign the PR to:
    - The Director of Technology
    - An SRE to review and confirm the documentation on upgrade instructions and breaking changes is sufficient
- [x] Until release testing passes, make sure regressions are fixed in `master`, cherry-pick them into the release branch, and release another beta.
- [x] Create a release in GitHub from the release branch so it shows up under the [Releases tab](https://github.com/medic/cht-core/releases) with the naming convention `<major>.<minor>.<patch>`. This will create the git tag automatically. Link to the release notes in the description of the release.
- [x] Confirm the release build completes successfully and the new release is available on the [market](https://staging.dev.medicmobile.org/builds/releases). Make sure that the document has new entry with `id: medic:medic:<major>.<minor>.<patch>`
- [ ] Execute the scalability testing suite on the final build and download the scalability results on S3 at medic-e2e/scalability/$TAG_NAME. Add the release `.jtl` file to `cht-core/tests/scalability/previous_results`. More info in the  [scalability documentation](https://github.com/medic/cht-core/blob/master/tests/scalability/README.md).
- [x] Upgrade the `demo-cht.dev` instance to this version.
- [x] Announce the release on the [CHT forum](https://forum.communityhealthtoolkit.org/c/product/releases/26), under the "Product - Releases" category using this template:

We're excited to announce the release of {{version}} of {{product}}

New features include {{key_features}}. We've also implemented loads of other improvements and fixed a heap of bugs.

Read the release notes for full details.

Following our support policy, versions {{versions}} are no longer supported. Projects running these versions should start planning to upgrade in the near future. For more details read our software support documentation.

Check out our roadmap to see what we're working on next.


- [x] Add one last update to the [Medic Product Team call agenda](https://docs.google.com/document/d/14AuJ7SerLuOPESBjQlJqpBtzwSAoVf5ykTT7fjyJBT0/edit) and use this meeting to lead an internal release retrospective covering what went well and areas to improve for next time.
- [ ] Mark this issue "done" and close the Milestone.
mrjones-plip commented 2 years ago

jkuester removed this from the 3.16.0 milestone 5 days ago

@jkuester - was this intentional? I was looking for the last open ticket (this one) on 3.16 and was confused it was gone. No biggie, but wanted to not add the release ticket to the milestone in the future if we're not keeping 'em there

jkuester commented 2 years ago

@mrjones-plip sorry! I was getting an error when trying to generate the release notes since the script did not like the Internal process type (same thing has happened for previous releases I have done). Looking at this again I see that it is because I was running an older version of the script that had not be updated to include the Internal process type.

mrjones-plip commented 2 years ago

all good - thanks!

latin-panda commented 2 years ago

@njogz @jkuester @mrjones-plip can we close this ticket?