diff --git a/ceph.spec b/ceph.spec index 04763cc..022bd64 100644 --- a/ceph.spec +++ b/ceph.spec @@ -2,7 +2,7 @@ # # spec file for package ceph # -# Copyright (C) 2004-2017 The Ceph Project Developers. See COPYING file +# Copyright (C) 2004-2019 The Ceph Project Developers. See COPYING file # at the top-level directory of this distribution and at # https://github.com/ceph/ceph/blob/master/COPYING # @@ -14,6 +14,7 @@ # # Please submit bugfixes or comments via http://tracker.ceph.com/ # + ################################################################################# # conditional build section # @@ -52,19 +53,18 @@ %global _fillupdir /var/adm/fillup-templates %endif %if 0%{?is_opensuse} -%bcond_without lttng %bcond_without libradosstriper %bcond_without ocf %else %bcond_with libradosstriper %bcond_with ocf -%ifarch x86_64 aarch64 +%endif +%ifarch x86_64 aarch64 ppc64le %bcond_without lttng %else %bcond_with lttng %endif %endif -%endif %bcond_with seastar %if 0%{?fedora} >= 29 || 0%{?suse_version} >= 1500 || 0%{?rhel} >= 8 # distros that need a py3 Ceph build @@ -108,7 +108,7 @@ # main package definition ################################################################################# Name: ceph -Version: 14.2.8 +Version: 14.2.9 Release: 1%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 @@ -131,6 +131,10 @@ Patch004: 0004-src-librbd-api-PoolMetadata.h.patch Patch005: 0005-cmake-modules-CheckCxxAtomic.cmake.patch # ceph ≥ 14.0.1 does not support 32-bit architectures, bugs #1727788, #1727787 ExcludeArch: i686 armv7hl +%if 0%{?suse_version} +# _insert_obs_source_lines_here +ExclusiveArch: x86_64 aarch64 ppc64le s390x +%endif ################################################################################# # dependencies that apply across all distro families ################################################################################# @@ -159,7 +163,7 @@ BuildRequires: fuse-devel %if 0%{?rhel} == 7 # devtoolset offers newer make and valgrind-devel, but the old ones are good # enough. -BuildRequires: devtoolset-8-gcc-c++ >= 8.2.1 +BuildRequires: devtoolset-8-gcc-c++ >= 8.2.1 %else BuildRequires: gcc-c++ %endif @@ -205,10 +209,12 @@ BuildRequires: xfsprogs BuildRequires: xfsprogs-devel BuildRequires: xmlstarlet BuildRequires: yasm +%if 0%{with amqp_endpoint} BuildRequires: librabbitmq-devel +%endif %if 0%{with make_check} BuildRequires: jq -BuildRequires: libuuid-devel +BuildRequires: libuuid-devel BuildRequires: python%{_python_buildid}-bcrypt BuildRequires: python%{_python_buildid}-coverage BuildRequires: python%{_python_buildid}-nose @@ -217,7 +223,11 @@ BuildRequires: python%{_python_buildid}-requests BuildRequires: python%{_python_buildid}-six BuildRequires: python%{_python_buildid}-tox BuildRequires: python%{_python_buildid}-virtualenv +%if 0%{?rhel} == 7 +BuildRequires: pyOpenSSL%{_python_buildid} +%else BuildRequires: python%{_python_buildid}-pyOpenSSL +%endif BuildRequires: socat %endif %if 0%{with seastar} @@ -271,6 +281,9 @@ BuildRequires: openldap-devel BuildRequires: openssl-devel BuildRequires: CUnit-devel BuildRequires: redhat-lsb-core +%if 0%{with python2} +BuildRequires: python2-Cython +%endif BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-setuptools %if 0%{?rhel} @@ -297,7 +310,7 @@ BuildRequires: python%{_python_buildid}-PyJWT BuildRequires: python%{_python_buildid}-Routes BuildRequires: python%{_python_buildid}-Werkzeug BuildRequires: python%{_python_buildid}-numpy-devel -BuildRequires: rpmbuild +BuildRequires: rpm-build BuildRequires: xmlsec1-devel %endif %endif @@ -448,8 +461,6 @@ Requires: python%{_python_buildid}-six %if 0%{?fedora} || 0%{?rhel} Requires: python%{_python_buildid}-cherrypy Requires: python%{_python_buildid}-werkzeug -Requires: python%{_python_buildid}-grpcio -Requires: python%{_python_buildid}-protobuf %endif %if 0%{?suse_version} Requires: python%{_python_buildid}-CherryPy @@ -462,6 +473,11 @@ Recommends: ceph-mgr-rook = %{_epoch_prefix}%{version}-%{release} Recommends: ceph-mgr-k8sevents = %{_epoch_prefix}%{version}-%{release} Recommends: ceph-mgr-ssh = %{_epoch_prefix}%{version}-%{release} %endif +%if 0%{?rhel} == 7 +Requires: pyOpenSSL +%else +Requires: python%{_python_buildid}-pyOpenSSL +%endif %description mgr ceph-mgr enables python modules that provide services (such as the REST module derived from Calamari) and expose CLI hooks. ceph-mgr gathers @@ -506,8 +522,18 @@ BuildArch: noarch Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} +%if 0%{?fedora} || 0%{?rhel} > 7 || 0%{?suse_version} Requires: python%{_python_buildid}-numpy -Requires: python%{_python_buildid}-scipy +%if 0%{without python2} +Requires: python3-scipy +%else +Requires: python2-scipy +%endif +%endif +%if 0%{?rhel} == 7 +Requires: numpy +Requires: scipy +%endif %description mgr-diskprediction-local ceph-mgr-diskprediction-local is a ceph-mgr plugin that tries to predict disk failures using local algorithms and machine-learning databases. @@ -530,18 +556,19 @@ Summary: ceph-mgr rook plugin Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} +Requires: python%{_python_buildid}-kubernetes %description mgr-rook ceph-mgr-rook is a ceph-mgr plugin for orchestration functions using a Rook backend. %package mgr-k8sevents -BuildArch: noarch -Summary: Ceph Manager plugin to orchestrate ceph-events to kubernetes' events API +BuildArch: noarch +Summary: Ceph Manager plugin to orchestrate ceph-events to kubernetes' events API %if 0%{?suse_version} -Group: System/Filesystems +Group: System/Filesystems %endif -Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-kubernetes +Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} +Requires: python%{_python_buildid}-kubernetes %description mgr-k8sevents ceph-mgr-k8sevents is a ceph-mgr plugin that sends every ceph-events to kubernetes' events API @@ -553,7 +580,7 @@ BuildArch: noarch Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} -Requires: python3-remoto +Requires: python%{_python_buildid}-remoto %description mgr-ssh ceph-mgr-ssh is a ceph-mgr module for orchestration functions using direct SSH connections for management operations. @@ -643,7 +670,7 @@ Provides: ceph-test:/usr/bin/ceph-osdomap-tool Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} Requires: lvm2 Requires: sudo -Requires: libstoragemgmt +Requires: libstoragemgmt %description osd ceph-osd is the object storage daemon for the Ceph distributed file system. It is responsible for storing objects on a local file system @@ -720,11 +747,6 @@ Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} Requires: python-rados = %{_epoch_prefix}%{version}-%{release} %{?python_provide:%python_provide python-rgw} Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} -Provides: python3-rgw = %{_epoch_prefix}%{version}-%{release} -%if 0%{without python2} -Provides: python-rgw = %{_epoch_prefix}%{version}-%{release} -Obsoletes: python-rgw < %{_epoch_prefix}%{version}-%{release} -%endif %description -n python-rgw This package contains Python 2 libraries for interacting with Cephs RADOS gateway. @@ -770,7 +792,7 @@ Requires: librados2 = %{_epoch_prefix}%{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-rados} %if 0%{without python2} Provides: python-rados = %{_epoch_prefix}%{version}-%{release} -Obsoletes: python-rados < %{_epoch_prefix}%{version}-%{release} +Obsoletes: python-rados < %{_epoch_prefix}%{version}-%{release} %endif %description -n python%{python3_pkgversion}-rados This package contains Python 3 libraries for interacting with Cephs RADOS @@ -860,6 +882,7 @@ Group: Development/Libraries/Python Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-rbd} +Provides: python3-rbd = %{_epoch_prefix}%{version}-%{release} %if 0%{without python2} Provides: python-rbd = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-rbd < %{_epoch_prefix}%{version}-%{release} @@ -873,10 +896,10 @@ Summary: Ceph distributed file system client library %if 0%{?suse_version} Group: System/Libraries %endif -Obsoletes: libcephfs1 < %{_epoch_prefix}14.0.0-1 +Obsoletes: libcephfs1 < %{_epoch_prefix}%{version}-%{release} %if 0%{?rhel} || 0%{?fedora} Obsoletes: ceph-libs < %{_epoch_prefix}%{version}-%{release} -Obsoletes: ceph-libcephfs < %{_epoch_prefix}14.0.0-1 +Obsoletes: ceph-libcephfs < %{_epoch_prefix}%{version}-%{release} %endif %description -n libcephfs2 Ceph is a distributed network file system designed to provide excellent @@ -1157,11 +1180,14 @@ cd build %{cmake} .. \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DBUILD_CONFIG=rpmbuild \ + -DCMAKE_INSTALL_PREFIX=%{_prefix} \ + -DCMAKE_INSTALL_LIBDIR=%{_libdir} \ -DCMAKE_INSTALL_LIBEXECDIR=%{_libexecdir} \ -DCMAKE_INSTALL_LOCALSTATEDIR=%{_localstatedir} \ -DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} \ -DCMAKE_INSTALL_MANDIR=%{_mandir} \ -DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \ + -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \ -DWITH_MANPAGE=ON \ -DWITH_PYTHON3=%{python3_version} \ -DWITH_MGR_DASHBOARD_FRONTEND=OFF \ @@ -1171,9 +1197,6 @@ cd build -DWITH_PYTHON2=OFF \ -DMGR_PYTHON_VERSION=3 \ %endif -%if 0%{?rhel} && ! 0%{?centos} - -DWITH_SUBMAN=ON \ -%endif %if 0%{without ceph_test_package} -DWITH_TESTS=OFF \ %endif @@ -1288,6 +1311,7 @@ install -m 644 -D monitoring/prometheus/alerts/ceph_default_alerts.yml %{buildro # hardlink duplicate files under /usr to save space %fdupes %{buildroot}%{_prefix} %endif + %if 0%{?rhel} == 8 %py_byte_compile %{__python3} %{buildroot}%{python3_sitelib} %endif @@ -1382,7 +1406,6 @@ fi %postun base /sbin/ldconfig -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph.target @@ -1390,7 +1413,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -1523,7 +1546,6 @@ fi %endif %postun mds -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-mds@\*.service ceph-mds.target @@ -1531,7 +1553,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-mds@\*.service ceph-mds.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -1599,7 +1621,6 @@ fi %endif %postun mgr -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-mgr@\*.service ceph-mgr.target @@ -1607,7 +1628,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-mgr@\*.service ceph-mgr.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -1727,7 +1748,6 @@ fi %endif %postun mon -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-mon@\*.service ceph-mon.target @@ -1735,7 +1755,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-mon@\*.service ceph-mon.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -1786,7 +1806,6 @@ fi %endif %postun -n rbd-mirror -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target @@ -1794,7 +1813,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -1842,7 +1861,6 @@ fi %endif %postun radosgw -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-radosgw@\*.service ceph-radosgw.target @@ -1850,7 +1868,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-radosgw@\*.service ceph-radosgw.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -1910,7 +1928,6 @@ fi %endif %postun osd -test -n "$FIRST_ARG" || FIRST_ARG=$1 %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target @@ -1918,7 +1935,7 @@ DISABLE_RESTART_ON_UPDATE="yes" %if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target %endif -if [ $FIRST_ARG -ge 1 ] ; then +if [ $1 -ge 1 ] ; then # Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to # "yes". In any case: if units are not running, do not touch them. SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph @@ -2253,9 +2270,9 @@ exit 0 %files grafana-dashboards %if 0%{?suse_version} -%attr(0750,root,root) %dir %{_sysconfdir}/grafana -%attr(0750,root,root) %dir %{_sysconfdir}/grafana/dashboards -%attr(0750,root,root) %dir %{_sysconfdir}/grafana/dashboards/ceph-dashboard +%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 %else %attr(0755,root,root) %dir %{_sysconfdir}/grafana/dashboards/ceph-dashboard %endif @@ -2271,6 +2288,9 @@ exit 0 %endif %changelog +* Tue Apr 21 2020 Kaleb S. KEITHLEY - 2:14.2.9-1 +- ceph 14.2.9 GA, resync w/ upstream ceph.spec(.in) + * Tue Mar 3 2020 Kaleb S. KEITHLEY - 2:14.2.8-1 - ceph 14.2.8 GA diff --git a/sources b/sources index eb20e86..a4e579e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ceph-14.2.8.tar.gz) = 38b0c6df58579377528c8f8e06d0cbc40f471f6eb2fb4a05b395f6fddbd3f2117674545b2147d8730973b01967ddcd4322a769ba03f9c625417ed35cc39f195a +SHA512 (ceph-14.2.9.tar.gz) = 0a26372d0037c32fe1d24be880e272fcce5089b02adfb0e791e0406155f6e66c913fa43762028f49c1fa3f30c6c8d819c521dd11702a37cc7040dfd3097c068e