CentOS 8 BaseOS thinks it is AppStream

Problem:
from a clean install and sync of CentOS 8, the baseOS repo reports that it is the AppStream variant
Even though there is a second repo called AppStream (with the correct variant = AppStream), it doesn’t get passed to the kickstart template as “additional media”

Also .treeinfo files on the proxy seems to override any manually specified repo entries in the kickstart template.

Expected outcome:
when synced, the baseOS repo should have its variant = BaseOS

Foreman and Proxy versions:
foreman: 2.3.2
katello: 3.18.1

Distribution and version:
centos 7

Other relevant data:
using pulp v3

Screenshot from 2021-02-01 20-45-12

then in the preview of a provisioning template, it doesn’t list AppStream, but instead both the url and repo point to BaseOS

url --url http://m17vmfrm.mmpci.net/pulp/repos/Default_Organization/3-PROD/POSview/custom/CentOS_8_-_64bit/BaseOS/
repo --name BaseOS --baseurl http://m17vmfrm.mmpci.net/pulp/repos/Default_Organization/3-PROD/POSview/custom/CentOS_8_-_64bit/BaseOS/ 

on the proxy, there is a AppStream directory under BaseOS, but it doesn’t contain the repodata need to be used as a repo.

I checked the older version of foreman with katelo 3.16 the variant under baseOS = baseOS.

@Partha_Aji have you seen anything like this?

This looks like it could be related to: Can't Kickstart CentOS 8

Hi @quba42
I read through that bug – it is related to the very start of centos 8, were the kickstart files were not AppStream “aware”.

that was all fixed in katelo 3.14 (or somewhere around there).

Using katelo 3.16.1, I was able to deploy centos 8:
the process was:
mirror 2 software repos: BaseOS and AppStream
include the “distribution” details in the repo

and Foreman correctly identified the variants

After doing a clean install of foreman 2.3.2 + Katelo 3.18.1, I have synced these 2 software repos, but this time, the BaseOS is reporting as “variant AppStream”.
I assume this is coming from pulp v3 somewhere??

so how do I fix it…? doing a complete resync doesn’t appear to change anything.
And how did pulp get confused?
because this then messes up the repo entries in the kickstart provisioning template

thanks for your time

What version of pulp_rpm do you have? I know they fixed something relating to AppStream in pulp_rpm 3.4.2, see: Issue #6568: Pulp 3 Sync of CentOS 8 Base OS repo, also ends up including AppStream - RPM Support - Pulp

Beyond that you seem to know more about it than I do.

This definitely looks like a bug. Filed Bug #31801: Katello not able to handle kickstarts with multiple variants effectively - Katello - Foreman

These are the versions of pulp-rpm installed

[root@foreman ~]# rpm -qa | grep pulp-rpm
python-pulp-rpm-common-2.21.5-1.el7.noarch
pulp-rpm-plugins-2.21.5-1.el7.noarch
python3-pulp-rpm-3.7.0-1.el7.noarch