How to do an OpenHIM-core release¶
This page describes the steps to follow to do an OpenHIM release. Make sure you are on the
master branch and it is fully up-to-date before beginning this process.
git add npm-shrinkwrap.json
git commit -m"Added shrinkwrap for x.x.x release"- replace x.x.x with the actual release version.
npm version (major|minor|patch)- choose one according to semver.
git rm npm-shrinkwrap.json
git commit -m"Removed shrinkwrap for continued development"
git push origin master
git push origin vx.x.x- push the tag that 4 created.
- Create a new github release using the tag created in 4 above, that includes the release notes.
- Build a debian package and upload it to launchpad. Follow the instructions here.
From time to time a support release may be required for critical security issues or bugs. When this happens, a support branch should be created in order to support that particular version.
If the branch doesn’t exist, create it from the latest tag for a particular release:
git checkout -b support-vx.y vx.y.zelse if the branch exists, simply check it out and continue from there
git checkout support-vx.y
Ideally fixes should first be developed separately and merged into master. They can then be cherrypicked for the support release:
git cherry-pick bd68fe1c8cf81cbef2169414ce8440a7a2c69717
Although this may not always be possible, in which case the fixes can be added manually.
The shrinkwrap can be left in place on a support branch. If however the support fixes include package updates, rerun the
npm shrinkwrap command in order to update.
When all fixes have been applied, test thoroughly and create a new release as per normal:
npm version (major|minor|patch)- increment the patch version.
git push origin support-vx.y
git push origin vx.y.z- push the new tag
- Create a new github release
When a particular version is no longer supported, its support branch should be deleted.