Checklist
Release planning
- Define the name of the release
- Define the release date
- Do retro-planning
- RC: “release date” - 2 weeks
- Alpha : “release date” - 6 weeks
- Beta: “release date”- 8 weeks,
- Development freeze : “release date” - 10 weeks
- 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 user account on the QA server
Alpha Phase
- create release instance using the released modules
- perform some basic testing
- 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 developpers
Beta Phase
- Update the PyPi, NPM module when code change was done
- Check that the release instance use the latest modules
RC Phase
- 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
- 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 date
Post-Release (prepare next release)
...