Create CMB 6.1.0-rc2
Preparatory steps
- Update CMB guides
- Assemble release notes into
doc/release/cmb-6.1
.-
Get positive review and merge.
-
- Assemble release notes into
Update CMB
If making a release from the release
branch, e.g., v6.1.0-rc2 or above
:
-
Update release
branch for cmb
git fetch origin
git checkout release
git merge --ff-only origin/release
-
Update version.txt
and tag the commit
git checkout -b update-to-v6.1.0-rc2
echo 6.1.0-rc2 > version.txt
git commit -m 'Update version number to 6.1.0-rc2' version.txt
git tag -a -m 'CMB 6.1.0-rc2' v6.1.0-rc2 HEAD
- Integrate changes to
master
branch-
Create a merge request targeting master
(do not addBackport: release
) -
Get positive review -
Do: merge
-
- Integrate changes to
release
branch-
git push origin update-to-v6.1.0-rc2:release v6.1.0-rc2
-
Update CMB-Superbuild
Keep the relevant items for the kind of release this is.
If making a first release candidate from master, i.e., v6.1.0-rc2
:
-
Update master
branch for cmb/cmb-superbuild
git fetch origin
git checkout master
git merge --ff-only origin/master
- Update
CMakeLists.txt
-
git checkout -b update-to-v6.1.0-rc2
-
Set CMB source selections in CMakeLists.txt
and force explicit version inCMakeLists.txt
:
-
# Force source selection setting here.
set(cmb_SOURCE_SELECTION "6.1.0-rc2" CACHE STRING "Force version to 6.1.0-rc2" FORCE)
set(cmb_FROM_SOURCE_DIR OFF CACHE BOOL "Force source dir off" FORCE)
set(smtk_SOURCE_SELECTION "3.1.0-rc2" CACHE STRING "Force version to 3.1.0-rc2" FORCE)
set(smtk_FROM_SOURCE_DIR OFF CACHE BOOL "Force source dir off" FORCE)
- Update
versions.cmake
-
Guide selections in versions.cmake
-
git add versions.cmake CMakeLists.txt
-
git commit -m "Update the default version to 6.1.0-rc2"
-
- Integrate changes to
master
branch-
Create a merge request targeting master
, title beginning with WIP (do not addBackport: release
to description) -
Build binaries ( Do: test
) -
Download the binaries that have been generated in the dashboard results. They will be deleted within 24 hours. -
Remove explicit version forcing added in CMakeLists.txt and force push
-
git add CMakeLists.txt
git commit --amend
git gitlab-push -f
- Finalize merge request
-
Remove WIP from merge request title -
Get positive review -
Do: merge
-
git tag -a -m 'cmb superbuild 6.1.0-rc2' v6.1.0-rc2 HEAD
-
- Integrate changes to
release
branch-
git push origin update-to-v6.1.0-rc2:release v6.1.0-rc2
-
Update kwrobot with the new release
branch rules
-
Validating binaries
- Binary checklist
-
macOS -
Linux -
Windows
-
Upload binaries
- Upload binaries
-
Ask @chuck.atkins to sign macOS binary -
Verify the binaries are uploaded
buildListing.sh
updateMD5sum.sh vMAJOR.MINOR
-
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.
/cc @ben.boeckel /cc @bob.obara /cc @tjcorona /cc @dcthomp