Release SMTK 21.09
Preparatory steps
- Update smtk guides
Update smtk
-
Update the local copy of the base branch.
- If
PATCH
is 0, updatemaster
- Otherwise, update
release
-
git fetch origin
-
git checkout $branch
-
git merge --ff-only origin/$branch
- If this fails, there are local commits that need to be removed
- If
-
Ensure that changes intended for the release are in it.
- The
backport-mrs.py
script can be used to find and ensure that merge requests assigned to the associated milestone are available on therelease
branch. See its documentation for usage.
- The
-
Integrate changes.
-
Make a commit for each of these
release
-only changes on a single topic (suggested branch name:update-to-vVERSION
):-
Assemble release notes into doc/release/notes/smtk-MAJOR.MINOR.rst
.-
Update the ReadMe file to refer to the new release notes -
If PATCH
is greater than 0, add items to the end of this file.
-
-
Update version.txt
and tag the commit (tag this commit below)-
git checkout -b update-to-vVERSION BRANCHPOINT
-
echo VERSION > version.txt
-
git commit -m 'Update version number to VERSION' version.txt
-
-
Update .gitlab/ci/cdash-groups.json
to track therelease
CDash groups
-
-
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
- The script outputs the information it will be using to create the merge request. Please verify that it is all correct before creating the merge request. See usage at the top of the script to provide information that is either missing or incorrect (e.g., if its data extraction heuristics fail).
-
-
Get positive review -
Do: merge
-
Push the tag to the main repository -
git tag -a -m 'SMTK VERSION' vVERSION commit-that-updated-version.txt
-
git push origin vVERSION
-
-
-
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
-
Post-release
-
Write and publish blog post with release notes. -
Post an announcement in the Announcements category on discourse.smtk.org. -
Remove deprecated methods on master
/cc @ben.boeckel /cc @bob.obara /cc @dcthomp
Edited by John Tourtellott