- Update ceph-deploy to v1.5.39
- Removes code from the installer which adds ceph repos. Because we aren't using ceph's packages, when the repos are present, ceph-deploy attempts to pull incorrect packages from ceph repos instead of VMWare Photon repos.
- Removes imports from centos since they are not needed
- Changes the installer to yum. It may work with tdnf, but in current state is broken.
Change-Id: I5295d7d98ee8c87b0345d49e10d74fca5af8dab5
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/5188
Tested-by: gerrit-photon <photon-checkins@vmware.com>
Reviewed-by: Sharath George
| ... | ... |
@@ -1,37 +1,39 @@ |
| 1 |
-+++ b/ceph_deploy/hosts/__init__.py 2017-03-30 23:27:32.453109790 +0000 |
|
| 2 |
-@@ -7,7 +7,7 @@ on the type of distribution/version we a |
|
| 1 |
+--- ceph-deploy-1.5.39/ceph_deploy/hosts/__init__.py 2017-04-28 12:32:51.000000000 -0500 |
|
| 2 |
+@@ -7,7 +7,7 @@ |
|
| 3 | 3 |
import logging |
| 4 | 4 |
from ceph_deploy import exc |
| 5 | 5 |
from ceph_deploy.util import versions |
| 6 | 6 |
-from ceph_deploy.hosts import debian, centos, fedora, suse, remotes, rhel |
| 7 | 7 |
+from ceph_deploy.hosts import debian, centos, fedora, suse, remotes, rhel, photon |
| 8 | 8 |
from ceph_deploy.connection import get_connection |
| 9 |
- |
|
| 9 |
+ |
|
| 10 | 10 |
logger = logging.getLogger() |
| 11 |
-@@ -68,7 +68,7 @@ def get(hostname, |
|
| 11 |
+@@ -68,7 +68,7 @@ |
|
| 12 | 12 |
module.distro = module.normalized_name |
| 13 |
- module.is_el = module.normalized_name in ['redhat', 'centos', 'fedora', 'scientific', 'oracle'] |
|
| 13 |
+ module.is_el = module.normalized_name in ['redhat', 'centos', 'fedora', 'scientific', 'oracle', 'virtuozzo'] |
|
| 14 | 14 |
module.is_rpm = module.normalized_name in ['redhat', 'centos', |
| 15 |
-- 'fedora', 'scientific', 'suse', 'oracle'] |
|
| 16 |
-+ 'fedora', 'scientific', 'suse', 'oracle', 'photon'] |
|
| 15 |
+- 'fedora', 'scientific', 'suse', 'oracle', 'virtuozzo'] |
|
| 16 |
++ 'fedora', 'scientific', 'suse', 'oracle', 'virtuozzo', 'photon'] |
|
| 17 | 17 |
module.is_deb = not module.is_rpm |
| 18 | 18 |
module.release = release |
| 19 | 19 |
module.codename = codename |
| 20 |
-@@ -97,6 +97,7 @@ def _get_distro(distro, fallback=None, u |
|
| 20 |
+@@ -97,7 +97,8 @@ |
|
| 21 | 21 |
'redhat': centos, |
| 22 | 22 |
'fedora': fedora, |
| 23 | 23 |
'suse': suse, |
| 24 |
-+ 'photon': photon, |
|
| 24 |
+- 'virtuozzo' : centos |
|
| 25 |
++ 'virtuozzo' : centos, |
|
| 26 |
++ 'photon': photon |
|
| 25 | 27 |
} |
| 26 |
- |
|
| 28 |
+ |
|
| 27 | 29 |
if distro == 'redhat' and use_rhceph: |
| 28 |
-@@ -115,6 +116,8 @@ def _normalized_distro_name(distro): |
|
| 29 |
- return 'oracle' |
|
| 30 |
- elif distro.startswith(('suse', 'opensuse')):
|
|
| 30 |
+@@ -118,6 +119,8 @@ |
|
| 31 | 31 |
return 'suse' |
| 32 |
-+ elif distro.startswith('photon'):
|
|
| 33 |
-+ return 'photon' |
|
| 34 | 32 |
elif distro.startswith('centos'):
|
| 35 | 33 |
return 'centos' |
| 34 |
++ elif distro.startswith('photon'):
|
|
| 35 |
++ return 'photon' |
|
| 36 | 36 |
elif distro.startswith('linuxmint'):
|
| 37 |
+ return 'ubuntu' |
|
| 38 |
+ elif distro.startswith('virtuozzo'):
|
| ... | ... |
@@ -1,9 +1,9 @@ |
| 1 |
-+++ b/ceph_deploy/util/pkg_managers.py 2017-03-30 21:06:24.369709803 +0000 |
|
| 2 |
-@@ -181,6 +181,13 @@ class Yum(RPMManagerBase): |
|
| 1 |
+--- ceph-deploy-1.5.39/ceph_deploy/util/pkg_managers.py 2016-08-15 07:34:53.000000000 -0500 |
|
| 2 |
+@@ -181,6 +181,13 @@ |
|
| 3 | 3 |
executable = 'yum' |
| 4 | 4 |
name = 'yum' |
| 5 |
- |
|
| 5 |
+ |
|
| 6 | 6 |
+class Tdnf(RPMManagerBase): |
| 7 | 7 |
+ """ |
| 8 | 8 |
+ The Tdnf Package manager |
| ... | ... |
@@ -11,6 +11,6 @@ |
| 11 | 11 |
+ |
| 12 | 12 |
+ executable = 'tdnf' |
| 13 | 13 |
+ name = 'tdnf' |
| 14 |
- |
|
| 14 |
+ |
|
| 15 | 15 |
class Apt(PackageManager): |
| 16 | 16 |
""" |
| ... | ... |
@@ -1,5 +1,5 @@ |
| 1 |
-+++ b/ceph_deploy/hosts/photon/__init__.py 2017-03-30 21:10:40.613127409 +0000 |
|
| 1 |
+--- ceph-deploy-1.5.39/ceph_deploy/hosts/photon/__init__.py 2018-05-19 00:37:38.354704247 -0500 |
|
| 2 | 2 |
@@ -0,0 +1,23 @@ |
| 3 | 3 |
+from . import mon # noqa |
| 4 | 4 |
+from ceph_deploy.hosts.centos.install import repo_install # noqa |
| ... | ... |
@@ -23,4 +23,4 @@ |
| 23 | 23 |
+ return 'systemd' |
| 24 | 24 |
+ |
| 25 | 25 |
+def get_packager(module): |
| 26 |
-+ return pkg_managers.Tdnf(module) |
|
| 26 |
++ return pkg_managers.Yum(module) |
| ... | ... |
@@ -1,14 +1,18 @@ |
| 1 |
-+++ b/ceph_deploy/hosts/photon/install.py 2017-03-30 21:59:36.921406467 +0000 |
|
| 2 |
-@@ -0,0 +1,88 @@ |
|
| 1 |
+--- ceph-deploy-1.5.39/ceph_deploy/hosts/photon/install.py 2018-05-19 00:37:38.354704247 -0500 |
|
| 2 |
+@@ -0,0 +1,33 @@ |
|
| 3 | 3 |
+from ceph_deploy.lib import remoto |
| 4 |
-+from ceph_deploy.hosts.centos.install import repo_install, mirror_install # noqa |
|
| 5 | 4 |
+from ceph_deploy.util.paths import gpg |
| 6 | 5 |
+from ceph_deploy.hosts.common import map_components |
| 7 | 6 |
+ |
| 8 | 7 |
+ |
| 9 | 8 |
+NON_SPLIT_PACKAGES = ['ceph-osd', 'ceph-mon', 'ceph-mds'] |
| 10 | 9 |
+ |
| 10 |
++def repo_install(): |
|
| 11 |
++ pass |
|
| 12 |
++ |
|
| 13 |
++def mirror_install(): |
|
| 14 |
++ pass |
|
| 11 | 15 |
+ |
| 12 | 16 |
+def install(distro, version_kind, version, adjust_repos, **kw): |
| 13 | 17 |
+ packages = map_components( |
| ... | ... |
@@ -18,7 +22,7 @@ |
| 18 | 18 |
+ gpgcheck = kw.pop('gpgcheck', 1)
|
| 19 | 19 |
+ |
| 20 | 20 |
+ logger = distro.conn.logger |
| 21 |
-+ release = distro.release |
|
| 21 |
++ release = 'el7' |
|
| 22 | 22 |
+ machine = distro.machine_type |
| 23 | 23 |
+ |
| 24 | 24 |
+ if version_kind in ['stable', 'testing']: |
| ... | ... |
@@ -26,65 +30,6 @@ |
| 26 | 26 |
+ else: |
| 27 | 27 |
+ key = 'autobuild' |
| 28 | 28 |
+ |
| 29 |
-+ if adjust_repos: |
|
| 30 |
-+ if distro.packager.name == 'yum': |
|
| 31 |
-+ distro.packager.install('yum-plugin-priorities')
|
|
| 32 |
-+ # haven't been able to determine necessity of check_obsoletes with DNF |
|
| 33 |
-+ distro.conn.remote_module.enable_yum_priority_obsoletes() |
|
| 34 |
-+ logger.warning('check_obsoletes has been enabled for Yum priorities plugin')
|
|
| 35 |
-+ |
|
| 36 |
-+ if version_kind in ['stable', 'testing']: |
|
| 37 |
-+ distro.packager.add_repo_gpg_key(gpg.url(key)) |
|
| 38 |
-+ |
|
| 39 |
-+ if version_kind == 'stable': |
|
| 40 |
-+ url = 'https://download.ceph.com/rpm-{version}/fc{release}/'.format(
|
|
| 41 |
-+ version=version, |
|
| 42 |
-+ release=release, |
|
| 43 |
-+ ) |
|
| 44 |
-+ elif version_kind == 'testing': |
|
| 45 |
-+ url = 'https://download.ceph.com/rpm-testing/fc{release}'.format(
|
|
| 46 |
-+ release=release, |
|
| 47 |
-+ ) |
|
| 48 |
-+ |
|
| 49 |
-+ remoto.process.run( |
|
| 50 |
-+ distro.conn, |
|
| 51 |
-+ [ |
|
| 52 |
-+ 'rpm', |
|
| 53 |
-+ '-Uvh', |
|
| 54 |
-+ '--replacepkgs', |
|
| 55 |
-+ '--force', |
|
| 56 |
-+ '--quiet', |
|
| 57 |
-+ '{url}noarch/ceph-release-1-0.fc{release}.noarch.rpm'.format(
|
|
| 58 |
-+ url=url, |
|
| 59 |
-+ release=release, |
|
| 60 |
-+ ), |
|
| 61 |
-+ ] |
|
| 62 |
-+ ) |
|
| 63 |
-+ |
|
| 64 |
-+ # set the right priority |
|
| 65 |
-+ logger.warning('ensuring that /etc/yum.repos.d/ceph.repo contains a high priority')
|
|
| 66 |
-+ distro.conn.remote_module.set_repo_priority(['Ceph', 'Ceph-noarch', 'ceph-source']) |
|
| 67 |
-+ logger.warning('altered ceph.repo priorities to contain: priority=1')
|
|
| 68 |
-+ |
|
| 69 |
-+ elif version_kind in ['dev', 'dev_commit']: |
|
| 70 |
-+ logger.info('skipping install of ceph-release package')
|
|
| 71 |
-+ logger.info('repo file will be created manually')
|
|
| 72 |
-+ mirror_install( |
|
| 73 |
-+ distro, |
|
| 74 |
-+ 'http://gitbuilder.ceph.com/ceph-rpm-fc{release}-{machine}-basic/{sub}/{version}/'.format(
|
|
| 75 |
-+ release=release.split(".", 1)[0],
|
|
| 76 |
-+ machine=machine, |
|
| 77 |
-+ sub='ref' if version_kind == 'dev' else 'sha1', |
|
| 78 |
-+ version=version), |
|
| 79 |
-+ gpg.url(key), |
|
| 80 |
-+ adjust_repos=True, |
|
| 81 |
-+ extra_installs=False, |
|
| 82 |
-+ gpgcheck=gpgcheck, |
|
| 83 |
-+ ) |
|
| 84 |
-+ |
|
| 85 |
-+ else: |
|
| 86 |
-+ raise Exception('unrecognized version_kind %s' % version_kind)
|
|
| 87 |
-+ |
|
| 88 | 29 |
+ print packages |
| 89 | 30 |
+ distro.packager.install( |
| 90 | 31 |
+ packages |
| ... | ... |
@@ -1,5 +1,5 @@ |
| 1 |
-+++ b/ceph_deploy/hosts/photon/mon/__init__.py 2017-03-30 22:44:04.737113094 +0000 |
|
| 1 |
+--- ceph-deploy-1.5.39/ceph_deploy/hosts/photon/mon/__init__.py 2018-05-19 00:38:33.724706913 -0500 |
|
| 2 | 2 |
@@ -0,0 +1,2 @@ |
| 3 | 3 |
+from ceph_deploy.hosts.common import mon_add as add # noqa |
| 4 | 4 |
+from ceph_deploy.hosts.common import mon_create as create # noqa |
| ... | ... |
@@ -1,15 +1,15 @@ |
| 1 |
-+++ b/ceph_deploy/hosts/remotes.py 2017-03-30 21:54:58.410977997 +0000 |
|
| 2 |
-@@ -14,6 +14,12 @@ def platform_information(_linux_distribu |
|
| 1 |
+--- ceph-deploy-1.5.39/ceph_deploy/hosts/remotes.py 2017-09-01 06:30:23.000000000 -0500 |
|
| 2 |
+@@ -14,6 +14,12 @@ |
|
| 3 | 3 |
""" detect platform information from remote host """ |
| 4 | 4 |
linux_distribution = _linux_distribution or platform.linux_distribution |
| 5 | 5 |
distro, release, codename = linux_distribution() |
| 6 |
++ |
|
| 6 | 7 |
+ if 'photon' in distro.lower(): |
| 7 | 8 |
+ distro = 'photon' |
| 8 |
-+ release = '1.0' |
|
| 9 |
++ release = '2.0' |
|
| 9 | 10 |
+ codename = 'photon' |
| 10 | 11 |
+ |
| 11 |
-+ |
|
| 12 | 12 |
if not codename and 'debian' in distro.lower(): # this could be an empty string in Debian |
| 13 | 13 |
debian_codenames = {
|
| 14 |
- '8': 'jessie', |
|
| 14 |
+ '10': 'buster', |
| ... | ... |
@@ -1,16 +1,16 @@ |
| 1 | 1 |
%{!?python2_sitelib: %global python2_sitelib %(python2 -c "from distutils.sysconfig import get_python_lib;print(get_python_lib())")}
|
| 2 | 2 |
|
| 3 | 3 |
Name: ceph-deploy |
| 4 |
-Version: 1.5.37 |
|
| 5 |
-Release: 3%{?dist}
|
|
| 4 |
+Version: 1.5.39 |
|
| 5 |
+Release: 1%{?dist}
|
|
| 6 | 6 |
Url: http://ceph.com/ |
| 7 | 7 |
Summary: Admin and deploy tool for Ceph |
| 8 | 8 |
License: MIT |
| 9 | 9 |
Group: System/Filesystems |
| 10 | 10 |
Vendor: VMware, Inc. |
| 11 | 11 |
Distribution: Photon |
| 12 |
-Source0: https://pypi.python.org/packages/23/f0/f144b1b55534a3e10d269dbfbe092e0aaa1c4b826c24f5df9320ae9bdfce/%{name}-%{version}.tar.gz
|
|
| 13 |
-%define sha1 ceph-deploy=5c19b318320f2729c5b15da7159aa9824b885c1a |
|
| 12 |
+Source0: https://files.pythonhosted.org/packages/63/59/c2752952b7867faa2d63ba47c47da96e2f43f5124029975b579020df3665/%{name}-%{version}.tar.gz
|
|
| 13 |
+%define sha1 ceph-deploy=7aba578569c05425f68253181b5114130b2a259c |
|
| 14 | 14 |
Patch0: ceph-deploy-init.patch |
| 15 | 15 |
Patch1: ceph-deploy-package-manager.patch |
| 16 | 16 |
Patch2: ceph-deploy-remote.patch |
| ... | ... |
@@ -58,6 +58,8 @@ install -m 0755 -D scripts/ceph-deploy $RPM_BUILD_ROOT/usr/bin |
| 58 | 58 |
%{_bindir}/ceph-deploy
|
| 59 | 59 |
|
| 60 | 60 |
%changelog |
| 61 |
+* Fri May 18 2018 Grant Curell <grant.curell@salientcrgt.com> 1.5.39-1 |
|
| 62 |
+- Upgrading to version 1.5.39 |
|
| 61 | 63 |
* Thu Jun 01 2017 Dheeraj Shetty <dheerajs@vmware.com> 1.5.37-3 |
| 62 | 64 |
- Use python2 explicitly |
| 63 | 65 |
* Tue Apr 25 2017 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 1.5.37-2 |