Foreman 1.22 branching process

Near-end of development phase

Package build systems

  • Clone tags and create build targets in Koji
  • Create mash scripts and configuration on Koji
  • Add new plugin tags to Koji plugins mash script (, remove old ones (keep three)
  • Add version 1.22 to jobs in axes and/or combination filters, remove old ones (keep three)
  • Clone Debian nightly repos to 1.22 using copy/freight instructions
  • Edit foreman-packaging’s PR template to add 1.22 and remove the old release
  • Include Rails repository
    • Add foreman-rails-1.22-rhel7 tag entries to Foreman tool_belt config
    • Add mash script config entry to tool_belt config: foreman-rails-1.22-rhel7
    • Copy mash script config to Koji
    • Add to Koji /usr/local/bin
  • Add foreman-client
    • Add client tag configuration to tool_belt config
    • Clone tags and create build targets
    • Create mash scripts and transfer to Koji
    • Create release job in foreman-infra, example

Main code repos

  • Make releases of installer modules
  • Update locales in foreman develop: make -C locale tx-update
  • Create 1.22-stable branches
  • Branch foreman-packaging
    • Create rpm/1.22 and update packages/foreman/foreman-release/foreman.gpg, mock/*.cfg, package_manifest.yaml, rel-eng/{releasers.conf,tito.props}, repoclosure/*.conf
    • Create deb/1.22
    • update .github/
  • Bump versions to 1.23-develop
    echo 1.23.0-develop > VERSION
  • Update foreman-packaging:
    • rpm/develop: Update rel-eng/{releasers.conf,tito.props}, packages/foreman/foreman{,-{installer,proxy,release,selinux}}/*.spec and .github/
    • deb/develop: scripts/changelog.rb -v 1.23.0-1 -m "Bump changelog to 1.23.0 to match VERSION" debian/*/*/changelog and update .github/


Other systems

This was based on the wiki procedure and sometimes has a bit more info.

Branching will be delayed by a day or two until all needed installer changes are done and template sync is verified and merged: