rocky-release/README.md
2022-02-08 17:35:47 -07:00

1.9 KiB

Release package - All PR's should be against original/rpms/rocky-release

Notes for Packagers/Builders

This package produces multiple variants of rocky-release:

  • Stable: rocky-release, rocky-repos, rocky-gpg-keys, etc

  • LookAhead: All packages appended with -lookahead

  • Beta: All packages appended with -Beta

  • If rllh or rlbeta are set to a number higher than 0, those variants are built

  • If rllh and rlbeta are set at the same time higher than 0, build will fail.

When rllh is set the minor version will typically be y+1. So if the current stable is X.0, the next would be X.1.

For pre-releases/beta, both packages should produce X.0 until changed in the spec.

The rllh macro may be versioned out for future use.

A rllh_minor macro may be introduced in the future.

How does this benefit us?

It allows us to track future minor releases from Stream and see how it will affect us going forward. When a minor release is being branched, the "lookahead" files can just be copied and a new "stable" release is made in preparation. The beta of each RHEL tends to stick around for a month before a release is done, which makes it easier to make sure everything "stays in line" for the most part.

What about after the five year mark?

LookAhead will no longer be produced as the major version will then be in maintenance only mode.

What is the rloverride macro?

This simply sets the dist tag to .el%{major}.override and changes the ID="..." tag in /etc/os-release to read as rhel rather than rocky. This helps us perform very specific builds that cannot otherwise be debranded properly, eg dotnet. This should also change the initial macros to only provide %rhel and not CentOS or any other derivative macro name, as some packages specifically look for these macros being set as well and also applies to those packages that cannot be properly debranded or when debranding has not visual or functional benefit.