Foreman 3.19.0-rc2 Release Process

This procedure was generated from procedures/foreman/release.md.erb at 892ddbdf07094a72eb62797b7aa9c43f3016a1f1

Make this post a wiki (help)

Roles

Preparing code: 2026-05-26

Installer Maintainer

  • Make patch releases of installer modules that have important changes
    • Branch to MAJ.MIN-stable if recent changes to the module aren’t suitable for patch (x.y.z) release

Release Owner

  • Make sure any release blocking issues are resolved and remove/change target version field for any open Redmine tickets assigned to the release still (next minor, unset it or reject). Look for the 3.19.0 release TODO saved query on Foreman’s issues.
  • Ensure that code in git matches issues fixed in 3.19.0-rc2 in Redmine. Use the 3.19.0 release DONE saved query on Foreman’s issues. issues can be used to generate a comparison between the two.
  • Check for open pull requests in Foreman, smart-proxy, foreman-installer and foreman-selinux gh search prs --state=open --base=3.19-stable --repo=theforeman/foreman --repo=theforeman/smart-proxy --repo=theforeman/foreman-installer --repo=theforeman/foreman-selinux

Tagging a release: 2026-05-26

Release Owner

Release Engineer

Note: If for some reason there was an issue with the tarballs that required uploading new tarballs, CDN cache should be invalidated so that the builders use the updated tarballs.

Packaging a release: 2026-05-26

Release Engineer

Background documentation

Konflux OCI Image Branching

Run after RPM branching is complete and packages appear in the versioned repo.
Use either the orchestrator script or follow the manual runbook linked below.

Documentation:

Prerequisites:

Steps:

  • Dry-run first: uv run hack/branch-release/branch_konflux --version=3.19 --dry-run
  • Execute: uv run hack/branch-release/branch_konflux --version=3.19
    Creates branch foreman-3.19 and opens draft PRs/MR in:
  • Review and merge the 3 OCI repo PRs
  • Wait for RPMs: https://yum.theforeman.org/releases/3.19/el9/x86_64/repodata/repomd.xml
  • Merge tenants-config MR (registers foreman-3.19 components in Konflux)
  • Verify first 3.19 build succeeds in Konflux UI

Published images (after all steps complete):

  • quay.io/theforeman/foreman:3.19, quay.io/theforeman/foreman-proxy:3.19
  • quay.io/theforeman/foreman:3.19.0-rc2, quay.io/theforeman/foreman-proxy:3.19.0-rc2
  • quay.io/theforeman/pulp:3.105, quay.io/theforeman/pulp:foreman-3.19
  • quay.io/theforeman/candlepin:4.7, quay.io/theforeman/candlepin:4.7.5, quay.io/theforeman/candlepin:foreman-3.19

Manual updates: 2026-05-26

Release Owner

After the packages have been released

Release Owner

Note to myself (and Ondrej): I’d love to have a foremanctl build with Use 3.19 containers by evgeni · Pull Request #516 · theforeman/foremanctl · GitHub in it in RC2.

Packaging in Release foremanctl 2.2.0 by evgeni · Pull Request #13507 · theforeman/foreman-packaging · GitHub