This procedure was generated from procedures/katello/branch.md.erb at b15791c561761382c6e5ddedc5ad1aea25eadfa2
Make this post a wiki (help)
Roles
- Release Owner: @zhunting
Four Weeks Prior to Branch Date: 2025-10-14 to 2025-10-18
Release Owner
- Start attending upstream release sync meetings and giving updates
- Announce upcoming branching to Discourse development category a month before
- Update Katello Transifex translations:
- Create a Transifex account and join the Foreman team
- Spin up a Foreman and Katello installation
- Install the Transifex cli client. Only the first
curlcommand is necessary. - Install grunt-cli
-
grunt i18n:extractin the katello/engines/bastion_katello directory -
make -C locale tx-pullin the katello directory -
grunt i18n:compilein the katello/engines/bastion_katello directory -
bundle exec rake plugin:gettext[katello]in the foreman directory -
bundle exec rake plugin:po_to_json[katello]in the foreman directory -
make -C locale mo-filesin the katello directory - Add any uncommitted translation files and open a PR to Katello (no Redmine issue needed)
Three Weeks Prior to Branch Date: 2025-10-21 to 2025-10-25
Release Owner
- Ensure that issues requiring installer changes are merged
Prep week: 2025-10-28 to 2025-11-01
Release Owner
- Commit the settings file to the
theforeman-rel-engrepository. See an example here - Add tool_belt config for new release:
- Create a new yaml file using the nightly Katello config as a template: tool_belt configs
- Manually update the following sections:
- releases: update to current release. Move the previous ‘current’ release to prior_releases below.
- prior_releases: Remove the oldest prior_release (check with that release owner first to see if there’s a reason it should stay)
- repos: Update branch names to current versions, including any new releases that need to happen
- ignores: Delete all items from this list and start fresh (this will be used for cherry-picks later)
- tags: update Katello version number in all values. Check the nightly config to see if any tags/repos need to be updated
- Open a PR to tool_belt with the new config file
- Coordinate with installer maintainers that expected changes are completed.
- Review the Foreman schedule and planning (example) and note the date of the first scheduled release candidate.
Branching: 2025-11-11
Release Owner
- Create the KATELLO-4.19 branch using branch_project
- Push the KATELLO-4.19 branch using branch_push
- Bump versions to 4.20-master using develop_branch_bump
- Push version bumps to 4.20-master using develop_branch_push
- Bump Katello related packages to their next versions
- packaging
- Update the katello-repos
pulpcore_versionto the latest branched version available in pulpcore-packaging: Example from Katello 4.17
- Set GitHub Actions to use the new branch:
sed -i '/foreman_version/ s/develop/-stable/' .github/workflows/*.yml - Set Packit to use the new branch:
sed -i 's/develop//; /theforeman.org.katello/ s/nightly/4.19/; /theforeman.org/ s/nightly//' .packit.yaml - Generate and post the release procedure, if not already posted:
- Use procedure_release:
PROJECT=katello VERSION=4.19 ./procedure_release "2025-11-11" "@zhunting" "@zhunting" - Post the output in Development/Releases using
Katello 4.19.0.rc1 release process - Clone GitHub - theforeman/apidocs: API documentation for Foreman and its plugins and follow the Katello README section to update the API documentation.
- Use procedure_release:
- Prepare “Katello Next” and future redmine versions
- Rename the “Katello Next” release to Katello 4.20.0
- Recreate the “Katello Next” release and indicate that it is a placeholder for issues belonging to the next version of Katello
- Create the “Katello 4.19.1 TODO” custom query using the last one as a template