If any minor versions of Katello have been added to Redmine since the last cherry-pick, make sure to include them in prior_releases in configs/katello/4.0.yaml
Run ./tools.rb setup-environment configs/katello/4.0.yaml
Run ./tools.rb cherry-picks --version 4.0.2 configs/katello/4.0.yaml
Open a PR in Katello release branch. Make sure the PR name starts with [CP] to prevent our automations from adding it to Redmine issues.
Using git cherry-pick -x as needed, verify tickets in the cherry_picks_4.0.2 file are accounted for, or additionally cherry-pick them. Recommended: Do this in tool_belt’s checkout of Katello, in repos/katello/4.0.2/katello. This way when you run cherry-picks again, tool_belt will be aware of any picks already completed.
For any cherry-picks that are not needed (including Redmine trackers) you can add them to the :ignores: section of tool_belt in configs/katello/4.0.yaml
Check for outdated deprecation warnings in the current and next release with ./tools check-deprecation-warnings configs/katello/4.0.yaml. Follow the instructions in the output of the command. Don’t forget to create any Redmine issues needed!
Bump version:
Open a PR (or use cherry-pick PR) against the release branch which updates lib/katello/version.rb to 4.0.2
git pull to make sure you have the latest changes
Commit: git commit -m "Release 4.0.2"
Ensure that the commit above is the last commit and there are no commits after it. This is the commit that will get tagged. (Rearrange commits with git rebase -i if needed.)
Once the PR is merged, perform the following in the Katello release branch (the real one, not your fork):
Tag: git tag -s -m "Release 4.0.2" 4.0.2
Push: git push --follow-tags (Must be pushed directly to the release branch, as pull request merges will not preserve tags.)
Generate source gem: gem build katello.gemspec
Ensure you have a working login and password at rubygems.org
Push gem: gem push katello-4.0.2.gem
Inform the delivery team that the gem is published
Once Source is Available
Release Packager
Update katello, katello-repos and rubygem-katello in foreman-packagingrpm/4.0 branch (replace 4.1 with the matching Foreman version):