diff --git a/ceph-14.0.1-1545-g01bead277f.tar.bz2 b/ceph-14.0.1-1545-g01bead277f.tar.bz2 new file mode 100644 index 0000000..b567202 --- /dev/null +++ b/ceph-14.0.1-1545-g01bead277f.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fcd0142c5d733ffe9710d63456346dc54360fcdf27587efb6d6ae21ec7e24b9 +size 95394334 diff --git a/ceph-14.0.1-268-g3a87f182b7.tar.bz2 b/ceph-14.0.1-268-g3a87f182b7.tar.bz2 deleted file mode 100644 index ff1c809..0000000 --- a/ceph-14.0.1-268-g3a87f182b7.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:57db22afac18031679afa89d029db6a4d89f9683952013d8d79c3b601f4fd64b -size 89869977 diff --git a/ceph-test.changes b/ceph-test.changes index a746e21..2724a27 100644 --- a/ceph-test.changes +++ b/ceph-test.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Fri Nov 30 19:09:43 UTC 2018 - ncutler@suse.com + +- Update to v14.0.1-1545-g01bead277f: + + based on upstream master 4d3cc9f9092d8a86d128192a811733ce23ad070a + + plus two spec file fixes: + * make ceph-grafana-dashboards own its directories + http://tracker.ceph.com/issues/37485 + * fix cython package version to less than 0.29 + http://tracker.ceph.com/issues/37472 + ------------------------------------------------------------------- Wed Nov 28 15:50:12 UTC 2018 - ncutler@suse.com diff --git a/ceph-test.spec b/ceph-test.spec index eca46aa..9f6ee68 100644 --- a/ceph-test.spec +++ b/ceph-test.spec @@ -13,6 +13,13 @@ # # Please submit bugfixes or comments via http://tracker.ceph.com/ # + +################################################################################# +# conditional build section +# +# please read http://rpm.org/user_doc/conditional_builds.html for explanation of +# bcond syntax! +################################################################################# %bcond_without ocf %bcond_with make_check %ifarch s390 s390x @@ -49,11 +56,11 @@ %endif %endif %bcond_with seastar -%if 0%{?fedora} || 0%{?suse_version} >= 1500 -# distros where py2 is _optional_ +%if 0%{?fedora} >= 29 || 0%{?suse_version} >= 1500 || 0%{?rhel} >= 8 +# distros that need a py3 Ceph build %bcond_with python2 %else -# distros where py2 is _mandatory_ +# distros that need a py2 Ceph build %bcond_without python2 %endif %if 0%{?fedora} || 0%{?suse_version} >= 1500 @@ -89,7 +96,7 @@ # main package definition ################################################################################# Name: ceph-test -Version: 14.0.1.268+g3a87f182b7 +Version: 14.0.1.1545+g01bead277f Release: 0%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 @@ -105,7 +112,7 @@ License: LGPL-2.1 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and Group: System/Filesystems %endif URL: http://ceph.com/ -Source0: %{?_remote_tarball_prefix}ceph-14.0.1-268-g3a87f182b7.tar.bz2 +Source0: %{?_remote_tarball_prefix}ceph-14.0.1-1545-g01bead277f.tar.bz2 %if 0%{?suse_version} Source96: checkin.sh Source97: README-checkin.txt @@ -230,7 +237,7 @@ BuildRequires: lsb-release BuildRequires: openldap2-devel BuildRequires: cunit-devel BuildRequires: python%{_python_buildid}-base -BuildRequires: python%{_python_buildid}-Cython +BuildRequires: python%{_python_buildid}-Cython < 0.29 BuildRequires: python%{_python_buildid}-PrettyTable BuildRequires: python%{_python_buildid}-Sphinx BuildRequires: rdma-core-devel @@ -248,7 +255,7 @@ BuildRequires: openldap-devel BuildRequires: openssl-devel BuildRequires: CUnit-devel BuildRequires: redhat-lsb-core -BuildRequires: Cython +BuildRequires: Cython < 0.29 BuildRequires: python%{_python_buildid}-prettytable BuildRequires: python%{_python_buildid}-sphinx BuildRequires: lz4-devel >= 1.7 @@ -257,22 +264,24 @@ BuildRequires: lz4-devel >= 1.7 %if 0%{?rhel} BuildRequires: python34-devel BuildRequires: python34-setuptools -BuildRequires: python34-Cython +BuildRequires: python34-Cython < 0.29 %else BuildRequires: python3-devel BuildRequires: python3-setuptools -BuildRequires: python3-Cython +BuildRequires: python3-Cython < 0.29 %endif # distro-conditional make check dependencies %if 0%{with make_check} %if 0%{?fedora} || 0%{?rhel} BuildRequires: python%{_python_buildid}-cherrypy +BuildRequires: python%{_python_buildid}-jwt BuildRequires: python%{_python_buildid}-routes BuildRequires: python%{_python_buildid}-werkzeug BuildRequires: python%{_python_buildid}-bcrypt %endif %if 0%{?suse_version} BuildRequires: python%{_python_buildid}-CherryPy +BuildRequires: python%{_python_buildid}-PyJWT BuildRequires: python%{_python_buildid}-Routes BuildRequires: python%{_python_buildid}-Werkzeug BuildRequires: python%{_python_buildid}-numpy-devel @@ -323,6 +332,8 @@ This package contains Ceph benchmarks and test tools. %if 0%{with selinux} %endif %if 0%{?fedora} || 0%{?rhel} +%if 0%{with tcmalloc} +%endif %endif %if 0%{?suse_version} %endif @@ -376,6 +387,10 @@ This package contains Ceph benchmarks and test tools. %endif %if 0%{?suse_version} %endif +%if 0%{?suse_version} +%endif +%if 0%{?suse_version} +%endif %if 0%{with python2} %if 0%{?suse_version} %endif @@ -450,8 +465,10 @@ This package contains Ceph benchmarks and test tools. %if 0%{?suse_version} %endif %endif +%if 0%{?suse_version} +%endif %prep -%autosetup -p1 -n ceph-14.0.1-268-g3a87f182b7 +%autosetup -p1 -n ceph-14.0.1-1545-g01bead277f %build @@ -562,7 +579,8 @@ ${CMAKE} .. \ %else -DWITH_LIBRADOSSTRIPER=OFF \ %endif - -DBOOST_J=$CEPH_SMP_NCPUS + -DBOOST_J=$CEPH_SMP_NCPUS \ + -DWITH_GRAFANA=ON make "$CEPH_MFLAGS_JOBS" @@ -627,6 +645,7 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mds mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-rgw mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mgr mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-rbd +mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-rbd-mirror %if 0%{?suse_version} # create __pycache__ directories and their contents @@ -672,7 +691,7 @@ rm -rf %{buildroot}%{_mandir}/man8/monmaptool.8* rm -rf %{buildroot}%{_mandir}/man8/ceph-kvstore-tool.8* rm -rf %{buildroot}%doc rm -rf %{buildroot}%{_docdir}/ceph/sample.ceph.conf -rm -rf %{buildroot}%doc +rm -rf %{buildroot}%license rm -rf %{buildroot}%{_docdir}/ceph/COPYING rm -rf %{buildroot}%{_bindir}/ceph rm -rf %{buildroot}%{_bindir}/ceph-authtool @@ -769,21 +788,23 @@ rm -rf %{buildroot}%{_sysctldir}/90-ceph-osd.conf rm -rf %{buildroot}%{_sysconfdir}/sudoers.d/ceph-osd-smartctl rm -rf %{buildroot}%{_prefix}/lib/ocf/resource.d/ceph/rbd rm -rf %{buildroot}%{_libdir}/librados.so.* -rm -rf %{buildroot}%{_libdir}/ceph/libceph-common.so* +rm -rf %{buildroot}%{_libdir}/ceph/libceph-common.so.* rm -rf %{buildroot}%{_libdir}/librados_tp.so.* rm -rf %{buildroot}%{_includedir}/rados/librados.h -rm -rf %{buildroot}%{_includedir}/rados/librados.hpp -rm -rf %{buildroot}%{_includedir}/rados/buffer.h -rm -rf %{buildroot}%{_includedir}/rados/buffer_fwd.h -rm -rf %{buildroot}%{_includedir}/rados/inline_memory.h -rm -rf %{buildroot}%{_includedir}/rados/page.h -rm -rf %{buildroot}%{_includedir}/rados/crc32c.h rm -rf %{buildroot}%{_includedir}/rados/rados_types.h -rm -rf %{buildroot}%{_includedir}/rados/rados_types.hpp rm -rf %{buildroot}%{_libdir}/librados.so rm -rf %{buildroot}%{_libdir}/librados_tp.so rm -rf %{buildroot}%{_bindir}/librados-config rm -rf %{buildroot}%{_mandir}/man8/librados-config.8* +rm -rf %{buildroot}%{_libdir}/libradospp.so.* +rm -rf %{buildroot}%{_includedir}/rados/buffer.h +rm -rf %{buildroot}%{_includedir}/rados/buffer_fwd.h +rm -rf %{buildroot}%{_includedir}/rados/crc32c.h +rm -rf %{buildroot}%{_includedir}/rados/inline_memory.h +rm -rf %{buildroot}%{_includedir}/rados/librados.hpp +rm -rf %{buildroot}%{_includedir}/rados/page.h +rm -rf %{buildroot}%{_includedir}/rados/rados_types.hpp +rm -rf %{buildroot}%{_libdir}/libradospp.so rm -rf %{buildroot}%{python_sitearch}/rados.so rm -rf %{buildroot}%{python_sitearch}/rados-*.egg-info rm -rf %{buildroot}%{python3_sitearch}/rados.cpython*.so @@ -843,6 +864,11 @@ rm -rf %{buildroot}%{_includedir}/rados/objclass.h rm -rf %{buildroot}%{_datadir}/selinux/packages/ceph.pp rm -rf %{buildroot}%{_datadir}/selinux/devel/include/contrib/ceph.if rm -rf %{buildroot}%{_mandir}/man8/ceph_selinux.8* +rm -rf %{buildroot}%{_sysconfdir}/grafana/dashboards/ceph-dashboard/* +rm -rf %{buildroot}%doc +rm -rf %{buildroot}monitoring/grafana/dashboards/README +rm -rf %{buildroot}%doc +rm -rf %{buildroot}monitoring/grafana/README.md dirs=`find %{buildroot} -type d -empty` while [[ -n $dirs ]]; do diff --git a/ceph.changes b/ceph.changes index a746e21..2724a27 100644 --- a/ceph.changes +++ b/ceph.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Fri Nov 30 19:09:43 UTC 2018 - ncutler@suse.com + +- Update to v14.0.1-1545-g01bead277f: + + based on upstream master 4d3cc9f9092d8a86d128192a811733ce23ad070a + + plus two spec file fixes: + * make ceph-grafana-dashboards own its directories + http://tracker.ceph.com/issues/37485 + * fix cython package version to less than 0.29 + http://tracker.ceph.com/issues/37472 + ------------------------------------------------------------------- Wed Nov 28 15:50:12 UTC 2018 - ncutler@suse.com diff --git a/ceph.spec b/ceph.spec index 6ffc9c6..2d916e8 100644 --- a/ceph.spec +++ b/ceph.spec @@ -13,6 +13,13 @@ # # Please submit bugfixes or comments via http://tracker.ceph.com/ # + +################################################################################# +# conditional build section +# +# please read http://rpm.org/user_doc/conditional_builds.html for explanation of +# bcond syntax! +################################################################################# %bcond_without ocf %bcond_with make_check %ifarch s390 s390x @@ -49,11 +56,11 @@ %endif %endif %bcond_with seastar -%if 0%{?fedora} || 0%{?suse_version} >= 1500 -# distros where py2 is _optional_ +%if 0%{?fedora} >= 29 || 0%{?suse_version} >= 1500 || 0%{?rhel} >= 8 +# distros that need a py3 Ceph build %bcond_with python2 %else -# distros where py2 is _mandatory_ +# distros that need a py2 Ceph build %bcond_without python2 %endif %if 0%{?fedora} || 0%{?suse_version} >= 1500 @@ -89,7 +96,7 @@ # main package definition ################################################################################# Name: ceph -Version: 14.0.1.268+g3a87f182b7 +Version: 14.0.1.1545+g01bead277f Release: 0%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 @@ -105,7 +112,7 @@ License: LGPL-2.1 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and Group: System/Filesystems %endif URL: http://ceph.com/ -Source0: %{?_remote_tarball_prefix}ceph-14.0.1-268-g3a87f182b7.tar.bz2 +Source0: %{?_remote_tarball_prefix}ceph-14.0.1-1545-g01bead277f.tar.bz2 %if 0%{?suse_version} # _insert_obs_source_lines_here %if 0%{?is_opensuse} @@ -222,7 +229,7 @@ BuildRequires: lsb-release BuildRequires: openldap2-devel BuildRequires: cunit-devel BuildRequires: python%{_python_buildid}-base -BuildRequires: python%{_python_buildid}-Cython +BuildRequires: python%{_python_buildid}-Cython < 0.29 BuildRequires: python%{_python_buildid}-PrettyTable BuildRequires: python%{_python_buildid}-Sphinx BuildRequires: rdma-core-devel @@ -240,7 +247,7 @@ BuildRequires: openldap-devel BuildRequires: openssl-devel BuildRequires: CUnit-devel BuildRequires: redhat-lsb-core -BuildRequires: Cython +BuildRequires: Cython < 0.29 BuildRequires: python%{_python_buildid}-prettytable BuildRequires: python%{_python_buildid}-sphinx BuildRequires: lz4-devel >= 1.7 @@ -249,22 +256,24 @@ BuildRequires: lz4-devel >= 1.7 %if 0%{?rhel} BuildRequires: python34-devel BuildRequires: python34-setuptools -BuildRequires: python34-Cython +BuildRequires: python34-Cython < 0.29 %else BuildRequires: python3-devel BuildRequires: python3-setuptools -BuildRequires: python3-Cython +BuildRequires: python3-Cython < 0.29 %endif # distro-conditional make check dependencies %if 0%{with make_check} %if 0%{?fedora} || 0%{?rhel} BuildRequires: python%{_python_buildid}-cherrypy +BuildRequires: python%{_python_buildid}-jwt BuildRequires: python%{_python_buildid}-routes BuildRequires: python%{_python_buildid}-werkzeug BuildRequires: python%{_python_buildid}-bcrypt %endif %if 0%{?suse_version} BuildRequires: python%{_python_buildid}-CherryPy +BuildRequires: python%{_python_buildid}-PyJWT BuildRequires: python%{_python_buildid}-Routes BuildRequires: python%{_python_buildid}-Werkzeug BuildRequires: python%{_python_buildid}-numpy-devel @@ -320,7 +329,8 @@ Group: System/Filesystems Provides: ceph-test:/usr/bin/ceph-kvstore-tool Requires: ceph-common = %{_epoch_prefix}%{version}-%{release} Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} %if 0%{with selinux} @@ -339,7 +349,11 @@ Requires: util-linux Requires: xfsprogs Requires: which %if 0%{?fedora} || 0%{?rhel} -Requires: gdisk +# The following is necessary due to tracker 36508 and can be removed once the +# associated upstream bugs are resolved. +%if 0%{with tcmalloc} +Requires: gperftools-libs >= 2.6.1 +%endif %endif %if 0%{?suse_version} Recommends: chrony @@ -356,7 +370,8 @@ Summary: Ceph Common Group: System/Filesystems %endif Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} Requires: python%{_python_buildid}-rados = %{_epoch_prefix}%{version}-%{release} Requires: python%{_python_buildid}-rbd = %{_epoch_prefix}%{version}-%{release} @@ -422,6 +437,7 @@ Requires: python%{_python_buildid}-pecan Requires: python%{_python_buildid}-six %if 0%{?fedora} || 0%{?rhel} Requires: python%{_python_buildid}-cherrypy +Requires: python%{_python_buildid}-jwt Requires: python%{_python_buildid}-jinja2 Requires: python%{_python_buildid}-routes Requires: python%{_python_buildid}-werkzeug @@ -430,6 +446,7 @@ Requires: python%{_python_buildid}-bcrypt %endif %if 0%{?suse_version} Requires: python%{_python_buildid}-CherryPy +Requires: python%{_python_buildid}-PyJWT Requires: python%{_python_buildid}-Routes Requires: python%{_python_buildid}-Jinja2 Requires: python%{_python_buildid}-Werkzeug @@ -457,7 +474,7 @@ Summary: Ceph fuse-based client %if 0%{?suse_version} Group: System/Filesystems %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} %description -n rbd-fuse FUSE based client to map Ceph rbd images to files @@ -468,7 +485,7 @@ Summary: Ceph daemon for mirroring RBD images Group: System/Filesystems %endif Requires: ceph-common = %{_epoch_prefix}%{version}-%{release} -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} %description -n rbd-mirror Daemon for mirroring RBD images between Ceph clusters, streaming changes asynchronously. @@ -478,7 +495,7 @@ Summary: Ceph RBD client base on NBD %if 0%{?suse_version} Group: System/Filesystems %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} %description -n rbd-nbd NBD based client to map Ceph rbd images to local device @@ -492,7 +509,8 @@ Requires: ceph-common = %{_epoch_prefix}%{version}-%{release} %if 0%{with selinux} Requires: ceph-selinux = %{_epoch_prefix}%{version}-%{release} %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} %if 0%{?rhel} || 0%{?fedora} Requires: mailcap @@ -531,7 +549,7 @@ ceph-osd is the object storage daemon for the Ceph distributed file system. It is responsible for storing objects on a local file system and providing access to them over the network. -%package -n librados2 +%package -n librados3 Summary: RADOS distributed object store client library %if 0%{?suse_version} Group: System/Libraries @@ -539,7 +557,7 @@ Group: System/Libraries %if 0%{?rhel} || 0%{?fedora} Obsoletes: ceph-libs < %{_epoch_prefix}%{version}-%{release} %endif -%description -n librados2 +%description -n librados3 RADOS is a reliable, autonomic distributed object storage cluster developed as part of the Ceph distributed storage system. This is a shared library allowing applications to access the distributed object @@ -550,12 +568,34 @@ Summary: RADOS headers %if 0%{?suse_version} Group: Development/Libraries/C and C++ %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} -Provides: librados2-devel = %{_epoch_prefix}%{version}-%{release} -Obsoletes: librados2-devel < %{_epoch_prefix}%{version}-%{release} +Provides: librados3-devel = %{_epoch_prefix}%{version}-%{release} +Obsoletes: librados3-devel < %{_epoch_prefix}%{version}-%{release} %description -n librados-devel -This package contains libraries and headers needed to develop programs +This package contains C libraries and headers needed to develop programs +that use RADOS object store. + +%package -n libradospp1 +Summary: RADOS distributed object store client C++ library +%if 0%{?suse_version} +Group: System/Libraries +%endif +%description -n libradospp1 +RADOS is a reliable, autonomic distributed object storage cluster +developed as part of the Ceph distributed storage system. This is a +shared library allowing C++ applications to access the distributed object +store using a simple file-like interface. + +%package -n libradospp-devel +Summary: RADOS headers +%if 0%{?suse_version} +Group: Development/Libraries/C and C++ +%endif +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} +Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} +%description -n libradospp-devel +This package contains C++ libraries and headers needed to develop programs that use RADOS object store. %package -n librgw2 @@ -563,7 +603,7 @@ Summary: RADOS gateway client library %if 0%{?suse_version} Group: System/Libraries %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} %description -n librgw2 This package provides a library implementation of the RADOS gateway (distributed object store with S3 and Swift personalities). @@ -612,7 +652,7 @@ Summary: Python 2 libraries for the RADOS object store %if 0%{?suse_version} Group: Development/Libraries/Python %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} %description -n python-rados This package contains Python 2 libraries for interacting with Cephs RADOS @@ -625,7 +665,7 @@ Summary: Python 3 libraries for the RADOS object store Group: Development/Libraries/Python %endif Requires: python%{python3_pkgversion} -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} %description -n python%{python3_pkgversion}-rados This package contains Python 3 libraries for interacting with Cephs RADOS object store. @@ -636,7 +676,8 @@ Summary: RADOS striping interface %if 0%{?suse_version} Group: System/Libraries %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} %description -n libradosstriper1 Striping interface built on top of the rados library, allowing to stripe bigger objects onto several standard rados objects using @@ -649,6 +690,7 @@ Group: Development/Libraries/C and C++ %endif Requires: libradosstriper1 = %{_epoch_prefix}%{version}-%{release} Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: libradosstriper1-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: libradosstriper1-devel < %{_epoch_prefix}%{version}-%{release} @@ -662,7 +704,8 @@ Summary: RADOS block device client library %if 0%{?suse_version} Group: System/Libraries %endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: librados3 = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1 = %{_epoch_prefix}%{version}-%{release} %if 0%{?suse_version} Requires(post): coreutils %endif @@ -682,6 +725,7 @@ Group: Development/Libraries/C and C++ %endif Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} Requires: librados-devel = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: ceph-devel < %{_epoch_prefix}%{version}-%{release} Provides: librbd1-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: librbd1-devel < %{_epoch_prefix}%{version}-%{release} @@ -867,7 +911,7 @@ Summary: RADOS object class development kit %if 0%{?suse_version} Group: Development/Libraries/C and C++ %endif -Requires: librados2-devel = %{_epoch_prefix}%{version}-%{release} +Requires: libradospp1-devel = %{_epoch_prefix}%{version}-%{release} %description -n rados-objclass-devel This package contains libraries and headers needed to develop RADOS object class plugins. @@ -910,11 +954,24 @@ depending on python-ceph should be fixed to depend on python-rados, python-rbd, python-rgw or python-cephfs instead. %endif +%package grafana-dashboards +Summary: The set of Grafana dashboards for monitoring purposes +BuildArch: noarch +%if 0%{?suse_version} +Group: System/Filesystems +%endif +%description grafana-dashboards +This package provides a set of Grafana dashboards for monitoring of +Ceph clusters. The dashboards require a Prometheus server setup +collecting data from Ceph Manager "prometheus" module and Prometheus +project "node_exporter" module. The dashboards are designed to be +integrated with the Ceph Manager Dashboard web UI. + ################################################################################# # common ################################################################################# %prep -%autosetup -p1 -n ceph-14.0.1-268-g3a87f182b7 +%autosetup -p1 -n ceph-14.0.1-1545-g01bead277f %build @@ -1025,7 +1082,8 @@ ${CMAKE} .. \ %else -DWITH_LIBRADOSSTRIPER=OFF \ %endif - -DBOOST_J=$CEPH_SMP_NCPUS + -DBOOST_J=$CEPH_SMP_NCPUS \ + -DWITH_GRAFANA=ON make "$CEPH_MFLAGS_JOBS" @@ -1090,6 +1148,7 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mds mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-rgw mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mgr mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-rbd +mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-rbd-mirror %if 0%{?suse_version} # create __pycache__ directories and their contents @@ -1170,6 +1229,7 @@ rm -rf %{buildroot} %attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/bootstrap-rgw %attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/bootstrap-mgr %attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/bootstrap-rbd +%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/bootstrap-rbd-mirror %post base /sbin/ldconfig @@ -1216,7 +1276,7 @@ fi %files common %dir %{_docdir}/ceph %doc %{_docdir}/ceph/sample.ceph.conf -%doc %{_docdir}/ceph/COPYING +%license %{_docdir}/ceph/COPYING %{_bindir}/ceph %{_bindir}/ceph-authtool %{_bindir}/ceph-conf @@ -1648,29 +1708,22 @@ fi %endif -%files -n librados2 +%files -n librados3 %{_libdir}/librados.so.* %dir %{_libdir}/ceph -%{_libdir}/ceph/libceph-common.so* +%{_libdir}/ceph/libceph-common.so.* %if %{with lttng} %{_libdir}/librados_tp.so.* %endif -%post -n librados2 -p /sbin/ldconfig +%post -n librados3 -p /sbin/ldconfig -%postun -n librados2 -p /sbin/ldconfig +%postun -n librados3 -p /sbin/ldconfig %files -n librados-devel %dir %{_includedir}/rados %{_includedir}/rados/librados.h -%{_includedir}/rados/librados.hpp -%{_includedir}/rados/buffer.h -%{_includedir}/rados/buffer_fwd.h -%{_includedir}/rados/inline_memory.h -%{_includedir}/rados/page.h -%{_includedir}/rados/crc32c.h %{_includedir}/rados/rados_types.h -%{_includedir}/rados/rados_types.hpp %{_libdir}/librados.so %if %{with lttng} %{_libdir}/librados_tp.so @@ -1678,6 +1731,24 @@ fi %{_bindir}/librados-config %{_mandir}/man8/librados-config.8* +%files -n libradospp1 +%{_libdir}/libradospp.so.* + +%post -n libradospp1 -p /sbin/ldconfig + +%postun -n libradospp1 -p /sbin/ldconfig + +%files -n libradospp-devel +%dir %{_includedir}/rados +%{_includedir}/rados/buffer.h +%{_includedir}/rados/buffer_fwd.h +%{_includedir}/rados/crc32c.h +%{_includedir}/rados/inline_memory.h +%{_includedir}/rados/librados.hpp +%{_includedir}/rados/page.h +%{_includedir}/rados/rados_types.hpp +%{_libdir}/libradospp.so + %if 0%{with python2} %files -n python-rados %{python_sitearch}/rados.so @@ -1948,6 +2019,14 @@ exit 0 # actually build this meta package. %endif +%files grafana-dashboards +%attr(0755,root,root) %dir %{_sysconfdir}/grafana +%attr(0755,root,root) %dir %{_sysconfdir}/grafana/dashboards +%attr(0755,root,root) %dir %{_sysconfdir}/grafana/dashboards/ceph-dashboard +%config %{_sysconfdir}/grafana/dashboards/ceph-dashboard/* +%doc monitoring/grafana/dashboards/README +%doc monitoring/grafana/README.md + %changelog # nospeccleaner