From 344ec4bec22d881dabdf7b37efb6f6a1e20d5c6f Mon Sep 17 00:00:00 2001 From: Ken Dreyer Date: Mon, 30 Nov 2015 14:11:02 -0700 Subject: [PATCH] Revert "Revert "ceph.spec.: add epoch"" Re-add the Epoch bump to the packaging on the Firefly branch. Ceph Hammer and newer already have this change. It's time to add it to Firefly as well. The reasons that I removed it back in December 2014 are no longer valid, and this will fix some interactions with the Ceph client packages that ship in Base RHEL 7.1+. Fixes: #11104 http://tracker.ceph.com/issues/11104 Fixes: #13794 http://tracker.ceph.com/issues/13794 This reverts commit 7faae891aefa4c21c50430fa03d9204a86d082f8. Signed-off-by: Ken Dreyer --- ceph.spec.in | 65 ++++++++++++++++++++++++++-------------------------- 1 file changed, 33 insertions(+), 32 deletions(-) diff --git a/ceph.spec.in b/ceph.spec.in index 67a3825825e8a..7670fe62651bb 100644 --- a/ceph.spec.in +++ b/ceph.spec.in @@ -14,6 +14,7 @@ Name: ceph Version: @VERSION@ Release: @RPM_RELEASE@%{?dist} +Epoch: 1 Summary: User space components of the Ceph file system License: GPL-2.0 Group: System Environment/Base @@ -22,10 +23,10 @@ Source0: http://ceph.com/download/%{name}-%{version}.tar.bz2 %if 0%{?fedora} || 0%{?centos} || 0%{?rhel} Patch0: init-ceph.in-fedora.patch %endif -Requires: librbd1 = %{version}-%{release} -Requires: librados2 = %{version}-%{release} -Requires: libcephfs1 = %{version}-%{release} -Requires: ceph-common = %{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: libcephfs1 = %{epoch}:%{version}-%{release} +Requires: ceph-common = %{epoch}:%{version}-%{release} Requires: python Requires: python-ceph Requires: python-requests @@ -102,9 +103,9 @@ block and file system storage. %package -n ceph-common Summary: Ceph Common Group: System Environment/Base -Requires: librbd1 = %{version}-%{release} -Requires: librados2 = %{version}-%{release} -Requires: python-ceph = %{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: python-ceph = %{epoch}:%{version}-%{release} Requires: python-requests Requires: redhat-lsb-core # python-argparse is only needed in distros with Python 2.6 or lower @@ -127,8 +128,8 @@ FUSE based client for Ceph distributed network file system Summary: Ceph fuse-based client Group: System Environment/Base Requires: %{name} -Requires: librados2 = %{version}-%{release} -Requires: librbd1 = %{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} BuildRequires: fuse-devel %description -n rbd-fuse FUSE based client to map Ceph rbd images to files @@ -137,11 +138,11 @@ FUSE based client to map Ceph rbd images to files Summary: Ceph headers Group: Development/Libraries License: LGPL-2.0 -Requires: %{name} = %{version}-%{release} -Requires: librados2 = %{version}-%{release} -Requires: librbd1 = %{version}-%{release} -Requires: libcephfs1 = %{version}-%{release} -Requires: libcephfs_jni1 = %{version}-%{release} +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} +Requires: libcephfs1 = %{epoch}:%{version}-%{release} +Requires: libcephfs_jni1 = %{epoch}:%{version}-%{release} %description devel This package contains libraries and headers needed to develop programs that use Ceph. @@ -149,8 +150,8 @@ that use Ceph. %package radosgw Summary: Rados REST gateway Group: Development/Libraries -Requires: ceph-common = %{version}-%{release} -Requires: librados2 = %{version}-%{release} +Requires: ceph-common = %{epoch}:%{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} %if 0%{defined suse_version} BuildRequires: libexpat-devel BuildRequires: FastCGI-devel @@ -169,7 +170,7 @@ conjunction with any FastCGI capable web server. Summary: OCF-compliant resource agents for Ceph daemons Group: System Environment/Base License: LGPL-2.0 -Requires: %{name} = %{version} +Requires: %{name} = %{epoch}:%{version} Requires: resource-agents %description resource-agents Resource agents for monitoring and managing Ceph daemons @@ -182,7 +183,7 @@ Summary: RADOS distributed object store client library Group: System Environment/Libraries License: LGPL-2.0 %if 0%{?rhel} || 0%{?centos} || 0%{?fedora} -Obsoletes: ceph-libs < %{version}-%{release} +Obsoletes: ceph-libs < %{epoch}:%{version}-%{release} %endif %description -n librados2 RADOS is a reliable, autonomic distributed object storage cluster @@ -194,9 +195,9 @@ store using a simple file-like interface. Summary: RADOS block device client library Group: System Environment/Libraries License: LGPL-2.0 -Requires: librados2 = %{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} %if 0%{?rhel} || 0%{?centos} || 0%{?fedora} -Obsoletes: ceph-libs < %{version}-%{release} +Obsoletes: ceph-libs < %{epoch}:%{version}-%{release} %endif %description -n librbd1 RBD is a block device striped across multiple distributed objects in @@ -209,7 +210,7 @@ Summary: Ceph distributed file system client library Group: System Environment/Libraries License: LGPL-2.0 %if 0%{?rhel} || 0%{?centos} || 0%{?fedora} -Obsoletes: ceph-libs < %{version}-%{release} +Obsoletes: ceph-libs < %{epoch}:%{version}-%{release} Obsoletes: ceph-libcephfs %endif %description -n libcephfs1 @@ -222,8 +223,8 @@ POSIX-like interface. Summary: Python libraries for the Ceph distributed filesystem Group: System Environment/Libraries License: LGPL-2.0 -Requires: librados2 = %{version}-%{release} -Requires: librbd1 = %{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} %description -n python-ceph This package contains Python libraries for interacting with Cephs RADOS object storage. @@ -232,7 +233,7 @@ object storage. Summary: RESTful benchmark Group: System Environment/Libraries License: LGPL-2.0 -Requires: ceph-common = %{version}-%{release} +Requires: ceph-common = %{epoch}:%{version}-%{release} %description -n rest-bench RESTful bencher that can be used to benchmark radosgw performance. @@ -240,9 +241,9 @@ RESTful bencher that can be used to benchmark radosgw performance. Summary: Ceph benchmarks and test tools Group: System Environment/Libraries License: LGPL-2.0 -Requires: librados2 = %{version}-%{release} -Requires: librbd1 = %{version}-%{release} -Requires: libcephfs1 = %{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} +Requires: libcephfs1 = %{epoch}:%{version}-%{release} %description -n ceph-test This package contains Ceph benchmarks and test tools. @@ -251,7 +252,7 @@ Summary: Java Native Interface library for CephFS Java bindings. Group: System Environment/Libraries License: LGPL-2.0 Requires: java -Requires: libcephfs1 = %{version}-%{release} +Requires: libcephfs1 = %{epoch}:%{version}-%{release} BuildRequires: java-devel %description -n libcephfs_jni1 This package contains the Java Native Interface library for CephFS Java @@ -262,7 +263,7 @@ Summary: Java libraries for the Ceph File System. Group: System Environment/Libraries License: LGPL-2.0 Requires: java -Requires: libcephfs_jni1 = %{version}-%{release} +Requires: libcephfs_jni1 = %{epoch}:%{version}-%{release} BuildRequires: java-devel %if 0%{?el6} Requires: junit4 @@ -279,9 +280,9 @@ Summary: Meta package to include ceph libraries. Group: System Environment/Libraries License: LGPL-2.0 Obsoletes: ceph-libs -Requires: librados2 = %{version}-%{release} -Requires: librbd1 = %{version}-%{release} -Requires: libcephfs1 = %{version}-%{release} +Requires: librados2 = %{epoch}:%{version}-%{release} +Requires: librbd1 = %{epoch}:%{version}-%{release} +Requires: libcephfs1 = %{epoch}:%{version}-%{release} Provides: ceph-libs %description libs-compat -- 2.39.5