Checklist
Pre-Release
...
- RC: “release date” - 2 weeks
- Alpha : “release date” - 6 weeks
- Beta: “release date”- 8 weeks,
- Development freeze : “release date” - 10 weeks
...
Start release planning immediately after each release according to the section Post-Release below - maybe there is actually not pre-release phase - to be verified
Freeze Phase
- Create the release on the QA server
Freeze Phase
- Inform developer of the freeze
- Create the release branches
- Define the version of the modules based on semantic versioning
- Check the Continuous Integration in details
- Publish the release branch on PyPi and NPM (required to check the packaging)
- Inform the integrator about the UAT timeline (Beta version)
- add Add user account on the QA server
...
- Update the PyPi, NPM module when code change was done
- Check that the release instance use the latest modules
- Start collecting the documentation from developers
GA Phase
- All affected repositories (GitHub, Pypi.org, http://npmjs.com , etc.) are tagged and versioned according to Version management
- Update the
openimis.json
to use only official version (not rc) on assembly modules - Merge release branches with main
- make sure the demo server is up to dateUpdate demo server
- Formulate release notes in current release (Releases) and forward it to co-ordination desk for promotion (e.g. newsletter, Twitter)
Post-Release
...
Start preparing the next release immediately after the current release.
- Create the release page (e.g. Release 2022-04) for the following release is set up and make sure it appears correctly on Releases
- Define milestones according to the framework in Releases
- Create the relevant epics for the new release (e.g. Release 2022-10) were created in Jira and added add them to the Release PageA release page
- Create a clean Release Checklist as in https://openimis.atlassian.net/wiki/pages/resumedraft.action?draftId=3312615490 has been created for the next release (e.g. Release 2022-10)
Preparation and Deployment
- All affected repositories (GitHub, Pypi.org, http://npmjs.com , etc.) are tagged and versioned according to Version management
Following need to be integrated
Releases Page Releases
- Analyze linked issues as a normal user (private projects hidden)
- All links are working and are helpful
- Dates and status of all releases are correct
...