]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-deploy.git/commitdiff
create the install module for CentOS
authorAlfredo Deza <alfredo@deza.pe>
Thu, 25 Jul 2013 15:07:23 +0000 (11:07 -0400)
committerAlfredo Deza <alfredo@deza.pe>
Thu, 25 Jul 2013 15:07:23 +0000 (11:07 -0400)
Signed-off-by: Alfredo Deza <alfredo@deza.pe>
ceph_deploy/hosts/centos/__init__.py
ceph_deploy/hosts/centos/install.py [new file with mode: 0644]

index f23a8999003ddf014497ec7df6a8ce02e13fb085..416e3af3a71a8c3d97e68fd92a3cbee9f1429a73 100644 (file)
@@ -1,6 +1,8 @@
+from install import install
+
 # Allow to set some information about this distro
 #
 
-name = None
+distro = None
 release = None
 codename = None
diff --git a/ceph_deploy/hosts/centos/install.py b/ceph_deploy/hosts/centos/install.py
new file mode 100644 (file)
index 0000000..b79d7aa
--- /dev/null
@@ -0,0 +1,51 @@
+
+
+def install(release, codename, version_kind, version):
+    import platform
+    import subprocess
+
+    if version_kind in ['stable', 'testing']:
+        key = 'release'
+    else:
+        key = 'autobuild'
+
+    subprocess.check_call(
+        args='su -c \'rpm --import "https://ceph.com/git/?p=ceph.git;a=blob_plain;f=keys/{key}.asc"\''.format(key=key),
+        shell=True,
+        )
+
+    if version_kind == 'stable':
+        url = 'http://ceph.com/rpm-{version}/el6/'.format(
+            version=version,
+            )
+    elif version_kind == 'testing':
+        url = 'http://ceph.com/rpm-testing/'
+    elif version_kind == 'dev':
+        url = 'http://gitbuilder.ceph.com/ceph-rpm-centos{release}-{machine}-basic/ref/{version}/'.format(
+            release=release.split(".",1)[0],
+            machine=platform.machine(),
+            version=version,
+            )
+
+    subprocess.check_call(
+        args=[
+            'rpm',
+            '-Uvh',
+            '--replacepkgs',
+            '--force',
+            '--quiet',
+            '{url}noarch/ceph-release-1-0.el6.noarch.rpm'.format(
+                url=url,
+                ),
+            ]
+        )
+
+    subprocess.check_call(
+        args=[
+            'yum',
+            '-y',
+            '-q',
+            'install',
+            'ceph',
+            ],
+        )