ci-tools icon indicating copy to clipboard operation
ci-tools copied to clipboard

OCP5 enablement in ci-tools

Open jmguzik opened this issue 2 weeks ago • 4 comments

This change prepares ci-tools for OpenShift 5.x support while maintaining backward compatibility with 4.x. It also generalizes version handling to support future major versions (6.x through 9.x).

Key changes:

Version Transition Logic (pkg/api/version.go):

  • Added VersionTransitionOverrides map as single source of truth for cross-major version transitions (e.g., 5.0 -> 4.22)
  • Added GetPreviousVersion and GetPreviousVersionSimple functions
  • Handles the fact that 4.0 never existed (4.1 was the first 4.x release)

Updated Components:

  • pkg/api/ocplifecycle: GetPastVersion/GetPastPastVersion now use centralized version logic
  • pkg/jobrunaggregator: pass_fail.go and util.go use new version functions
  • pkg/rehearse/jobs.go: Generalized relevancy for major versions 4-9
  • pkg/release/prerelease: Dynamic stream derivation from version bounds, added StableLatestMajorMinor for any stream
  • pkg/steps/release/promote.go: Tries stable streams 9 down to 4

CLI Tools Updated:

  • cmd/cvp-trigger: Validates versions >= 4.x (not just 4.x)
  • cmd/registry-replacer: Added --current-release-major flag
  • cmd/ocp-build-data-enforcer: Added --major flag

The repository is now ready for OpenShift versions 4.x through 9.x.

jmguzik avatar Jan 14 '26 13:01 jmguzik