Feature #24166

allow adding required-tags to custom products

Added by Thomas McKay 12 months ago. Updated 8 months ago.

Target version:
Bugzilla link:
Pull request:
Team Backlog:
Fixed in Releases:
Found in Releases:


Cloned from

Description of problem:
If a CV exists, with both RHEL6 and RHEL7 base repos in it, a system connected to the CV will only 'see' the repos that match the version of RHEL installed on the system.

For custom products, this does not work.

This is especially cumbersome in container environments.

My customer, for example, has Atomic Host nodes connected to the Default Library View (to get access to new RPMs as soon as we release new container images).

In that Default Org View are also EPEL6 and EPEL7. RHEL6 containers nicely only 'see' and enable the RHEL6 base repos, but they have both EPEL6 and EPEL7 enabled. Same goes for RHEL7 containers, but the other way around.

This is cumbersome.

As I discussed with Rich Jerrido, it would be useful if we could inject some specific tags into the custom product and product certificate that makes sure that on RHEL6 containers (or VMs) only EPEL6 is enabled, and on RHEL7 containers (or VMs) only EPEL7 is enabled, even though both are available from the same CV.

Hope this makes sense :)

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. Add both RHEL6 and RHEL7 base repos, EPEL6 and EPEL7. Sync all.
2. Connect new system to Default Org View
3. Spin up RHEL6 or RHEL7 container

Actual results:
Container sees only appropriate RHEL6 or RHEL7 content, but both EPEL6 and EPEL7.

Expected results:
Container sees only appropriate RHEL6 or RHEL7 content, and only appropriate EPEL6 or EPEL7.

Additional info:


#1 Updated by Thomas McKay 12 months ago

  • Assignee changed from Eric Helms to Thomas McKay
  • Category changed from Subscriptions to Repositories
  • Subject changed from allow adding required-tags to custom products to allow adding required-tags to custom products

The solution for this is to allow the "required tags" for a repository to be set in candlepin. This functionality already exists in candlepin so need only expose it in katello.

Implementation choices:
1. simple text field (with hint of "rhel-6,rhel-7")
2. editable text field with drop down checkbox choices
3. editable text field with drop down checkbox choices where choices are populated from known existing tags

% rct cat-cert /etc/pki/entitlements/FOO.pem
    Type: yum
    Name: Red Hat Developer Toolset RHB RPMs for Red Hat Enterprise Linux 6 Workstation
    Label: rhel-workstation-dts-6-rhb-rpms
    Vendor: Red Hat
    URL: /content/rhb/rhel/workstation/6/6Workstation/$basearch/devtoolset/os
    GPG: file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta
    Enabled: False
    Expires: 86400
    Required Tags: rhel-6-workstation
    Arches: x86_64, x86

To see the tags 'installed' on the client:

% rct cat-cert /etc/pki/product/FOO.pem
    ID: 69
    Name: Red Hat Enterprise Linux Server
    Version: 7.5
    Arch: x86_64
    Tags: rhel-7,rhel-7-server
    Brand Type: 
    Brand Name:

#2 Updated by Jonathon Turel 11 months ago

  • Triaged changed from No to Yes
  • Target version set to Katello 3.9.0

#3 Updated by Thomas McKay 11 months ago

  • Status changed from New to Assigned
  • Team Backlog Tom added

#4 Updated by Brad Buckingham 9 months ago

  • Assignee deleted (Thomas McKay)

#5 Updated by Jonathon Turel 8 months ago

  • Target version changed from Katello 3.9.0 to Katello Backlog
  • Status changed from Assigned to New
  • Team Backlog Brad added
  • Team Backlog deleted (Tom)

Also available in: Atom PDF