%if %{with selinux}
# get selinux policy version
-%{!?_selinux_policy_version: %global _selinux_policy_version %(sed -e 's,.*selinux-policy-\\([^/]*\\)/.*,\\1,' /usr/share/selinux/devel/policyhelp 2>/dev/null || echo 0.0.0)}
+%{!?_selinux_policy_version: %global _selinux_policy_version 0.0.0}
%endif
%{!?_udevrulesdir: %global _udevrulesdir /lib/udev/rules.d}
# main package definition
#################################################################################
Name: ceph
-Version: 12.2.3
+Version: 12.2.10
Release: 0%{?dist}
%if 0%{?fedora} || 0%{?rhel}
Epoch: 2
%global _epoch_prefix %{?epoch:%{epoch}:}
Summary: User space components of the Ceph file system
-License: LGPL-2.1 and CC-BY-SA-1.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and MIT
+License: LGPL-2.1 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and MIT
%if 0%{?suse_version}
Group: System/Filesystems
%endif
URL: http://ceph.com/
-Source0: http://ceph.com/download/ceph-12.2.3.tar.bz2
+Source0: http://ceph.com/download/ceph-12.2.10.tar.bz2
%if 0%{?suse_version}
%if 0%{?is_opensuse}
ExclusiveArch: x86_64 aarch64 ppc64 ppc64le
%if 0%{with selinux}
BuildRequires: checkpolicy
BuildRequires: selinux-policy-devel
-BuildRequires: /usr/share/selinux/devel/policyhelp
%endif
%if 0%{with make_check}
%if 0%{?fedora} || 0%{?rhel}
BuildRequires: python-Werkzeug
BuildRequires: python-numpy-devel
%endif
+BuildRequires: python-coverage
BuildRequires: python-pecan
BuildRequires: socat
%endif
BuildRequires: gcc-c++
BuildRequires: gdbm
%if 0%{with tcmalloc}
+%if 0%{?fedora} || 0%{?rhel}
+BuildRequires: gperftools-devel >= 2.6.1
+%endif
+%if 0%{?suse_version}
BuildRequires: gperftools-devel >= 2.4
%endif
+%endif
BuildRequires: jq
BuildRequires: leveldb-devel > 1.2
BuildRequires: libaio-devel
BuildRequires: python-devel
BuildRequires: python-nose
BuildRequires: python-requests
+BuildRequires: python-six
BuildRequires: python-virtualenv
BuildRequires: snappy-devel
BuildRequires: udev
Requires: python-setuptools
Requires: grep
Requires: xfsprogs
+Requires: e2fsprogs
Requires: logrotate
+Requires: parted
Requires: util-linux
Requires: cryptsetup
Requires: findutils
Requires: psmisc
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: ntp-daemon
+Requires: gptfdisk
%endif
%description base
Base is the package that includes all the files shared amongst ceph servers
Group: System/Filesystems
%endif
Requires: ceph-base = %{_epoch_prefix}%{version}-%{release}
+Requires: python-six
%if 0%{?fedora} || 0%{?rhel}
Requires: python-cherrypy
Requires: python-jinja2
Group: System/Filesystems
%endif
Requires: ceph-base = %{_epoch_prefix}%{version}-%{release}
-# for sgdisk, used by ceph-disk
-%if 0%{?fedora} || 0%{?rhel}
-Requires: gdisk
-%endif
-%if 0%{?suse_version}
-Requires: gptfdisk
-%endif
-Requires: parted
Requires: lvm2
%description osd
ceph-osd is the object storage daemon for the Ceph distributed file
# common
#################################################################################
%prep
-%autosetup -p1 -n ceph-12.2.3
+%autosetup -p1 -n ceph-12.2.10
%build
%if 0%{with cephfs_java}
-DCMAKE_INSTALL_MANDIR=%{_mandir} \
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \
-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
- -DWITH_EMBEDDED=OFF \
-DWITH_MANPAGE=ON \
-DWITH_PYTHON3=ON \
-DWITH_SYSTEMD=ON \
%else
/usr/lib/systemd/systemd-sysctl %{_sysctldir}/90-ceph-osd.conf > /dev/null 2>&1 || :
%endif
+# work around https://tracker.ceph.com/issues/24903
+chown -f -h ceph:ceph /var/lib/ceph/osd/*/block* 2>&1 > /dev/null || :
%preun osd
%if 0%{?suse_version}