RFC: Bumping the Foreman and Katello to common version

Hello Everyone,

We had few discussions since last couple of years to have aligned Foreman and Katello versions [1] and it has been discussed in release team meetings as well [2].

Considering this in today’s release team meeting we have agreed to go for Foreman 5.0 and Katello 5.0 instead of 3.5 and 4.7 for next releases. With this we also think its good to do,

  • Get the Katello repositories under theforeman organization on GitHub.
  • Align the Katello repository structure on https://yum.theforeman.org/ and maybe move Katello repository to plugins/<version> or under releases/<version>.

There will be follow up discussions on this and I hope this change will make stuff simpler for releases and users as well. If you have any comments or suggestions then feel free to reply on this post.

[1]
Suggestion: Syncronize Foreman and Katello versions
Wish: Foreman/Katello versioning

[2] “Release team meeting agenda 2022-03-16

7 Likes

What will be the versioning “rules” moving forward with this change? For example, how will a situation be handled where Katello drops a major piece of functionality (something that typically warrants a major version bump) that does not affect Foreman? (And vice versa).

That’s a good point. Perhaps we don’t need to do major version bumps and it’s sufficient to restructure the repositories to follow the Foreman version numbering. Just like we have a plugins repositories which has the Foreman version number. There plugins can have any version, it’s just the one that matches for a Foreman release.

I think that this is a nice idea, but I also feel that the version sync would eventually break due to reasons that Eric mentioned.
Also what about other plugins that already have v22.0?

What we need is a good source of truth for the plugins versions,
I know that @upadhyeammit has created a section for each release. e.g: Foreman 3.3 Schedule and Planning
which is a bit hard to find…

Hammer 3.3
Katello 4.4
Discovery 21.0.1
Bootdisk 19.0.5
Puppet 4.0.0
Remote Execution
Statistics 2.1? (or current 2.0)
Tasks 
OpenSCAP 5.2.2
Ansible 7.2
Templates 
Leapp 0.1.10

Can we pin it in one of the categories in the community?
Another option could be to update theforeman.org or the foreman Github repo’s README file with a supported plugins table with versions.

To what degree can versions of Foreman and Katello be mixed and matched? I usually just go to https://docs.theforeman.org/ and use the repositories it tells me.

The short answer is: they cannot.

Katello targets a specific version of Foreman to be based upon for every release, and effectively tries to release in lockstep with Foreman releases.

1 Like

Today we had a discussion with a few people and I wrote up the summary in a formal RFC, including a lot of implementation details: