When converting to an RHEL EUS minor version, we need to enable EUS-specific RHEL repositories, not the default ones.
The default RHSM repoids convert2rhel currently enables (https://github.com/oamg/convert2rhel/blob/v0.25/convert2rhel/data/8/x86_64/configs/centos-8-x86_64.cfg#L31) are:
- rhel-8-for-x86_64-baseos-rpms
- rhel-8-for-x86_64-appstream-rpms
The EUS ones we need to enable:
- rhel-8-for-x86_64-baseos-eus-rpms
- rhel-8-for-x86_64-appstream-eus-rpms
Example of an advisory pushing kernel fix only to RHEL 8.4 EUS repos: https://errata.devel.redhat.com/errata/content/93551. That's just to illustrate that the non-EUS repositories for RHEL 8.4 don't receive security updates (e.g. http://rhsm-pulp.corp.redhat.com/content/dist/rhel8/8.4/x86_64/baseos/os/). The EUS ones do (e.g. http://rhsm-pulp.corp.redhat.com/content/eus/rhel8/8.4/x86_64/baseos/os/).
However, besides EUS, there's also E4S (like EUS but with support for 4 years instead of 2), TUS (for Telco), and AUS (Advanced). We are yet to figure out how to approach these alternatives.
Acceptance criteria:
- EUS minor versions are hardcoded ([8.2, 8.4, 8.6, 8.8, 8.10])
- for example next to RELEASE_VER_MAPPING at https://github.com/oamg/convert2rhel/blob/v0.25/convert2rhel/systeminfo.py#L40
- New key for RHEL EUS repoids is added to configs
- for example eus_rhsm_repoids, next to default_rhsm_repoids at https://github.com/oamg/convert2rhel/blob/v0.25/convert2rhel/data/8/x86_64/configs/centos-8-x86_64.cfg#L31
- When on EUS minor version, convert2rhel tries to enable EUS repoids first and if subscription-manager returns non-0 (unable to enable them), it falls back to enabling the default non-EUS repoids