]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-deploy.git/commitdiff
[RM-12439] suse: Use Zypper Class pkg manager 334/head
authorTravis Rhoden <trhoden@redhat.com>
Sat, 1 Aug 2015 03:15:22 +0000 (20:15 -0700)
committerTravis Rhoden <trhoden@redhat.com>
Mon, 3 Aug 2015 22:57:34 +0000 (15:57 -0700)
Refs: #12439

Signed-off-by: Travis Rhoden <trhoden@redhat.com>
ceph_deploy/hosts/__init__.py
ceph_deploy/hosts/suse/__init__.py
ceph_deploy/hosts/suse/install.py
ceph_deploy/hosts/suse/uninstall.py

index 297f34206f967cba5fa64df59523ae46ccb3f2b6..6a2a2aa5a31dd0150855c840193f1f585c18c7ae 100644 (file)
@@ -69,9 +69,7 @@ def get(hostname,
     module.conn = conn
     module.machine_type = machine_type
     module.init = module.choose_init()
-    if module.normalized_name in ['fedora', 'centos', 'redhat',
-                                  'ubuntu', 'debian']:
-        module.packager = module.get_packager(module)
+    module.packager = module.get_packager(module)
     return module
 
 
index 65b125546caec85f48060f346814e2dd7f705643..e2900e720aec68406aee809bcdf29b823334f010 100644 (file)
@@ -4,6 +4,8 @@ from install import install, mirror_install, repo_install  # noqa
 from uninstall import uninstall  # noqa
 import logging
 
+from ceph_deploy.util import pkg_managers
+
 # Allow to set some information about this distro
 #
 
@@ -24,3 +26,7 @@ def choose_init():
         '13.1' : 'systemd',             # openSUSE_13.1
         }
     return init_mapping.get(release, 'sysvinit')
+
+
+def get_packager(module):
+    return pkg_managers.Zypper(module)
index 5a082955a60a3280d695efd93ba57790ae51c075..10b682ef9d3dbbadfe656ec50851f39165d089be 100644 (file)
@@ -1,6 +1,6 @@
 import logging
 
-from ceph_deploy.util import templates, pkg_managers
+from ceph_deploy.util import templates
 from ceph_deploy.lib import remoto
 from ceph_deploy.hosts.common import map_components
 
@@ -15,9 +15,9 @@ def install(distro, version_kind, version, adjust_repos, **kw):
         kw.get('components', [])
     )
 
-    pkg_managers.zypper_refresh(distro.conn)
-    if len(packages):
-        pkg_managers.zypper(distro.conn, packages)
+    distro.packager.clean()
+    if packages:
+        distro.packager.install(packages)
 
 
 def mirror_install(distro, repo_url, gpg_url, adjust_repos, **kw):
@@ -45,10 +45,10 @@ def mirror_install(distro, repo_url, gpg_url, adjust_repos, **kw):
         distro.conn.remote_module.write_file(
             '/etc/zypp/repos.d/ceph.repo',
             ceph_repo_content)
-        pkg_managers.zypper_refresh(distro.conn)
+        distro.packager.clean()
 
-    if len(packages):
-        pkg_managers.zypper(distro.conn, packages)
+    if packages:
+        distro.packager.install(packages)
 
 
 def repo_install(distro, reponame, baseurl, gpgkey, **kw):
@@ -92,5 +92,5 @@ def repo_install(distro, reponame, baseurl, gpgkey, **kw):
     )
 
     # Some custom repos do not need to install ceph
-    if install_ceph and len(packages):
-        pkg_managers.zypper(distro.conn, packages)
+    if install_ceph and packages:
+        distro.packager.install(packages)
index 5128c09e3746289a63ddd7feafa21f9b71303243..163d89172eaee251faf2e1f9a69b3f6445117f2e 100644 (file)
@@ -1,6 +1,3 @@
-from ceph_deploy.util import pkg_managers
-
-
 def uninstall(distro, purge=False):
     packages = [
         'ceph',
@@ -10,4 +7,4 @@ def uninstall(distro, purge=False):
         'librbd1',
         'ceph-radosgw',
         ]
-    pkg_managers.zypper_remove(distro.conn, packages)
+    distro.packager.remove(packages)