Foreman-release repos against katello-repos-latest repos

At the moment the foreman repos and katello repos are distributed in separate rpms.

However, if you install or upgrade katello you must always make sure that you use the correct foreman repo version which goes with the katello version, e.g. 4.2 only goes with 3.0.

I don’t really see the point in that but only a source of potential problems if a user doesn’t use the matching repo rpms at one point

I think it would make things easier and less errorprone, if the katello repo rpm includes the foreman repos files. That way you only have to worry about a single repo rpm, i.e. katello-repos-latest which comes with the matching foreman repo configuration.

Thus, if you wanted to install a simple foreman server without katello you would use foreman-release and if you wanted katello you would install katello-repos-latest.

Just a thought…

3 Likes

Always seemed like it would make sense to combine the projects into one versioned “thing” to me, or at least one installation repo as you mentioned.

I think this has been an ongoing debate.

I had hoped @packaging would weigh in here. To me it sounds like a good idea.

Previously I’d thought about an explicit dependency. That would make it harder to misuse, but not directly easier. I think your solution would be easier.

Thinking out loud about what needs to be done.

  • It’d need a Conflicts: foreman-release.
  • It probably means katello-repos should live in the Foreman repo rather than Katello due to koji tagging. Perhaps that’s a good excuse to rename it to katello-release, following the convention to have -release RPMs contain repositories.
  • There’s probably also some infra work to be done (there’s special handling for foreman-release and katello-repos to provide unversioned symlinks).