]> git.apps.os.sepia.ceph.com Git - teuthology.git/commitdiff
Enable SUSE Linux Enterprise as a teuthology target
authorKyr Shatskyy <kyrylo.shatskyy@gmail.com>
Wed, 10 Oct 2018 04:25:39 +0000 (06:25 +0200)
committerKyr Shatskyy <kyrylo.shatskyy@gmail.com>
Thu, 18 Oct 2018 22:52:44 +0000 (00:52 +0200)
Signed-off-by: Nathan Cutler <ncutler@suse.com>
teuthology/misc.py
teuthology/openstack/openstack-sle-12.1-user-data.txt [new file with mode: 0644]
teuthology/openstack/openstack-sle-12.2-user-data.txt [new file with mode: 0644]
teuthology/orchestra/opsys.py
teuthology/packaging.py
teuthology/task/install/rpm.py

index 59825bc9887dd583c4873985a1c4331fff0c6c48..a01677a57f8adb2b3cad4c565e84da810789733a 100644 (file)
@@ -1255,7 +1255,7 @@ def get_system_type(remote, distro=False, version=False):
     return system_value
 
 def get_pkg_type(os_type):
-    if os_type in ('centos', 'fedora', 'opensuse', 'rhel', 'sles'):
+    if os_type in ('centos', 'fedora', 'opensuse', 'rhel', 'sle'):
         return 'rpm'
     else:
         return 'deb'
diff --git a/teuthology/openstack/openstack-sle-12.1-user-data.txt b/teuthology/openstack/openstack-sle-12.1-user-data.txt
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/teuthology/openstack/openstack-sle-12.2-user-data.txt b/teuthology/openstack/openstack-sle-12.2-user-data.txt
new file mode 100644 (file)
index 0000000..e69de29
index c0e241686ca69a248d04b5669811e48b436f3359..395fbec0843c8e6e83660a7ff80b9e2a1fb836cc 100644 (file)
@@ -53,8 +53,8 @@ DEFAULT_OS_VERSION = dict(
     ubuntu="16.04",
     fedora="25",
     centos="7.4",
-    opensuse="12.2",
-    sles="11-sp2",
+    opensuse="42.1",
+    sle="12.2",
     rhel="7.4",
     debian='8.0'
 )
@@ -71,7 +71,7 @@ class OS(object):
     __slots__ = ['name', 'version', 'codename', 'package_type']
 
     _deb_distros = ('debian', 'ubuntu')
-    _rpm_distros = ('fedora', 'rhel', 'centos', 'opensuse', 'opensuse-leap')
+    _rpm_distros = ('fedora', 'rhel', 'centos', 'opensuse', 'opensuse-leap', 'sles')
 
     def __init__(self, name=None, version=None, codename=None):
         self.name = name
@@ -117,8 +117,10 @@ class OS(object):
         name = cls._get_value(str_, 'Distributor ID')
         if name == 'RedHatEnterpriseServer':
             name = 'rhel'
-       elif name.startswith('openSUSE'):
-           name = 'opensuse'
+        elif name.startswith('openSUSE'):
+            name = 'opensuse'
+        elif name.startswith('SUSE'):
+            name = 'sle'
         name = name.lower()
 
         version = cls._get_value(str_, 'Release')
index a95b5ccb8373c3b49c66ab7151cc6a2eff21f7f6..723ce945219de04ba26d8b1c7ba89c9bb6bc5cec 100644 (file)
@@ -605,6 +605,8 @@ class GitbuilderProject(object):
             distro = "fedora"
         elif distro == "opensuse":
             distro = "opensuse"
+        elif distro == "sle":
+            distro == "sle"
         else:
             # deb based systems use codename instead of a distro/version combo
             if not codename:
@@ -780,7 +782,7 @@ class GitbuilderProject(object):
     def _install_rpm_repo(self):
         dist_release = self.dist_release
         project = self.project
-        if dist_release == 'opensuse':
+        if dist_release in ['opensuse', 'sle']:
             proj_release = '{proj}-release-{release}.noarch'.format(
                 proj=project, release=self.rpm_release)
         else:
