Rebase and split ceph-devel, python-ceph packages. provide empty file list for python-ceph-compat and ceph-devel-compat, fix the librados-devel vs librados2-devel problem

This commit is contained in:
Boris Ranto 2014-10-13 19:54:42 +02:00
parent 85761f4d79
commit fa0655c5ea
2 changed files with 178 additions and 60 deletions

236
ceph.spec
View File

@ -9,11 +9,11 @@
# common # common
################################################################################# #################################################################################
Name: ceph Name: ceph
Version: 0.80.5 Version: 0.80.6
Release: 10%{?dist} Release: 3%{?dist}
Epoch: 1 Epoch: 1
Summary: User space components of the Ceph file system Summary: User space components of the Ceph file system
License: GPL-2.0 License: GPLv2
Group: System Environment/Base Group: System Environment/Base
URL: http://ceph.com/ URL: http://ceph.com/
Source0: http://ceph.com/download/%{name}-%{version}.tar.bz2 Source0: http://ceph.com/download/%{name}-%{version}.tar.bz2
@ -23,10 +23,14 @@ Requires: librbd1 = %{epoch}:%{version}-%{release}
Requires: librados2 = %{epoch}:%{version}-%{release} Requires: librados2 = %{epoch}:%{version}-%{release}
Requires: libcephfs1 = %{epoch}:%{version}-%{release} Requires: libcephfs1 = %{epoch}:%{version}-%{release}
Requires: ceph-common = %{epoch}:%{version}-%{release} Requires: ceph-common = %{epoch}:%{version}-%{release}
Requires: python-rados = %{epoch}:%{version}-%{release}
Requires: python-rbd = %{epoch}:%{version}-%{release}
Requires: python-cephfs = %{epoch}:%{version}-%{release}
Requires: python Requires: python
Requires: python-argparse Requires: python-argparse
Requires: python-ceph
Requires: python-requests Requires: python-requests
# For ceph-rest-api
Requires: python-flask
%if ! ( 0%{?rhel} && 0%{?rhel} <= 6 ) %if ! ( 0%{?rhel} && 0%{?rhel} <= 6 )
Requires: xfsprogs Requires: xfsprogs
%endif %endif
@ -116,7 +120,9 @@ Summary: Ceph Common
Group: System Environment/Base Group: System Environment/Base
Requires: librbd1 = %{epoch}:%{version}-%{release} Requires: librbd1 = %{epoch}:%{version}-%{release}
Requires: librados2 = %{epoch}:%{version}-%{release} Requires: librados2 = %{epoch}:%{version}-%{release}
Requires: python-ceph = %{epoch}:%{version}-%{release} Requires: python-rados = %{epoch}:%{version}-%{release}
Requires: python-rbd = %{epoch}:%{version}-%{release}
Requires: python-cephfs = %{epoch}:%{version}-%{release}
Requires: python-requests Requires: python-requests
Requires: redhat-lsb-core Requires: redhat-lsb-core
%description -n ceph-common %description -n ceph-common
@ -140,19 +146,6 @@ BuildRequires: fuse-devel
%description -n rbd-fuse %description -n rbd-fuse
FUSE based client to map Ceph rbd images to files FUSE based client to map Ceph rbd images to files
%package devel
Summary: Ceph headers
Group: Development/Libraries
License: LGPL-2.0
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.
%package radosgw %package radosgw
Summary: Rados REST gateway Summary: Rados REST gateway
Group: Development/Libraries Group: Development/Libraries
@ -197,6 +190,26 @@ developed as part of the Ceph distributed storage system. This is a
shared library allowing applications to access the distributed object shared library allowing applications to access the distributed object
store using a simple file-like interface. store using a simple file-like interface.
%package -n librados2-devel
Summary: RADOS headers
Group: Development/Libraries
License: LGPL-2.0
Requires: librados2 = %{epoch}:%{version}-%{release}
Obsoletes: ceph-devel
%description -n librados2-devel
This package contains libraries and headers needed to develop programs
that use RADOS object store.
%package -n python-rados
Summary: Python libraries for the RADOS object store
Group: System Environment/Libraries
License: LGPL-2.0
Requires: librados2 = %{epoch}:%{version}-%{release}
Obsoletes: python-ceph
%description -n python-rados
This package contains Python libraries for interacting with Cephs RADOS
object store.
%package -n librbd1 %package -n librbd1
Summary: RADOS block device client library Summary: RADOS block device client library
Group: System Environment/Libraries Group: System Environment/Libraries
@ -211,6 +224,28 @@ RADOS, a reliable, autonomic distributed object storage cluster
developed as part of the Ceph distributed storage system. This is a developed as part of the Ceph distributed storage system. This is a
shared library allowing applications to manage these block devices. shared library allowing applications to manage these block devices.
%package -n librbd1-devel
Summary: RADOS block device headers
Group: Development/Libraries
License: LGPL-2.0
Requires: librbd1 = %{epoch}:%{version}-%{release}
Requires: librados2-devel = %{epoch}:%{version}-%{release}
Obsoletes: ceph-devel
%description -n librbd1-devel
This package contains libraries and headers needed to develop programs
that use RADOS block device.
%package -n python-rbd
Summary: Python libraries for the RADOS block device
Group: System Environment/Libraries
License: LGPL-2.0
Requires: librbd1 = %{epoch}:%{version}-%{release}
Requires: python-rados = %{epoch}:%{version}-%{release}
Obsoletes: python-ceph
%description -n python-rbd
This package contains Python libraries for interacting with Cephs RADOS
block device.
%package -n libcephfs1 %package -n libcephfs1
Summary: Ceph distributed file system client library Summary: Ceph distributed file system client library
Group: System Environment/Libraries Group: System Environment/Libraries
@ -225,19 +260,27 @@ performance, reliability, and scalability. This is a shared library
allowing applications to access a Ceph distributed file system via a allowing applications to access a Ceph distributed file system via a
POSIX-like interface. POSIX-like interface.
%package -n python-ceph %package -n libcephfs1-devel
Summary: Python libraries for the Ceph distributed filesystem Summary: Ceph distributed file system headers
Group: Development/Libraries
License: LGPL-2.0
Requires: libcephfs1 = %{epoch}:%{version}-%{release}
Requires: librados2-devel = %{epoch}:%{version}-%{release}
Obsoletes: ceph-devel
%description -n libcephfs1-devel
This package contains libraries and headers needed to develop programs
that use Cephs distributed file system.
%package -n python-cephfs
Summary: Python libraries for Ceph distributed file system
Group: System Environment/Libraries Group: System Environment/Libraries
License: LGPL-2.0 License: LGPL-2.0
Requires: librados2 = %{epoch}:%{version}-%{release} Requires: libcephfs1 = %{epoch}:%{version}-%{release}
Requires: librbd1 = %{epoch}:%{version}-%{release} Requires: python-rados = %{epoch}:%{version}-%{release}
Requires: python-flask Obsoletes: python-ceph
%if 0%{defined suse_version} %description -n python-cephfs
%py_requires This package contains Python libraries for interacting with Cephs distributed
%endif file system.
%description -n python-ceph
This package contains Python libraries for interacting with Cephs RADOS
object storage.
%package -n rest-bench %package -n rest-bench
Summary: RESTful benchmark Summary: RESTful benchmark
@ -268,6 +311,16 @@ BuildRequires: java-devel
This package contains the Java Native Interface library for CephFS Java This package contains the Java Native Interface library for CephFS Java
bindings. bindings.
%package -n libcephfs_jni1-devel
Summary: Development files for CephFS Java Native Interface library.
Group: System Environment/Libraries
License: LGPL-2.0
Requires: java
Requires: libcephfs_jni1 = %{epoch}:%{version}-%{release}
%description -n libcephfs_jni1-devel
This package contains the development files for CephFS Java Native Interface
library.
%package -n cephfs-java %package -n cephfs-java
Summary: Java libraries for the Ceph File System. Summary: Java libraries for the Ceph File System.
Group: System Environment/Libraries Group: System Environment/Libraries
@ -282,12 +335,11 @@ This package contains the Java libraries for the Ceph File System.
Summary: Meta package to include ceph libraries. Summary: Meta package to include ceph libraries.
Group: System Environment/Libraries Group: System Environment/Libraries
License: LGPL-2.0 License: LGPL-2.0
Obsoletes: ceph-libs < 1:0.80.5 Obsoletes: ceph-libs
Requires: librados2 = %{epoch}:%{version}-%{release} Requires: librados2 = %{epoch}:%{version}-%{release}
Requires: librbd1 = %{epoch}:%{version}-%{release} Requires: librbd1 = %{epoch}:%{version}-%{release}
Requires: libcephfs1 = %{epoch}:%{version}-%{release} Requires: libcephfs1 = %{epoch}:%{version}-%{release}
Provides: ceph-libs Provides: ceph-libs
%description libs-compat %description libs-compat
This is a meta package, that pulls in librados2, librbd1 and libcephfs1. It This is a meta package, that pulls in librados2, librbd1 and libcephfs1. It
is included for backwards compatibility with distributions that depend on the is included for backwards compatibility with distributions that depend on the
@ -295,6 +347,38 @@ former ceph-libs package, which is now split up into these three subpackages.
Packages still depending on ceph-libs should be fixed to depend on librados2, Packages still depending on ceph-libs should be fixed to depend on librados2,
librbd1 or libcephfs1 instead. librbd1 or libcephfs1 instead.
%package devel-compat
Summary: Compatibility package for Ceph headers
Group: Development/Libraries
License: LGPL-2.0
Obsoletes: ceph-devel
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: librados2-devel = %{epoch}:%{version}-%{release}
Requires: librbd1-devel = %{epoch}:%{version}-%{release}
Requires: libcephfs1-devel = %{epoch}:%{version}-%{release}
Requires: libcephfs_jni1-devel = %{epoch}:%{version}-%{release}
Provides: ceph-devel
%description devel-compat
This is a compatibility package to accommodate ceph-devel split into
librados2-devel, librbd1-devel and libcephfs1-devel. Packages still depending
on ceph-devel should be fixed to depend on librados2-devel, librbd1-devel
or libcephfs1-devel instead.
%package -n python-ceph-compat
Summary: Compatibility package for Cephs python libraries
Group: System Environment/Libraries
License: LGPL-2.0
Obsoletes: python-ceph
Requires: python-rados = %{epoch}:%{version}-%{release}
Requires: python-rbd = %{epoch}:%{version}-%{release}
Requires: python-cephfs = %{epoch}:%{version}-%{release}
Provides: python-ceph
%description -n python-ceph-compat
This is a compatibility package to accommodate python-ceph split into
python-rados, python-rbd and python-cephfs. Packages still depending on
python-ceph should be fixed to depend on python-rados, python-rbd or
python-cephfs instead.
%if 0%{?opensuse} || 0%{?suse_version} %if 0%{?opensuse} || 0%{?suse_version}
%debug_package %debug_package
%endif %endif
@ -458,6 +542,7 @@ fi
%{_bindir}/cephfs %{_bindir}/cephfs
%{_bindir}/ceph-clsinfo %{_bindir}/ceph-clsinfo
%{_bindir}/ceph-rest-api %{_bindir}/ceph-rest-api
%{python_sitelib}/ceph_rest_api.py*
%{_bindir}/crushtool %{_bindir}/crushtool
%{_bindir}/monmaptool %{_bindir}/monmaptool
%{_bindir}/osdmaptool %{_bindir}/osdmaptool
@ -572,6 +657,7 @@ fi
%config %{_sysconfdir}/bash_completion.d/rbd %config %{_sysconfdir}/bash_completion.d/rbd
%config(noreplace) %{_sysconfdir}/ceph/rbdmap %config(noreplace) %{_sysconfdir}/ceph/rbdmap
%{_initrddir}/rbdmap %{_initrddir}/rbdmap
%{python_sitelib}/ceph_argparse.py*
%postun -n ceph-common %postun -n ceph-common
# Package removal cleanup # Package removal cleanup
@ -597,29 +683,6 @@ fi
%{_bindir}/rbd-fuse %{_bindir}/rbd-fuse
%{_mandir}/man8/rbd-fuse.8* %{_mandir}/man8/rbd-fuse.8*
#################################################################################
%files devel
%defattr(-,root,root,-)
%dir %{_includedir}/cephfs
%{_includedir}/cephfs/libcephfs.h
%dir %{_includedir}/rados
%{_includedir}/rados/librados.h
%{_includedir}/rados/librados.hpp
%{_includedir}/rados/buffer.h
%{_includedir}/rados/page.h
%{_includedir}/rados/crc32c.h
%{_includedir}/rados/rados_types.h
%{_includedir}/rados/rados_types.hpp
%{_includedir}/rados/memory.h
%dir %{_includedir}/rbd
%{_includedir}/rbd/librbd.h
%{_includedir}/rbd/librbd.hpp
%{_includedir}/rbd/features.h
%{_libdir}/libcephfs.so
%{_libdir}/librbd.so
%{_libdir}/librados.so
%{_libdir}/libcephfs_jni.so
################################################################################# #################################################################################
%files radosgw %files radosgw
%defattr(-,root,root,-) %defattr(-,root,root,-)
@ -676,6 +739,25 @@ fi
%postun -n librados2 %postun -n librados2
/sbin/ldconfig /sbin/ldconfig
#################################################################################
%files -n librados2-devel
%defattr(-,root,root,-)
%dir %{_includedir}/rados
%{_includedir}/rados/librados.h
%{_includedir}/rados/librados.hpp
%{_includedir}/rados/buffer.h
%{_includedir}/rados/page.h
%{_includedir}/rados/crc32c.h
%{_includedir}/rados/rados_types.h
%{_includedir}/rados/rados_types.hpp
%{_includedir}/rados/memory.h
%{_libdir}/librados.so
#################################################################################
%files -n python-rados
%defattr(-,root,root,-)
%{python_sitelib}/rados.py*
################################################################################# #################################################################################
%files -n librbd1 %files -n librbd1
%defattr(-,root,root,-) %defattr(-,root,root,-)
@ -703,6 +785,20 @@ ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
%postun -n librbd1 %postun -n librbd1
/sbin/ldconfig /sbin/ldconfig
#################################################################################
%files -n librbd1-devel
%defattr(-,root,root,-)
%dir %{_includedir}/rbd
%{_includedir}/rbd/librbd.h
%{_includedir}/rbd/librbd.hpp
%{_includedir}/rbd/features.h
%{_libdir}/librbd.so
#################################################################################
%files -n python-rbd
%defattr(-,root,root,-)
%{python_sitelib}/rbd.py*
################################################################################# #################################################################################
%files -n libcephfs1 %files -n libcephfs1
%defattr(-,root,root,-) %defattr(-,root,root,-)
@ -715,13 +811,16 @@ ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
/sbin/ldconfig /sbin/ldconfig
################################################################################# #################################################################################
%files -n python-ceph %files -n libcephfs1-devel
%defattr(-,root,root,-)
%dir %{_includedir}/cephfs
%{_includedir}/cephfs/libcephfs.h
%{_libdir}/libcephfs.so
#################################################################################
%files -n python-cephfs
%defattr(-,root,root,-) %defattr(-,root,root,-)
%{python_sitelib}/rados.py*
%{python_sitelib}/rbd.py*
%{python_sitelib}/cephfs.py* %{python_sitelib}/cephfs.py*
%{python_sitelib}/ceph_argparse.py*
%{python_sitelib}/ceph_rest_api.py*
################################################################################# #################################################################################
%files -n rest-bench %files -n rest-bench
@ -762,13 +861,32 @@ ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
%defattr(-,root,root,-) %defattr(-,root,root,-)
%{_libdir}/libcephfs_jni.so.* %{_libdir}/libcephfs_jni.so.*
%files -n libcephfs_jni1-devel
%defattr(-,root,root,-)
%{_libdir}/libcephfs_jni.so
%files -n cephfs-java %files -n cephfs-java
%defattr(-,root,root,-) %defattr(-,root,root,-)
%{_javadir}/libcephfs.jar %{_javadir}/libcephfs.jar
# We need to create these three for compatibility reasons
%files libs-compat %files libs-compat
%files devel-compat
%files -n python-ceph-compat
%changelog %changelog
* Sat Oct 11 2014 Boris Ranto <branto@redhat.com> - 1:0.80.6-3
- Fix a typo in librados-devel vs librados2-devel dependency
* Fri Oct 10 2014 Boris Ranto <branto@redhat.com> - 1:0.80.6-2
- Provide empty file list for python-ceph-compat and ceph-devel-compat
* Fri Oct 10 2014 Boris Ranto <branto@redhat.com> - 1:0.80.6-1
- Rebase to 0.80.6
- Split ceph-devel and python-ceph packages
* Tue Sep 9 2014 Dan Horák <dan[at]danny.cz> - 1:0.80.5-10 * Tue Sep 9 2014 Dan Horák <dan[at]danny.cz> - 1:0.80.5-10
- update Requires for s390(x) - update Requires for s390(x)

View File

@ -1 +1 @@
c57f6887f6097f95ad2c3b169a94f811 ceph-0.80.5.tar.bz2 1ce61562fa67f6e694f66f53afd94452 ceph-0.80.6.tar.bz2