CANU Release Process
- Once the PR is merged, checkout and update main locally and take a new git-tag (
x.y.z
, no leadingv
) - Prepare your local environment
> If your working directory is not clean, please commit or stash your changes in order to checkout the
main
branch.bash git checkout main git pull git fetch origin --tags git log --no-walk --tags --pretty="%h %d %s" --decorate=full
- Take a final release tag or a pre-release tag, release tags are considered stable and pre-release tags are previews that are considered unstable.
Pre-release tags are entirely optional.
- Final release tags follow the PEP0400 Finale release format of
X.Y.Z
:NOTE Historically this repository does NOT prepend
v
to the git-tag.bash git tag X.Y.Z git push orgin --tags
- Pre-release tags follow PEP0440 pre-release format format of
X.Y.Z{[a|b|rc]N}
(e.g. 1.8.0a1, 1.8.0b3, 1.8.0rc1).NOTE These are entirely OPTIONAL. Examples:
bash git tag 1.8.0a - alpha 0 of 1.8.0 git tag 1.8.0b - beta 0 of 1.8.0 git tag 1.8.0rc - preview/release-candidate 0 of 1.8.0 git tag 1.8.0a1 - alpha 1 of 1.8.0
bash git tag X.Y.Z{[a|b|rc]N} git push orgin --tags
- Final release tags follow the PEP0400 Finale release format of
- Navigate to GitHub releases:
https://github.com/Cray-HPE/canu/releases
- Select “Draft a new release”
- “Choose a tag” and choose the tag you pushed.
- Select “autogenerate release notes” to pre-populate the fields.
- Write a short, quippy title for the release (replacing the autogenerated one, maybe).
- In the main text write “Overview”, a few short bullet points pulled from the changelog outlining major changes.
- In the main text write “Detailed Changelog” and paste in the changelog from readme.md.
- IMPORTANT If this is a pre-release, then check the “Set as a pre-release” box!
- Optionally uncheck the “Set as the latest release” if this release isn’t to be advertised.
- Click “Publish release”
- Make sure the
canu
binary RPM exists in artifactory. - Once new
canu
RPM is created. Navigate to:https://github.com/Cray-HPE/canu/releases
edit release and upload the new RPM can also be downloaded from GitHub.
canu
exists in the pre-install-toolkit, and needs a manifest updated here:
canu
also exists in the CSM tarball, and needs a manfiest update for both its RPM and Docker images here: