Checklist
Pre-Release
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
Content
Table of Contents | ||||||
---|---|---|---|---|---|---|
|
Checklist
Freeze Phase
- Create the release on the QA server Inform developer of the freeze
- All relevant tickets are assigned to epics
- Create the release branchesrelease instance using the released components
- Define the version number of the modules based on semantic versioning
- All relevant tickets are assigned to epicsCreate the release branches
- Check the Continuous Integration in details
- Inform the implementers about the User Acceptance Test (UAT) timeline (Beta version)
- Add user account on the
- Create the release on TestLink (QA server)
Alpha Phase
- Create release instance using the released modulesPerform some basic testing / Developer tests
- Claim: create/review/process
- Registration: create/update familly/insuree
- Enrollment: create policy and contribution
- Meta data: create/update location/product/user/role/pricelist/itemslist/servicelist
- Make sure defects are assigned to developerswere fixed by developers
- Release: openIMIS Instance and Wiki page are up to date
Beta Phase
- Update the PyPi, NPM module when code change was doneOfficially announce the start of User Acceptance Tests (UAT)
- Check that the release instance use the latest modules
- Do User-Acceptance-Testing (UAT)
- Add user account on the QA server
RC Phase
- Ensure deployability with Docker (Quickstart installation guide / Docker compose)
- 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
- Merge release branches with main
- All affected repositories (GitHub, Pypi.org, http://npmjs.com , etc.) are tagged and Create release in GitHub, versioned according to Version management and contain containing complete release notes on GitHubPublish (should publish automatically the release branch on PyPi and NPM (required to check the packaging)
- Analyze linked issues as an anonymous user
- )
- Update the
openimis.json
in assemblies main branch to use only official version (not RC) - Update demo server (mark maintenance window on Demo: openIMIS)
- Demo: openIMIS Instance and Wiki page are up to date
- Mark all tickets in release as “Done” or push to the next release
- Check that Installation Guide supports installation of the latest release
- Check and update Release 2022-10
- All links on the release page and release sources page are working and are helpful; Dates are correct and the status is “GA”
- Analyze linked issues as an anonymous user
- “Highlights” of the release are written and coherent
- Ensure that the Release page points to the correct “Release Sources Page” e.g. Sources Release 2022-04 for Check and update Sources Release 2022-04
- Update demo server
- All source components link to the correct repository on GitHub, have the correct version, valid release notes and are reasonably named to similar repositories / package manager
- Formulate release notes in current release (Releases) and forward it to co-ordination desk for promotion (e.g. newsletter, Twitter)
- Check and update the Wikipedia page, that it refers to the latest release (number) and reflects the technical facts of openIMIS correctly
openimis.json
to use only official version (not rc) on assembly modulesPost-Release
Start preparing the next release immediately after the current release.
- Create the release page (e.g. Release 2022-04) for the following release 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) in Jira and add them to the release page
- Create a clean Release Checklist for the next release (e.g. Release 2022-10)
Following need to be integrated
Release Sources Page
- All components are consistently versioned according to Version management
- All links are working and helpful
- All components link to the correct repository and version
- All components have correct “Release Notes”
- All components link to reasonably similiar named repositories / package manager
User Documentation
- User Documentation is up-to-date Sandbox Landscape Other instances are up to date / compatible with Demo: openIMIS / Release: openIMIS
- Ensure the documentation is up2date
- User Documentation http://docs.openimis.org/en/latest/ / http://docs.openimis.org/fr/latest
...
- Installation guide / Installation and Country Localisation supports installation of the latest release
...
- Tutorials on YouTube are up-to-date / not misleading
- Developer Starter Kit reflects latest release
- Installation Guide reflects latest release
- “Technical Requirements” / Connectivity & theoretical infrastructure required reflects
- Tutorials on YouTube are up-to-date / not misleading
Sandbox Landscape Sandbox Landscape
- Demo: openIMIS Instance and Wiki page are up to date
- Release: openIMIS Instance and Wiki page are up to date
- Sandbox Landscape Other instances are up to date / compatible with Demo: openIMIS / Release: openIMIS
- latest release
- Prepare the next release
- Create the relevant epics for the new release (e.g. Release 2022-10 ) in Jira and add them to the release page
- Create the release page (e.g. Release 2022-10 ) for the following release and make sure it appears correctly on Releases
- Define milestones according to the framework in Releases
- Create a clean Release Checklist for the next release (e.g. Release 2022-10)