tests: Fix testsuite with older libosinfo

We need to handle if get/set_installation_url is missing
This commit is contained in:
Cole Robinson 2019-07-31 17:43:49 -04:00
parent b20c5764bc
commit b85a5558f9
2 changed files with 8 additions and 3 deletions

View File

@ -876,7 +876,7 @@ c.add_valid("--connect %s --pxe --disk size=1" % utils.URIs.test_defaultpool_col
####################
c = vinst.add_category("unattended-install", "--connect %(URI-KVM)s --nographics --noautoconsole --disk none", prerun_check=no_osinfo_unattend_cb)
c.add_compare("--install fedora26 --unattended profile=desktop,admin-password-file=%(ADMIN-PASSWORD-FILE)s,user-password-file=%(USER-PASSWORD-FILE)s,product-key=1234", "osinfo-url-unattended") # unattended install for fedora, using initrd injection
c.add_compare("--install fedora26 --unattended profile=desktop,admin-password-file=%(ADMIN-PASSWORD-FILE)s,user-password-file=%(USER-PASSWORD-FILE)s,product-key=1234", "osinfo-url-unattended", prerun_check=lambda: not unattended.OSInstallScript.have_libosinfo_installation_url()) # unattended install for fedora, using initrd injection
c.add_compare("--cdrom %(ISO-WIN7)s --unattended profile=desktop,admin-password-file=%(ADMIN-PASSWORD-FILE)s", "osinfo-win7-unattended") # unattended install for win7
c.add_compare("--os-variant fedora26 --unattended profile=jeos,admin-password-file=%(ADMIN-PASSWORD-FILE)s --location %(ISO-F26-NETINST)s", "osinfo-netinst-unattended") # triggering the special netinst checking code
c.add_compare("--os-variant silverblue29 --location http://example.com", "network-install-resources") # triggering network-install resources override

View File

@ -103,8 +103,9 @@ def _make_installconfig(script, osobj, unattended_data, arch, hostname, url):
log.debug("timezone: %s", config.get_l10n_timezone())
log.debug("language: %s", config.get_l10n_language())
log.debug("keyboard: %s", config.get_l10n_keyboard())
log.debug("url: %s",
config.get_installation_url()) # pylint: disable=no-member
if hasattr(config, "get_installation_url"):
log.debug("url: %s",
config.get_installation_url()) # pylint: disable=no-member
log.debug("product-key: %s", config.get_reg_product_key())
return config
@ -125,6 +126,10 @@ class OSInstallScript:
return True
return False # pragma: no cover
@staticmethod
def have_libosinfo_installation_url():
return hasattr(Libosinfo.InstallConfig, "set_installation_url")
def __init__(self, script, osobj, osinfomediaobj, osinfotreeobj):
self._script = script
self._osobj = osobj