@@ -792,7 +794,7 @@ class GitbuilderProject(object):
         rpm_name = "{rpm_nm}.rpm".format(rpm_nm=proj_release)
         url = "{base_url}/noarch/{rpm_name}".format(
             base_url=self.base_url, rpm_name=rpm_name)
-        if dist_release == 'opensuse':
+        if dist_release in ['opensuse', 'sle']:
             self.remote.run(args=[
                 'sudo', 'zypper', '-n', 'install', '--capability', rpm_name
             ])
index 01ab2dfe5e935c1e41175cb374ceb4d1ca430e8b..8ec87c11690caf7982f06fe8061cfc5b228ffa73 100644 (file)
@@ -24,7 +24,7 @@ def _remove(ctx, config, remote, rpm):
     builder = _get_builder_project(ctx, remote, config)
     dist_release = builder.dist_release
 
-    if dist_release == 'opensuse':
+    if dist_release in ['opensuse', 'sle']:
         pkg_mng_cmd = 'zypper'
         pkg_mng_opts = '-n'
         pkg_mng_subcommand_opts = '--capability'
@@ -44,7 +44,7 @@ def _remove(ctx, config, remote, rpm):
             run.Raw('$d'), run.Raw('||'), 'true', run.Raw(';'),
             'done',
         ])
-    if dist_release == 'opensuse':
+    if dist_release in ['opensuse', 'sle']:
         pkg_mng_opts = '-a'
     else:
         pkg_mng_opts = 'all'
@@ -55,7 +55,7 @@ def _remove(ctx, config, remote, rpm):
 
     builder.remove_repo()
 
-    if dist_release != 'opensuse':
+    if dist_release not in ['opensuse', 'sle']:
         pkg_mng_opts = 'expire-cache'
     remote.run(
         args=[
@@ -111,13 +111,13 @@ def _update_package_list_and_install(ctx, remote, rpm, config):
 
     dist_release = builder.dist_release
     project = builder.project
-    if dist_release != 'opensuse':
+    if dist_release not in ['opensuse', 'sle']:
         uri = builder.uri_reference
         _yum_fix_repo_priority(remote, project, uri)
         _yum_fix_repo_host(remote, project)
         _yum_set_check_obsoletes(remote)
 
-    if dist_release == 'opensuse':
+    if dist_release in ['opensuse', 'sle']:
         remote.run(
             args=[
                 'sudo', 'zypper', 'clean', '-a',
@@ -130,7 +130,7 @@ def _update_package_list_and_install(ctx, remote, rpm, config):
 
     ldir = _get_local_dir(config, remote)
 
-    if dist_release == 'opensuse':
+    if dist_release in ['opensuse', 'sle']:
         pkg_mng_cmd = 'zypper'
         pkg_mng_opts = '-n'
         pkg_mng_subcommand_opts = '--capability'
@@ -268,7 +268,7 @@ def _remove_sources_list(ctx, config, remote):
         args=['sudo', 'rm', '-r', '/var/log/{proj}'.format(proj=proj)],
         check_status=False,
     )
-    if remote.os.name != 'opensuse':
+    if remote.os.name not in ['opensuse', 'sle']:
         _yum_unset_check_obsoletes(remote)
 
 
@@ -301,13 +301,13 @@ def _upgrade_packages(ctx, config, remote, pkgs):
     builder.remove_repo()
     builder.install_repo()
 
-    if builder.dist_release != 'opensuse':
+    if builder.dist_release not in ['opensuse', 'sle']:
         uri = builder.uri_reference
         _yum_fix_repo_priority(remote, project, uri)
         _yum_fix_repo_host(remote, project)
         _yum_set_check_obsoletes(remote)
 
-    if builder.dist_release == 'opensuse':
+    if builder.dist_release in ['opensuse', 'sle']:
         pkg_mng_cmd = 'zypper'
         pkg_mng_opts = '-a'
     else:
@@ -320,7 +320,7 @@ def _upgrade_packages(ctx, config, remote, pkgs):
         ])
 
     # Actually upgrade the project packages
-    if builder.dist_release == 'opensuse':
+    if builder.dist_release in ['opensuse', 'sle']:
         pkg_mng_opts = '-n'
         pkg_mng_subcommand_opts = '--capability'
     else: