Create CMB 21.05
Preparatory steps
- Update CMB guides
- Assemble release notes into
doc/release/notes/CMB-21.05.md
.-
If PATCH
is greater than 0, add items to the end of this file. -
Get positive review and merge.
-
- Assemble release notes into
Update CMB
Keep the relevant items for the kind of release this is.
If making a first release candidate from master, i.e., PATCH
is 0.
-
Update master
branch for cmb
git fetch origin
git checkout master
git merge --ff-only origin/master
-
Update version.txt
and tag the commit
git checkout -b update-to-v21.05.0 3ffe78e60e03bb69dfe0bcc86ddeb009311c7be7
echo 21.05.0 > version.txt
git commit -m 'Update version number to 21.05.0' version.txt
git tag -a -m 'CMB 21.05.0' v21.05.0 HEAD
- Integrate changes.
- Make a commit for each of these
release
-only changes-
Update .gitlab/ci/cdash-groups.json
to track therelease
CDash groups (ifPATCH
is 0)
-
- Create a merge request targeting
release
-
Obtain a GitLab API token for the kwrobot.release.cmb
user (ask @ben.boeckel if you do not have one) -
Add the kwrobot.release.cmb
user to your fork with at leastDeveloper
privileges (so it can open MRs) -
Use the release-mr
script to open the create the Merge Request (see script for usage)- Pull the script for each release; it may have been updated since it was last used
-
-
Get positive review -
Do: merge
-
Push the tag to the main repository -
git push origin v21.05.0
-
- Make a commit for each of these
- Software process updates (these can all be done independently)
-
Update kwrobot with the new release
branch rules (@ben.boeckel) -
Run this script to update the CDash groups - This must be done after a nightly run to ensure all builds are in the
release
group - See the script itself for usage documentation
- This must be done after a nightly run to ensure all builds are in the
-
Add (or update if PATCH
is greater than 0) version selection entry in cmb-superbuild
-
Update CMB-Superbuild
-
Create a merge request with the following updates (one commit per item, in order) -
Create a new for-v21.05
source selection for ParaView using the currently pinned commit hash -
Create a new version selection in packages/modelbuilder/modelbuilder.configure.cmake
. -
Create a commit to eventually tag. The superbuild will notice this commit message and build the newly selected version instead of master
commits.
-
git commit --allow-empty -m "modelbuilder: add release 21.05.0"
- Build packages
-
Run modelbuilder jobs ( Do: test -n modelbuilder
) -
Validate the binaries
-
- Finalize merge request
-
Get positive review -
Do: merge
-
git tag -a -m 'cmb superbuild 21.05.0' v21.05.0 HEAD
-
Validating binaries
- Binary checklist
-
macOS -
Linux -
Windows
-
Upload binaries
- Upload binaries
-
Ask @ben.boeckel to sign macOS binary -
Ask @ben.boeckel to sign Windows binary -
Verify the binaries are uploaded
-
buildListing.sh
updateMD5sum.sh v21.05
-
Test download links on https://www.computationalmodelbuilding.org/download
Post-release
-
Write and publish blog post with release notes. -
Post an announcement in the Announcements category on discourse.cmb.org. -
Remove deprecated methods on master
/cc @ben.boeckel /cc @bob.obara /cc @dcthomp
Edited by Robert M. O'Bara