diff --git a/src/subscription_manager/repofile.py b/src/subscription_manager/repofile.py index 99d67cdc9c..fa97709de8 100644 --- a/src/subscription_manager/repofile.py +++ b/src/subscription_manager/repofile.py @@ -25,6 +25,7 @@ import os import re import string +import sys try: from debian.deb822 import Deb822 @@ -48,6 +49,9 @@ repo_files = [] +# detect if running with yum, otherwise it's dnf +HAS_YUM = "yum" in sys.modules + class Repo(dict): # (name, mutable, default) - The mutability information is only used in disconnected cases @@ -124,7 +128,7 @@ def from_ent_cert_content(cls, content, baseurl, ca_cert, release_source): # Extract the variables from the url repo_parts = repo['baseurl'].split("/") repoid_vars = [part[1:] for part in repo_parts if part.startswith("$")] - if repoid_vars: + if HAS_YUM and repoid_vars: repo['ui_repoid_vars'] = " ".join(repoid_vars) # If no GPG key URL is specified, turn gpgcheck off: diff --git a/test/test_repolib.py b/test/test_repolib.py index eb1b978991..0c62d37a9e 100644 --- a/test/test_repolib.py +++ b/test/test_repolib.py @@ -46,6 +46,10 @@ from subscription_manager.entcertlib import CONTENT_ACCESS_CERT_TYPE +# always pretend to run tests with yum in order to have 'ui_repoid_vars' available +repofile.HAS_YUM = True + + class ConfigFromString(config.Config): def __init__(self, config_string): parser = RhsmConfigParserFromString(config_string)