From d8ce392242b1f9218d6617fe797b0adfe41d2938 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Mon, 1 Feb 2021 00:40:07 +0000 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/ceph.git#59dc7d25951ff4b608f639898b9d7149cb3123aa --- 0001-src-common-crc32c_intel_fast.patch | 173 ---------- 0004-src-CMakeLists.txt.patch | 12 + 0005-src-librbd-migration.patch | 78 +++++ ceph.spec | 428 ++++++++++++------------ sources | 2 +- 5 files changed, 311 insertions(+), 382 deletions(-) create mode 100644 0004-src-CMakeLists.txt.patch create mode 100644 0005-src-librbd-migration.patch diff --git a/0001-src-common-crc32c_intel_fast.patch b/0001-src-common-crc32c_intel_fast.patch index 80066b7..b0e718c 100644 --- a/0001-src-common-crc32c_intel_fast.patch +++ b/0001-src-common-crc32c_intel_fast.patch @@ -1,176 +1,3 @@ ---- ceph-15.2.4/src/yasm-wrapper.orig 2020-06-30 11:40:51.000000000 -0400 -+++ ceph-15.2.4/src/yasm-wrapper 2020-07-20 12:21:34.574980869 -0400 -@@ -1,10 +1,11 @@ --#!/bin/sh -e -+#!/bin/sh - - # libtool and yasm do not get along. - # filter out any crap that libtool feeds us that yasm does not understand. - #echo $0: got $* - new="" - touch="" -+object="" - while [ -n "$*" ]; do - case "$1" in - -f ) -@@ -29,6 +30,12 @@ - touch="$1" - shift - ;; -+ -o ) -+ shift -+ object="$1" -+ new="$new -o $1" -+ shift -+ ;; - * ) - new="$new $1" - shift -@@ -36,8 +43,15 @@ - esac - done - --#echo $0: yasm $new --yasm $new -+#echo ${0}: yasm ${new} -+yasm ${new} -+ -+echo ${new} | grep -- "crc32c_intel_fast*asm\.s" -+if [ $? -ne 0 ]; then -+ touch /tmp/${object} -+ ld -r -z ibt -z shstk -z noexecstack -o ${object}.tmp ${object} -+ mv ${object}.tmp ${object} -+fi - - [ -n "$touch" ] && touch $touch - ---- ceph-15.2.2/src/common/crc32c_intel_fast_asm.s.orig 2020-05-26 08:34:32.226201974 -0400 -+++ ceph-15.2.2/src/common/crc32c_intel_fast_asm.s 2020-05-26 17:19:20.327201974 -0400 -@@ -1,5 +1,5 @@ - ; --; Copyright 2012-2013 Intel Corporation All Rights Reserved. -+; Copyright 2012-2015 Intel Corporation All Rights Reserved. - ; All rights reserved. - ; - ; http://opensource.org/licenses/BSD-3-Clause -@@ -59,16 +59,34 @@ - xor rbx, rbx ;; rbx = crc1 = 0; - xor r10, r10 ;; r10 = crc2 = 0; - -+ cmp len, %%bSize*3*2 -+ jbe %%non_prefetch -+ - %assign i 0 - %rep %%bSize/8 - 1 -- crc32 rax, [bufptmp+i + 0*%%bSize] ;; update crc0 -- crc32 rbx, [bufptmp+i + 1*%%bSize] ;; update crc1 -- crc32 r10, [bufptmp+i + 2*%%bSize] ;; update crc2 -+ %if i < %%bSize*3/4 -+ prefetchnta [bufptmp+ %%bSize*3 + i*4] -+ %endif -+ crc32 rax, qword [bufptmp+i + 0*%%bSize] ;; update crc0 -+ crc32 rbx, qword [bufptmp+i + 1*%%bSize] ;; update crc1 -+ crc32 r10, qword [bufptmp+i + 2*%%bSize] ;; update crc2 - %assign i (i+8) - %endrep -- crc32 rax, [bufptmp+i + 0*%%bSize] ;; update crc0 -- crc32 rbx, [bufptmp+i + 1*%%bSize] ;; update crc1 --; SKIP ;crc32 r10, [bufptmp+i + 2*%%bSize] ;; update crc2 -+ jmp %%next %+ %1 -+ -+%%non_prefetch: -+ %assign i 0 -+ %rep %%bSize/8 - 1 -+ crc32 rax, qword [bufptmp+i + 0*%%bSize] ;; update crc0 -+ crc32 rbx, qword [bufptmp+i + 1*%%bSize] ;; update crc1 -+ crc32 r10, qword [bufptmp+i + 2*%%bSize] ;; update crc2 -+ %assign i (i+8) -+ %endrep -+ -+%%next %+ %1: -+ crc32 rax, qword [bufptmp+i + 0*%%bSize] ;; update crc0 -+ crc32 rbx, qword [bufptmp+i + 1*%%bSize] ;; update crc1 -+; SKIP ;crc32 r10, qword [bufptmp+i + 2*%%bSize] ;; update crc2 - - ; merge in crc0 - movzx bufp_dw, al -@@ -180,12 +198,15 @@ - %define crc_init_dw r8d - %endif - -- -+ endbranch - push rdi - push rbx - - mov rax, crc_init ;; rax = crc_init; - -+ cmp len, 8 -+ jb less_than_8 -+ - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - ;; 1) ALIGN: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -@@ -195,9 +216,6 @@ - ;; amount of the address - je proc_block ;; Skip if aligned - -- cmp len, 8 -- jb less_than_8 -- - ;;;; Calculate CRC of unaligned bytes of the buffer (if any) ;;;; - mov rbx, [bufptmp] ;; load a quadword from the buffer - add bufptmp, bufp ;; align buffer pointer for -@@ -233,7 +251,7 @@ - jnc bit7 ;; jump to bit-6 if bit-7 == 0 - %assign i 0 - %rep 16 -- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data -+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data - %assign i (i+8) - %endrep - je do_return ;; return if remaining data is zero -@@ -244,7 +262,7 @@ - jnc bit6 ;; jump to bit-6 if bit-7 == 0 - %assign i 0 - %rep 8 -- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data -+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data - %assign i (i+8) - %endrep - je do_return ;; return if remaining data is zero -@@ -254,7 +272,7 @@ - jnc bit5 ;; jump to bit-5 if bit-6 == 0 - %assign i 0 - %rep 4 -- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data -+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data - %assign i (i+8) - %endrep - je do_return ;; return if remaining data is zero -@@ -264,7 +282,7 @@ - jnc bit4 ;; jump to bit-4 if bit-5 == 0 - %assign i 0 - %rep 2 -- crc32 rax, [bufptmp+i] ;; compute crc32 of 8-byte data -+ crc32 rax, qword [bufptmp+i] ;; compute crc32 of 8-byte data - %assign i (i+8) - %endrep - je do_return ;; return if remaining data is zero -@@ -272,11 +290,11 @@ - bit4: - shl len_b, 1 ;; shift-out MSB (bit-4) - jnc bit3 ;; jump to bit-3 if bit-4 == 0 -- crc32 rax, [bufptmp] ;; compute crc32 of 8-byte data -+ crc32 rax, qword [bufptmp] ;; compute crc32 of 8-byte data - je do_return ;; return if remaining data is zero - add bufptmp, 8 ;; buf +=8; (next 8 bytes) - bit3: -- mov rbx, [bufptmp] ;; load a 8-bytes from the buffer: -+ mov rbx, qword [bufptmp] ;; load a 8-bytes from the buffer: - shl len_b, 1 ;; shift-out MSB (bit-3) - jnc bit2 ;; jump to bit-2 if bit-3 == 0 - crc32 eax, ebx ;; compute crc32 of 4-byte data --- ceph-15.2.2/src/common/crc32c_intel_fast_zero_asm.s.orig 2020-05-26 08:34:32.226201974 -0400 +++ ceph-15.2.2/src/common/crc32c_intel_fast_zero_asm.s 2020-05-26 17:19:32.497201974 -0400 @@ -1,5 +1,5 @@ diff --git a/0004-src-CMakeLists.txt.patch b/0004-src-CMakeLists.txt.patch new file mode 100644 index 0000000..f3f2e36 --- /dev/null +++ b/0004-src-CMakeLists.txt.patch @@ -0,0 +1,12 @@ +--- ceph-16.0.0/src/CMakeLists.txt.orig 2021-01-25 13:45:15.316053258 -0500 ++++ ceph-16.0.0/src/CMakeLists.txt 2021-01-25 13:43:34.418305591 -0500 +@@ -29,7 +29,8 @@ + -D_THREAD_SAFE + -D__STDC_FORMAT_MACROS + -D_FILE_OFFSET_BITS=64 +- -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION) ++ -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION ++ -DBOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT) + if(LINUX) + add_definitions("-D_GNU_SOURCE") + endif() diff --git a/0005-src-librbd-migration.patch b/0005-src-librbd-migration.patch new file mode 100644 index 0000000..3a637e9 --- /dev/null +++ b/0005-src-librbd-migration.patch @@ -0,0 +1,78 @@ +--- ceph-16.1.0/src/librbd/AsioEngine.h.orig 2021-01-27 09:52:12.314415539 -0500 ++++ ceph-16.1.0/src/librbd/AsioEngine.h 2021-01-27 09:55:35.289955105 -0500 +@@ -39,7 +39,8 @@ + inline operator boost::asio::io_context&() { + return m_io_context; + } +- inline boost::asio::io_context::executor_type get_executor() { ++ using executor_type = boost::asio::io_context::executor_type; ++ inline executor_type get_executor() { + return m_io_context.get_executor(); + } + +--- ceph-16.1.0/src/librbd/migration/FileStream.cc.orig 2021-01-27 09:58:21.984505879 -0500 ++++ ceph-16.1.0/src/librbd/migration/FileStream.cc 2021-01-27 09:58:48.945241982 -0500 +@@ -121,7 +121,8 @@ + template + FileStream::FileStream(I* image_ctx, const json_spirit::mObject& json_object) + : m_cct(image_ctx->cct), m_asio_engine(image_ctx->asio_engine), +- m_json_object(json_object), m_strand(*m_asio_engine) { ++ m_json_object(json_object), ++ m_strand(boost::asio::make_strand(*m_asio_engine)) { + } + + template +--- ceph-16.1.0/src/librbd/migration/FileStream.h.orig 2021-01-27 09:59:03.542640537 -0500 ++++ ceph-16.1.0/src/librbd/migration/FileStream.h 2021-01-27 09:59:42.054692043 -0500 +@@ -6,7 +6,8 @@ + + #include "include/int_types.h" + #include "librbd/migration/StreamInterface.h" +-#include ++#include ++#include + #include + #include + #include +@@ -48,7 +49,7 @@ + std::shared_ptr m_asio_engine; + json_spirit::mObject m_json_object; + +- boost::asio::io_context::strand m_strand; ++ boost::asio::strand m_strand; + #ifdef BOOST_ASIO_HAS_POSIX_STREAM_DESCRIPTOR + std::optional m_stream_descriptor; + +--- ceph-16.1.0/src/librbd/migration/HttpClient.cc.orig 2021-01-27 10:00:04.167295789 -0500 ++++ ceph-16.1.0/src/librbd/migration/HttpClient.cc 2021-01-27 10:00:34.303118596 -0500 +@@ -764,7 +764,8 @@ + template + HttpClient::HttpClient(I* image_ctx, const std::string& url) + : m_cct(image_ctx->cct), m_image_ctx(image_ctx), +- m_asio_engine(image_ctx->asio_engine), m_url(url), m_strand(*m_asio_engine), ++ m_asio_engine(image_ctx->asio_engine), m_url(url), ++ m_strand(boost::asio::make_strand(*m_asio_engine)), + m_ssl_context(boost::asio::ssl::context::sslv23_client) { + m_ssl_context.set_default_verify_paths(); + } +--- ceph-16.1.0/src/librbd/migration/HttpClient.h.orig 2021-01-27 10:00:49.626536973 -0500 ++++ ceph-16.1.0/src/librbd/migration/HttpClient.h 2021-01-27 10:01:38.728877629 -0500 +@@ -9,7 +9,8 @@ + #include "librbd/io/Types.h" + #include "librbd/migration/HttpProcessorInterface.h" + #include "librbd/migration/Types.h" +-#include ++#include ++#include + #include + #include + #include +@@ -171,7 +172,7 @@ + + HttpProcessorInterface* m_http_processor = nullptr; + +- boost::asio::io_context::strand m_strand; ++ boost::asio::strand m_strand; + + boost::asio::ssl::context m_ssl_context; + std::unique_ptr m_http_session; diff --git a/ceph.spec b/ceph.spec index ed3a839..3950419 100644 --- a/ceph.spec +++ b/ceph.spec @@ -23,6 +23,7 @@ %global _hardened_build 1 %bcond_with make_check +%bcond_with zbd %bcond_with cmake_verbose_logging %bcond_without ceph_test_package %ifarch s390 s390x @@ -62,6 +63,9 @@ %endif %endif %bcond_with seastar +%bcond_with jaeger +%bcond_with rbd_rwl_cache +%bcond_with rbd_ssd_cache %if 0%{?fedora} || 0%{?suse_version} >= 1500 # distros that ship cmd2 and/or colorama %bcond_without cephfs_shell @@ -82,16 +86,24 @@ %endif %endif +%if 0%{?suse_version} +%if !0%{?is_opensuse} +# SLE does not support luarocks +%bcond_with lua_packages +%else +%global luarocks_package_name lua53-luarocks +%bcond_without lua_packages +%endif +%else +%global luarocks_package_name luarocks +%bcond_without lua_packages +%endif + %{!?_udevrulesdir: %global _udevrulesdir /lib/udev/rules.d} %{!?tmpfiles_create: %global tmpfiles_create systemd-tmpfiles --create} %{!?python3_pkgversion: %global python3_pkgversion 3} %{!?python3_version_nodots: %global python3_version_nodots 3} %{!?python3_version: %global python3_version 3} -%if 0%{?rhel} == 7 -%define __python %{__python3} -%endif -# unify libexec for all targets -%global _libexecdir %{_exec_prefix}/lib # disable dwz which compresses the debuginfo %global _find_debuginfo_dwz_opts %{nil} @@ -100,8 +112,8 @@ # main package definition ################################################################################# Name: ceph -Version: 15.2.8 -Release: 6%{?dist} +Version: 16.1.0 +Release: 0.1.snapshot%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 %endif @@ -117,14 +129,14 @@ License: (LGPLv2.1 or LGPLv3) and CC-BY-SA-3.0 and GPLv2 and Boost-1.0 and BSD a Group: System/Filesystems %endif URL: http://ceph.com/ -Source0: %{?_remote_tarball_prefix}ceph-%{version}.tar.gz +#Source0: %%{?_remote_tarball_prefix}ceph-%%{version}.tar.gz +# https://2.chacra.ceph.com/r/ceph/pacific/6b74fb5c... +Source0: ceph-16.1.0-43-g6b74fb5c.tar.bz2 Patch0001: 0001-src-common-crc32c_intel_fast.patch Patch0002: 0002-src-common-CMakeLists.txt.patch Patch0003: 0003-src-common-bitstr.h.patch -Patch0004: 0004-src-common-ceph-time.h.patch -Patch0005: 0005-src-CMakeLists.txt.patch -Patch0006: 0006-src-rgw-rgw_asio_frontend.cc.patch -Patch0007: 0007-src-tools-rbd-action-Bench.cc.patch +Patch0004: 0004-src-CMakeLists.txt.patch +Patch0005: 0005-src-librbd-migration.patch Source1: cmake-modules-BuildBoost.cmake.noautopatch # ceph 14.0.1 does not support 32-bit architectures, bugs #1727788, #1727787 ExcludeArch: i686 armv7hl @@ -149,18 +161,14 @@ BuildRequires: checkpolicy BuildRequires: selinux-policy-devel %endif BuildRequires: gperf -%if 0%{?rhel} == 7 -BuildRequires: cmake3 > 3.5 -%else BuildRequires: cmake > 3.5 -%endif BuildRequires: cryptsetup BuildRequires: fuse3-devel BuildRequires: fmt-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.3.1-3.1 +BuildRequires: devtoolset-9-gcc-c++ >= 9.2.1-2.3 %else BuildRequires: gcc-c++ %endif @@ -176,8 +184,10 @@ BuildRequires: gperftools-devel >= 2.4 BuildRequires: leveldb-devel > 1.2 BuildRequires: libaio-devel BuildRequires: libblkid-devel >= 2.17 +BuildRequires: cryptsetup-devel BuildRequires: libcurl-devel BuildRequires: libcap-ng-devel +BuildRequires: fmt-devel >= 5.2.1 BuildRequires: pkgconfig(libudev) BuildRequires: libnl3-devel BuildRequires: liboath-devel @@ -202,47 +212,44 @@ BuildRequires: which BuildRequires: xfsprogs BuildRequires: xfsprogs-devel BuildRequires: xmlstarlet -BuildRequires: yasm +BuildRequires: lua-devel +BuildRequires: nasm %if 0%{with amqp_endpoint} BuildRequires: librabbitmq-devel %endif %if 0%{with kafka_endpoint} BuildRequires: librdkafka-devel %endif +%if 0%{with lua_packages} +BuildRequires: %{luarocks_package_name} +%endif %if 0%{with make_check} BuildRequires: jq BuildRequires: libuuid-devel -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-bcrypt -BuildRequires: python%{python3_version_nodots}-nose -BuildRequires: python%{python3_version_nodots}-requests -BuildRequires: python%{python3_version_nodots}-dateutil -%else BuildRequires: python%{python3_pkgversion}-bcrypt BuildRequires: python%{python3_pkgversion}-nose BuildRequires: python%{python3_pkgversion}-pecan BuildRequires: python%{python3_pkgversion}-requests BuildRequires: python%{python3_pkgversion}-dateutil -%endif -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-six -BuildRequires: python%{python3_version_nodots}-virtualenv -%else -BuildRequires: python%{python3_pkgversion}-six -BuildRequires: python%{python3_pkgversion}-virtualenv -%endif -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-coverage -%else BuildRequires: python%{python3_pkgversion}-coverage -%endif -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-pyOpenSSL -%else BuildRequires: python%{python3_pkgversion}-pyOpenSSL -%endif BuildRequires: socat %endif +%if 0%{with zbd} +BuildRequires: libzbd-devel +%endif +%if 0%{with jaeger} +BuildRequires: bison +BuildRequires: flex +%if 0%{?fedora} || 0%{?rhel} +BuildRequires: json-devel +%endif +%if 0%{?suse_version} +BuildRequires: nlohmann_json-devel +%endif +BuildRequires: libevent-devel +BuildRequires: yaml-cpp-devel +%endif %if 0%{with seastar} BuildRequires: c-ares-devel BuildRequires: gnutls-devel @@ -253,6 +260,17 @@ BuildRequires: protobuf-devel BuildRequires: ragel BuildRequires: systemtap-sdt-devel BuildRequires: yaml-cpp-devel +%if 0%{?fedora} +BuildRequires: libubsan +BuildRequires: libasan +BuildRequires: libatomic +%endif +%if 0%{?rhel} +BuildRequires: gcc-toolset-9-annobin +BuildRequires: gcc-toolset-9-libubsan-devel +BuildRequires: gcc-toolset-9-libasan-devel +BuildRequires: gcc-toolset-9-libatomic-devel +%endif %endif ################################################################################# # distro-conditional dependencies @@ -297,11 +315,7 @@ BuildRequires: CUnit-devel BuildRequires: redhat-lsb-core BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-setuptools -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-Cython -%else BuildRequires: python%{python3_pkgversion}-Cython -%endif BuildRequires: python%{python3_pkgversion}-prettytable BuildRequires: python%{python3_pkgversion}-sphinx BuildRequires: lz4-devel >= 1.7 @@ -317,22 +331,13 @@ BuildRequires: xmlsec1-nss %endif BuildRequires: xmlsec1-openssl BuildRequires: xmlsec1-openssl-devel -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-jwt -BuildRequires: python%{python3_version_nodots}-scipy -%else BuildRequires: python%{python3_pkgversion}-cherrypy BuildRequires: python%{python3_pkgversion}-jwt BuildRequires: python%{python3_pkgversion}-routes BuildRequires: python%{python3_pkgversion}-scipy BuildRequires: python%{python3_pkgversion}-werkzeug -%endif -%if 0%{?rhel} == 7 -BuildRequires: python%{python3_version_nodots}-pyOpenSSL -%else BuildRequires: python%{python3_pkgversion}-pyOpenSSL %endif -%endif %if 0%{?suse_version} BuildRequires: libxmlsec1-1 BuildRequires: libxmlsec1-nss1 @@ -430,10 +435,8 @@ Base is the package that includes all the files shared amongst ceph servers %package -n cephadm Summary: Utility to bootstrap Ceph clusters +BuildArch: noarch Requires: lvm2 -%if 0%{?suse_version} -Requires: apparmor-abstractions -%endif Requires: python%{python3_pkgversion} %if 0%{?weak_deps} Recommends: podman @@ -456,6 +459,9 @@ Requires: python%{python3_pkgversion}-cephfs = %{_epoch_prefix}%{version}-%{rele Requires: python%{python3_pkgversion}-rgw = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-ceph-argparse = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-ceph-common = %{_epoch_prefix}%{version}-%{release} +%if 0%{with jaeger} +Requires: libjaeger = %{_epoch_prefix}%{version}-%{release} +%endif %if 0%{?fedora} || 0%{?rhel} Requires: python%{python3_pkgversion}-prettytable %endif @@ -492,8 +498,15 @@ Group: System/Filesystems Provides: ceph-test:/usr/bin/ceph-monstore-tool Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} %if 0%{?weak_deps} -Recommends: nvme-cli -Recommends: smartmontools +Recommends: nvme-cli +%if 0%{?suse_version} +Requires: smartmontools +%else +Recommends: smartmontools +%endif +%endif +%if 0%{with jaeger} +Requires: libjaeger = %{_epoch_prefix}%{version}-%{release} %endif %description mon ceph-mon is the cluster monitor daemon for the Ceph distributed file @@ -508,11 +521,6 @@ Group: System/Filesystems %endif Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} Requires: ceph-mgr-modules-core = %{_epoch_prefix}%{version}-%{release} -%if 0%{?rhel} == 7 -Requires: python%{python3_version_nodots}-six -%else -Requires: python%{python3_pkgversion}-six -%endif %if 0%{?weak_deps} Recommends: ceph-mgr-dashboard = %{_epoch_prefix}%{version}-%{release} Recommends: ceph-mgr-diskprediction-local = %{_epoch_prefix}%{version}-%{release} @@ -566,47 +574,25 @@ Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-numpy -Requires: python%{python3_pkgversion}-scipy -%if 0%{?rhel} == 7 -Requires: numpy -Requires: scipy +%if 0%{?fedora} || 0%{?suse_version} +Requires: python%{python3_pkgversion}-scikit-learn %endif +Requires: python3-scipy %description mgr-diskprediction-local ceph-mgr-diskprediction-local is a ceph-mgr module that tries to predict disk failures using local algorithms and machine-learning databases. -%package mgr-diskprediction-cloud -Summary: Ceph Manager module for cloud-based disk failure prediction -BuildArch: noarch -%if 0%{?suse_version} -Group: System/Filesystems -%endif -Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} -Requires: python%{python3_pkgversion}-grpcio -Requires: python%{python3_pkgversion}-protobuf -%description mgr-diskprediction-cloud -ceph-mgr-diskprediction-cloud is a ceph-mgr module that tries to predict -disk failures using services in the Google cloud. - %package mgr-modules-core Summary: Ceph Manager modules which are always enabled BuildArch: noarch %if 0%{?suse_version} Group: System/Filesystems %endif -%if 0%{?rhel} == 7 -Requires: python%{python3_version_nodots}-bcrypt -Requires: python%{python3_version_nodots}-pyOpenSSL -Requires: python%{python3_version_nodots}-requests -Requires: python%{python3_version_nodots}-PyYAML -Requires: python%{python3_version_nodots}-dateutil -%else Requires: python%{python3_pkgversion}-bcrypt Requires: python%{python3_pkgversion}-pecan Requires: python%{python3_pkgversion}-pyOpenSSL Requires: python%{python3_pkgversion}-requests Requires: python%{python3_pkgversion}-dateutil -%endif %if 0%{?fedora} || 0%{?rhel} >= 8 Requires: python%{python3_pkgversion}-cherrypy Requires: python%{python3_pkgversion}-pyyaml @@ -680,6 +666,17 @@ Requires: python%{python3_pkgversion} %description fuse FUSE based client for Ceph distributed network file system +%package -n cephfs-mirror +Summary: Ceph daemon for mirroring CephFS snapshots +%if 0%{?suse_version} +Group: System/Filesystems +%endif +Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} +Requires: librados2 = %{_epoch_prefix}%{version}-%{release} +Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} +%description -n cephfs-mirror +Daemon for mirroring CephFS snapshots between Ceph clusters. + %package -n rbd-fuse Summary: Ceph fuse-based client %if 0%{?suse_version} @@ -741,6 +738,14 @@ storage system. This package provides a REST gateway to the object store that aims to implement a superset of Amazon's S3 service as well as the OpenStack Object Storage ("Swift") API. +%package -n cephfs-top +Summary: top(1) like utility for Ceph Filesystem +BuildArch: noarch +Requires: python%{python3_pkgversion}-rados +%description -n cephfs-top +This package provides a top(1) like utility to display Ceph Filesystem metrics +in realtime. + %if %{with ocf} %package resource-agents Summary: OCF-compliant resource agents for Ceph daemons @@ -767,8 +772,12 @@ Requires: sudo Requires: libstoragemgmt Requires: python%{python3_pkgversion}-ceph-common = %{_epoch_prefix}%{version}-%{release} %if 0%{?weak_deps} -Recommends: nvme-cli -Recommends: smartmontools +Recommends: nvme-cli +%if 0%{?suse_version} +Requires: smartmontools +%else +Recommends: smartmontools +%endif %endif %description osd ceph-osd is the object storage daemon for the Ceph distributed file @@ -860,7 +869,7 @@ Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{relea Provides: python-rgw = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-rgw < %{_epoch_prefix}%{version}-%{release} %description -n python%{python3_pkgversion}-rgw -This package contains Python 3 libraries for interacting with Cephs RADOS +This package contains Python 3 libraries for interacting with Ceph RADOS gateway. %package -n python%{python3_pkgversion}-rados @@ -874,7 +883,7 @@ Requires: librados2 = %{_epoch_prefix}%{version}-%{release} Provides: python-rados = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-rados < %{_epoch_prefix}%{version}-%{release} %description -n python%{python3_pkgversion}-rados -This package contains Python 3 libraries for interacting with Cephs RADOS +This package contains Python 3 libraries for interacting with Ceph RADOS object store. %if 0%{with libradosstriper} @@ -949,7 +958,7 @@ Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{relea Provides: python-rbd = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-rbd < %{_epoch_prefix}%{version}-%{release} %description -n python%{python3_pkgversion}-rbd -This package contains Python 3 libraries for interacting with Cephs RADOS +This package contains Python 3 libraries for interacting with Ceph RADOS block device. %package -n libcephfs2 @@ -980,7 +989,21 @@ Provides: libcephfs2-devel = %{_epoch_prefix}%{version}-%{release} Obsoletes: libcephfs2-devel < %{_epoch_prefix}%{version}-%{release} %description -n libcephfs-devel This package contains libraries and headers needed to develop programs -that use Cephs distributed file system. +that use Ceph distributed file system. + +%if 0%{with jaeger} +%package -n libjaeger +Summary: Ceph distributed file system tracing library +%if 0%{?suse_version} +Group: System/Libraries +%endif +Provides: libjaegertracing.so.0()(64bit) +Provides: libopentracing.so.1()(64bit) +Provides: libthrift.so.0.13.0()(64bit) +%description -n libjaeger +This package contains libraries needed to provide distributed +tracing for Ceph. +%endif %package -n python%{python3_pkgversion}-cephfs Summary: Python 3 libraries for Ceph distributed file system @@ -994,7 +1017,7 @@ Requires: python%{python3_pkgversion}-ceph-argparse = %{_epoch_prefix}%{version} Provides: python-cephfs = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-cephfs < %{_epoch_prefix}%{version}-%{release} %description -n python%{python3_pkgversion}-cephfs -This package contains Python 3 libraries for interacting with Cephs distributed +This package contains Python 3 libraries for interacting with Ceph distributed file system. %package -n python%{python3_pkgversion}-ceph-argparse @@ -1141,13 +1164,13 @@ Summary: Prometheus alerts for a Ceph deplyoment BuildArch: noarch Group: System/Monitoring %description prometheus-alerts -This package provides Ceph’s default alerts for Prometheus. +This package provides Ceph default alerts for Prometheus. ################################################################################# # common ################################################################################# %prep -%autosetup -p1 +%autosetup -p1 -n ceph-16.1.0-43-g6b74fb5c %ifarch x86_64 patch -p1 < %{SOURCE1} %endif @@ -1157,8 +1180,8 @@ patch -p1 < %{SOURCE1} # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48200 %define _lto_cflags %{nil} -%if 0%{?rhel} == 7 -. /opt/rh/devtoolset-8/enable +%if 0%{with seastar} &&0%{?rhel} +. /opt/rh/devtoolset-9/enable %endif %if 0%{with cephfs_java} @@ -1178,6 +1201,11 @@ export CFLAGS="$RPM_OPT_FLAGS" export CXXFLAGS="$RPM_OPT_FLAGS" export LDFLAGS="$RPM_LD_FLAGS" +%if 0%{with seastar} +# seastar uses longjmp() to implement coroutine. and this annoys longjmp_chk() +export CXXFLAGS=$(echo $RPM_OPT_FLAGS | sed -e 's/-Wp,-D_FORTIFY_SOURCE=2//g') +%endif + # Parallel build settings ... CEPH_MFLAGS_JOBS="%{?_smp_mflags}" CEPH_SMP_NCPUS=$(echo "$CEPH_MFLAGS_JOBS" | sed 's/-j//') @@ -1204,9 +1232,6 @@ env | sort mkdir build cd build -%if 0%{?rhel} == 7 -%global cmake cmake3 -%endif %{cmake} .. \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DBUILD_CONFIG=rpmbuild \ @@ -1218,6 +1243,7 @@ cd build -DCMAKE_INSTALL_MANDIR=%{_mandir} \ -DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \ -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \ + -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR=%{_unitdir} \ -DWITH_MANPAGE=ON \ -DWITH_PYTHON3=%{python3_version} \ -DWITH_MGR_DASHBOARD_FRONTEND=OFF \ @@ -1243,11 +1269,6 @@ cd build %endif -DWITH_REENTRANT_STRSIGNAL=ON \ -DWITH_SYSTEM_BOOST=ON \ -%ifarch aarch64 armv7hl mips mipsel ppc ppc64 ppc64le %{ix86} x86_64 - -DWITH_BOOST_CONTEXT=ON \ -%else - -DWITH_BOOST_CONTEXT=OFF \ -%endif %if 0%{with cephfs_shell} -DWITH_CEPHFS_SHELL=ON \ %endif @@ -1266,8 +1287,20 @@ cd build %else -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF \ %endif +%if 0%{without lua_packages} + -DWITH_RADOSGW_LUA_PACKAGES=OFF +%endif +%if 0%{with zbd} + -DWITH_ZBD=ON \ +%endif %if 0%{with cmake_verbose_logging} -DCMAKE_VERBOSE_MAKEFILE=ON \ +%endif +%if 0%{with rbd_rwl_cache} + -DWITH_RBD_RWL=ON \ +%endif +%if 0%{with rbd_ssd_cache} + -DWITH_RBD_SSD_CACHE=ON \ %endif -DBOOST_J=$CEPH_SMP_NCPUS \ %if 0%{with ceph_test_package} @@ -1282,7 +1315,7 @@ cat ./CMakeFiles/CMakeError.log export VERBOSE=1 export V=1 -%cmake_build +%cmake_build "$CEPH_MFLAGS_JOBS" %if 0%{with make_check} @@ -1299,6 +1332,10 @@ pushd build # we have dropped sysvinit bits rm -f %{buildroot}/%{_sysconfdir}/init.d/ceph popd +%if 0%{with seastar} +# package crimson-osd with the name of ceph-osd +install -m 0755 %{buildroot}%{_bindir}/crimson-osd %{buildroot}%{_bindir}/ceph-osd +%endif install -m 0644 -D src/etc-rbdmap %{buildroot}%{_sysconfdir}/ceph/rbdmap %if 0%{?fedora} || 0%{?rhel} install -m 0644 -D etc/sysconfig/ceph %{buildroot}%{_sysconfdir}/sysconfig/ceph @@ -1307,12 +1344,13 @@ install -m 0644 -D etc/sysconfig/ceph %{buildroot}%{_sysconfdir}/sysconfig/ceph install -m 0644 -D etc/sysconfig/ceph %{buildroot}%{_fillupdir}/sysconfig.%{name} %endif install -m 0644 -D systemd/ceph.tmpfiles.d %{buildroot}%{_tmpfilesdir}/ceph-common.conf -install -m 0644 -D systemd/50-ceph.preset %{buildroot}%{_libexecdir}/systemd/system-preset/50-ceph.preset +install -m 0644 -D systemd/50-ceph.preset %{buildroot}%{_presetdir}/50-ceph.preset mkdir -p %{buildroot}%{_sbindir} install -m 0644 -D src/logrotate.conf %{buildroot}%{_sysconfdir}/logrotate.d/ceph chmod 0644 %{buildroot}%{_docdir}/ceph/sample.ceph.conf install -m 0644 -D COPYING %{buildroot}%{_docdir}/ceph/COPYING install -m 0644 -D etc/sysctl/90-ceph-osd.conf %{buildroot}%{_sysctldir}/90-ceph-osd.conf +install -m 0755 -D src/tools/rbd_nbd/rbd-nbd_quiesce %{buildroot}%{_libexecdir}/rbd-nbd/rbd-nbd_quiesce install -m 0755 src/cephadm/cephadm %{buildroot}%{_sbindir}/cephadm mkdir -p %{buildroot}%{_sharedstatedir}/cephadm @@ -1332,7 +1370,7 @@ ln -sf %{_sbindir}/mount.ceph %{buildroot}/sbin/mount.ceph install -m 0644 -D udev/50-rbd.rules %{buildroot}%{_udevrulesdir}/50-rbd.rules # sudoers.d -install -m 0600 -D sudoers.d/ceph-osd-smartctl %{buildroot}%{_sysconfdir}/sudoers.d/ceph-osd-smartctl +install -m 0440 -D sudoers.d/ceph-osd-smartctl %{buildroot}%{_sysconfdir}/sudoers.d/ceph-osd-smartctl %if 0%{?rhel} >= 8 pathfix.py -pni "%{__python3} %{py3_shbang_opts}" %{buildroot}%{_bindir}/* @@ -1384,7 +1422,7 @@ install -m 644 -D monitoring/prometheus/alerts/ceph_default_alerts.yml %{buildro %{_bindir}/osdmaptool %{_bindir}/ceph-kvstore-tool %{_bindir}/ceph-run -%{_libexecdir}/systemd/system-preset/50-ceph.preset +%{_presetdir}/50-ceph.preset %{_sbindir}/ceph-create-keys %dir %{_libexecdir}/ceph %{_libexecdir}/ceph/ceph_common.sh @@ -1456,21 +1494,6 @@ fi %postun base /sbin/ldconfig -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph.target -%endif -%if 0%{?fedora} || 0%{?rhel} -%systemd_postun ceph.target -%endif -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 - if [ -f $SYSCONF_CEPH -a -r $SYSCONF_CEPH ] ; then - source $SYSCONF_CEPH - fi -fi %pre -n cephadm getent group cephadm >/dev/null || groupadd -r cephadm @@ -1616,13 +1639,7 @@ fi %endif %postun mds -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-mds@\*.service ceph-mds.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-mds@\*.service ceph-mds.target -%endif 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. @@ -1640,9 +1657,6 @@ fi %dir %{_datadir}/ceph/mgr %{_datadir}/ceph/mgr/mgr_module.* %{_datadir}/ceph/mgr/mgr_util.* -%if 0%{?rhel} == 7 -%{_datadir}/ceph/mgr/__pycache__ -%endif %{_unitdir}/ceph-mgr@.service %{_unitdir}/ceph-mgr.target %attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/mgr @@ -1669,13 +1683,7 @@ fi %endif %postun mgr -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-mgr@\*.service ceph-mgr.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-mgr@\*.service ceph-mgr.target -%endif 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. @@ -1714,19 +1722,6 @@ if [ $1 -eq 1 ] ; then /usr/bin/systemctl try-restart ceph-mgr.target >/dev/null 2>&1 || : fi -%files mgr-diskprediction-cloud -%{_datadir}/ceph/mgr/diskprediction_cloud - -%post mgr-diskprediction-cloud -if [ $1 -eq 1 ] ; then - /usr/bin/systemctl try-restart ceph-mgr.target >/dev/null 2>&1 || : -fi - -%postun mgr-diskprediction-cloud -if [ $1 -eq 1 ] ; then - /usr/bin/systemctl try-restart ceph-mgr.target >/dev/null 2>&1 || : -fi - %files mgr-modules-core %dir %{_datadir}/ceph/mgr %{_datadir}/ceph/mgr/alerts @@ -1737,6 +1732,7 @@ fi %{_datadir}/ceph/mgr/insights %{_datadir}/ceph/mgr/iostat %{_datadir}/ceph/mgr/localpool +%{_datadir}/ceph/mgr/mds_autoscaler %{_datadir}/ceph/mgr/orchestrator %{_datadir}/ceph/mgr/osd_perf_query %{_datadir}/ceph/mgr/osd_support @@ -1746,6 +1742,8 @@ fi %{_datadir}/ceph/mgr/rbd_support %{_datadir}/ceph/mgr/restful %{_datadir}/ceph/mgr/selftest +%{_datadir}/ceph/mgr/snap_schedule +%{_datadir}/ceph/mgr/stats %{_datadir}/ceph/mgr/status %{_datadir}/ceph/mgr/telegraf %{_datadir}/ceph/mgr/telemetry @@ -1822,13 +1820,7 @@ fi %endif %postun mon -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-mon@\*.service ceph-mon.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-mon@\*.service ceph-mon.target -%endif 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. @@ -1845,9 +1837,51 @@ fi %{_bindir}/ceph-fuse %{_mandir}/man8/ceph-fuse.8* %{_sbindir}/mount.fuse.ceph +%{_mandir}/man8/mount.fuse.ceph.8* %{_unitdir}/ceph-fuse@.service %{_unitdir}/ceph-fuse.target +%files -n cephfs-mirror +%{_bindir}/cephfs-mirror +%{_mandir}/man8/cephfs-mirror.8* +%{_unitdir}/cephfs-mirror@.service +%{_unitdir}/cephfs-mirror.target + +%post -n cephfs-mirror +%if 0%{?suse_version} +if [ $1 -eq 1 ] ; then + /usr/bin/systemctl preset cephfs-mirror@\*.service cephfs-mirror.target >/dev/null 2>&1 || : +fi +%endif +%if 0%{?fedora} || 0%{?rhel} +%systemd_post cephfs-mirror@\*.service cephfs-mirror.target +%endif +if [ $1 -eq 1 ] ; then +/usr/bin/systemctl start cephfs-mirror.target >/dev/null 2>&1 || : +fi + +%preun -n cephfs-mirror +%if 0%{?suse_version} +%service_del_preun cephfs-mirror@\*.service cephfs-mirror.target +%endif +%if 0%{?fedora} || 0%{?rhel} +%systemd_preun cephfs-mirror@\*.service cephfs-mirror.target +%endif + +%postun -n cephfs-mirror +%systemd_postun cephfs-mirror@\*.service cephfs-mirror.target +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 + if [ -f $SYSCONF_CEPH -a -r $SYSCONF_CEPH ] ; then + source $SYSCONF_CEPH + fi + if [ "X$CEPH_AUTO_RESTART_ON_UPGRADE" = "Xyes" ] ; then + /usr/bin/systemctl try-restart cephfs-mirror@\*.service > /dev/null 2>&1 || : + fi +fi + %files -n rbd-fuse %{_bindir}/rbd-fuse %{_mandir}/man8/rbd-fuse.8* @@ -1880,13 +1914,7 @@ fi %endif %postun -n rbd-mirror -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-rbd-mirror@\*.service ceph-rbd-mirror.target -%endif 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. @@ -1928,13 +1956,7 @@ fi %postun immutable-object-cache test -n "$FIRST_ARG" || FIRST_ARG=$1 -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-immutable-object-cache@\*.service ceph-immutable-object-cache.target -%endif if [ $FIRST_ARG -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. @@ -1950,6 +1972,8 @@ fi %files -n rbd-nbd %{_bindir}/rbd-nbd %{_mandir}/man8/rbd-nbd.8* +%dir %{_libexecdir}/rbd-nbd +%{_libexecdir}/rbd-nbd/rbd-nbd_quiesce %files radosgw %{_bindir}/ceph-diff-sorted @@ -1988,13 +2012,7 @@ fi %postun radosgw /sbin/ldconfig -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-radosgw@\*.service ceph-radosgw.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-radosgw@\*.service ceph-radosgw.target -%endif 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. @@ -2010,6 +2028,7 @@ fi %files osd %{_bindir}/ceph-clsinfo %{_bindir}/ceph-bluestore-tool +%{_bindir}/ceph-erasure-code-tool %{_bindir}/ceph-objectstore-tool %{_bindir}/ceph-osdomap-tool %{_bindir}/ceph-osd @@ -2055,13 +2074,7 @@ fi %endif %postun osd -%if 0%{?suse_version} -DISABLE_RESTART_ON_UPDATE="yes" -%service_del_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target -%endif -%if 0%{?fedora} || 0%{?rhel} %systemd_postun ceph-osd@\*.service ceph-volume@\*.service ceph-osd.target -%endif 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. @@ -2148,6 +2161,8 @@ fi %if %{with lttng} %{_libdir}/librbd_tp.so.* %endif +%dir %{_libdir}/ceph/librbd +%{_libdir}/ceph/librbd/libceph_*.so* %post -n librbd1 -p /sbin/ldconfig @@ -2204,8 +2219,19 @@ fi %dir %{_includedir}/cephfs %{_includedir}/cephfs/libcephfs.h %{_includedir}/cephfs/ceph_ll_client.h +%dir %{_includedir}/cephfs/metrics +%{_includedir}/cephfs/metrics/Types.h %{_libdir}/libcephfs.so +%if %{with jaeger} +%files -n libjaeger +%{_libdir}/libopentracing.so.* +%{_libdir}/libthrift.so.* +%{_libdir}/libjaegertracing.so.* +%post -n libjaeger -p /sbin/ldconfig +%postun -n libjaeger -p /sbin/ldconfig +%endif + %files -n python%{python3_pkgversion}-cephfs %{python3_sitearch}/cephfs.cpython*.so %{python3_sitearch}/cephfs-*.egg-info @@ -2228,13 +2254,17 @@ fi %{_bindir}/cephfs-shell %endif +%files -n cephfs-top +%{python3_sitelib}/cephfs_top-*.egg-info +%{_bindir}/cephfs-top +%{_mandir}/man8/cephfs-top.8* + %if 0%{with ceph_test_package} %files -n ceph-test %{_bindir}/ceph-client-debug %{_bindir}/ceph_bench_log %{_bindir}/ceph_kvstorebench %{_bindir}/ceph_multi_stress_watch -%{_bindir}/ceph_erasure_code %{_bindir}/ceph_erasure_code_benchmark %{_bindir}/ceph_omapbench %{_bindir}/ceph_objectstore_bench @@ -2252,6 +2282,9 @@ fi %{_bindir}/ceph-coverage %{_bindir}/ceph-debugpack %{_bindir}/ceph-dedup-tool +%if 0%{with seastar} +%{_bindir}/crimson-store-nbd +%endif %{_mandir}/man8/ceph-debugpack.8* %dir %{_libdir}/ceph %{_libdir}/ceph/ceph-monstore-update-crush.sh @@ -2382,29 +2415,8 @@ exit 0 %config %{_sysconfdir}/prometheus/ceph/ceph_default_alerts.yml %changelog -* Mon Jan 25 2021 Kaleb S. KEITHLEY - 2:15.2.8-6 -- rebuilt with system Boost - -* Fri Jan 22 2021 Kaleb S. KEITHLEY - 2:15.2.8-5 -- rebuilt with bundled Boost - -* Fri Jan 22 2021 Jonathan Wakely - 2:15.2.8-4 -- Rebuilt for Boost 1.75 - -* Fri Jan 8 2021 Kaleb S. KEITHLEY - 2:15.2.8-3 -- ceph 15.2.8, %%changelog date - -* Thu Jan 7 2021 Kaleb S. KEITHLEY - 2:15.2.8-2 -- ceph 15.2.8, fuse3-devel - -* Wed Dec 23 2020 Kaleb S. KEITHLEY - 2:15.2.8-1 -- ceph 15.2.8 GA - -* Mon Nov 30 2020 Kaleb S. KEITHLEY - 2:15.2.7-1 -- ceph 15.2.7 GA - -* Thu Nov 19 2020 Kaleb S. KEITHLEY - 2:15.2.6-1 -- ceph 15.2.6 GA +* Fri Jan 29 2021 Kaleb S. KEITHLEY - 2:16.1.0-0.1.snapshot +- ceph 16.1.0 RC (ceph-16.1.0-43-g6b74fb5c) * Wed Sep 16 2020 Kaleb S. KEITHLEY - 2:15.2.5-1 - ceph 15.2.5 GA diff --git a/sources b/sources index 0e8e3c0..a26d268 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ceph-15.2.8.tar.gz) = 66c7322575165b4747955ac9de34f9f9e2d4361c8cd8498819383883045601b92f786c4336c79369d6f019db1c4524c492faa40cdceed7fc1b2b373ca6ab5065 +SHA512 (ceph-16.1.0-43-g6b74fb5c.tar.bz2) = 5822292d23be3daa640250e7c044c26a0350b71d8260b28264320572d6b905b2e69592883f70dab49d56709cace1fbae92bfd3e7591d1023ef2fa0fe587d474a