diff --git a/ceph-15.0.0-8441-g88a99a841e.tar.bz2 b/ceph-15.0.0-8441-g88a99a841e.tar.bz2 deleted file mode 100644 index b5b5043..0000000 --- a/ceph-15.0.0-8441-g88a99a841e.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:54fbd26c90cb35e6b97308cf6e986f22a5cd939380e6888d9fe48e1065baf321 -size 142438252 diff --git a/ceph-15.1.0-1207-g89308cc4c6.tar.bz2 b/ceph-15.1.0-1207-g89308cc4c6.tar.bz2 new file mode 100644 index 0000000..9f7c64e --- /dev/null +++ b/ceph-15.1.0-1207-g89308cc4c6.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f043a694a2f32bb0d390460d08185879308a1dae054c4c7cc1ec454e93622f2 +size 154962646 diff --git a/ceph-rpmlintrc b/ceph-rpmlintrc index 3f28c7e..6cebca0 100644 --- a/ceph-rpmlintrc +++ b/ceph-rpmlintrc @@ -1,9 +1,128 @@ -# to be used as a last resort +# Upstream has fixed share library dependencies, all within the +# ceph src package. Eliminating them is a long-term effort. addFilter("shlib-fixed-dependency") -addFilter("ceph-base.*devel-file-in-non-devel-package.*erasure-code") + +# ceph-base RPM ships some internal static libraries addFilter("ceph-base.*devel-file-in-non-devel-package.*compressor") addFilter("ceph-base.*devel-file-in-non-devel-package.*rados-classes") addFilter("ceph-base.*devel-file-in-non-devel-package.*libceph_crypto") addFilter("ceph-base.*devel-file-in-non-devel-package.*libos_tp") addFilter("ceph-base.*devel-file-in-non-devel-package.*libosd_tp") -addFilter("librados2.*devel-file-in-non-devel-package.*libceph-common") + +# env shebang hack is required because the same script has to run in FreeBSD as +# well as Linux (Fedora, CentOS, SUSE, Debian, Ubuntu, etc.) +addFilter("ceph-common.*env-script-interpreter.*rbd-replay-many") +addFilter("ceph-common.*env-script-interpreter.*rbdmap") + +# cephadm intentionally ships an empty file (.ssh/authorized_keys) +# and a hidden directory (/var/lib/cephadm/.ssh) +addFilter("cephadm.*zero-length") +addFilter("cephadm.*hidden-file-or-dir") + +# ceph-mgr-dashboard ships a bunch of empty files and hidden files: need to audit if they are needed (WIP) +addFilter("ceph-mgr-dashboard.*zero-length") +addFilter("ceph-mgr-dashboard.*hidden-file-or-dir") + +# ceph-immutable-object-cache has a weird description (WIP) +addFilter("ceph-immutable-object-cache.*description-shorter-than-summary") + +# ceph-osd depends on libstoragemgmt explicitly (WIP) +addFilter("ceph-osd.*explicit-lib-dependency.*libstoragemgmt") + +# we have a problem with RPM names that are too long for Joliet filesystem (WIP) +addFilter("filename-too-long-for-joliet") + +# ceph-base intentionally calls its logrotate file "etc/logrotate.d/ceph" +addFilter("ceph-base.*incoherent-logrotate-file") + +# many ceph executables might not be relinquishing groups (WIP) +addFilter("missing-call-to-setgroups-before-setuid") + +# package summary might intentionally contain the word "Ceph" +addFilter("name-repeated-in-summary") + +# the ceph RPM should be of the noarch architecture because it contains no binaries (WIP) +addFilter("ceph.*no-binary") + +# cephfs-shell might be missing a Requires (WIP) +addFilter("cephfs-shell.*no-dependency-on.*python-base") + +# ceph-osd ships /etc/sudoers.d/ceph-osd-smartctl without %config (WIP) +addFilter("ceph-osd.*non-conffile-in-etc.*sudoers") + +# cephadm ships /etc/sudoers.d/cephadm without %config (WIP) +addFilter("cephadm.*non-conffile-in-etc.*sudoers") + +# ceph-osd ships /usr/lib/sysctl.d/90-ceph-osd.conf with %config (WIP) +addFilter("ceph-osd.*non-etc-or-var-file-marked-as-conffile.*sysctl.d") + +# ceph-dashboard ships several scripts that don't have executable bit set (WIP) +addFilter("ceph-mgr-dashboard.*non-executable-script") + +# ceph-mgr-rook ships a script that doesn't have executable bit set (WIP) +addFilter("ceph-mgr-rook.*non-executable-script.*generate_rook_ceph_client.sh") + +# some devel packages obsolete the deprecated "ceph-devel" package without providing it (WIP) +addFilter("obsolete-not-provided.*ceph-devel") + +# libcephfs2 obsoletes libcephfs1 without providing it (WIP) +addFilter("libcephfs2.*obsolete-not-provided.*libcephfs1") + +# bsc#1150366 is open - http://bugzilla.suse.com/show_bug.cgi?id=1150366 +addFilter("ceph-common.*permissions-directory-setuid-bit") + +# /usr/bin/radosgw has the wrong permissions (WIP) +addFilter("ceph-radosgw.*permissions-incorrect.*radosgw") + +# /usr/bin/radosgw has the wrong owner root:root - should be root:www (WIP) +addFilter("ceph-radosgw.*permissions-incorrect-owner.*radosgw") + +# ceph-radosgw is missing %set_permissions /usr/bin/radosgw in %post (WIP) +addFilter("ceph-radosgw.*permissions-missing-postin.*radosgw") + +# ceph-radosgw is missing 'permissions' in PreReq - needs "PreReq: permissions" (WIP) +addFilter("ceph-radosgw.*permissions-missing-requires") + +# ceph-common and ceph-radosgw are missing '%verify_permissions -e /usr/bin/radosgw' (WIP) +addFilter("ceph-common.*permissions-missing-verifyscript") +addFilter("ceph-radosgw.*permissions-missing-verifyscript") + +# librgw2 calls exit() or _exit(), probably in a non-fork() context (WIP) +addFilter("librgw2.*shared-lib-calls-exit") + +# ceph-base ships with shared libraries - these are internal and upstream does +# not want to split them into separate RPMS +addFilter("ceph-base.*shlib-policy-missing-suffix") + +# the ceph RPM is a "meta" RPM without any files. These are discouraged by SUSE, +# but upstream relies on this construct and we just have to live with it. +addFilter("ceph\..*suse-filelist-empty") + +# ceph-common ships bash-completion files in the wrong directory (WIP) +addFilter("ceph-common.*suse-filelist-forbidden-bashcomp-userdirs") + +# ceph-base ships a logrotate file in /etc/logrotate.d/ceph but does not not +# package the log directory /var/log/ceph (WIP) +addFilter("ceph-base.*suse-logrotate-log-dir-not-packaged") + +# our packages are missing "rcFOO" symlinks - I doubt if this is worth fixing +addFilter("suse-missing-rclink") + +# %post scriptlets do not call service_add_post (WIP) +addFilter("systemd-service-without-service_add_post") + +# %pre scriptlets do not call service_add_pre (WIP) +addFilter("systemd-service-without-service_add_pre") + +# %postun scriptlets do not call service_del_postun (WIP) +addFilter("systemd-service-without-service_del_postun") + +# %preun scriptlets do not call service_del_preun (WIP) +addFilter("systemd-service-without-service_del_preun") + +# /run/ceph needs to be added to %files section as %ghost (WIP) +addFilter("ceph-common.*tmpfile-not-in-filelist") + +# ceph-radosgw ships a SO that belongs in librgw-devel (WIP) +addFilter("ceph-radosgw.*devel-file-in-non-devel-package") + diff --git a/ceph-test.changes b/ceph-test.changes index 1ddd0a5..5a20104 100644 --- a/ceph-test.changes +++ b/ceph-test.changes @@ -1,8 +1,125 @@ ------------------------------------------------------------------- -Fri Dec 13 12:33:34 UTC 2019 - Nathan Cutler +Tue Feb 25 12:55:29 UTC 2020 - Nathan Cutler -- Update to 15.0.0-8441-g88a99a841e - + spec: fix cephadm user/group creation +- significant changes since the last Factory SR: + + ceph-rpmlintrc: silence RPMLINT warnings and document ones that are in + the process of being fixed ("WIP") + + fix s390x build failure + + fix GCC 10 build failure (boo#1161086) + + spec: Use pkgconfig() style BuildRequires for udev/libudev-devel + +------------------------------------------------------------------- +Tue Feb 25 10:24:26 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-1207-g89308cc4c6: + + rebase on tip of upstream master, SHA1 0ffbe4a5ef73036309a3c6488be4dbb1b667a4c7 + + drop temporary fix "cephadm: Don't call prepare-host from bootstrap" + +------------------------------------------------------------------- +Fri Feb 21 07:46:56 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-951-g36f83482b6c: + + cephadm: Don't call prepare-host from bootstrap + (temporary fix to keep cephadm running on SUSE after upstream merged + 932ac9342483141f10dbf99d1806d81a4d70a26a) + +------------------------------------------------------------------- +Thu Feb 20 10:21:39 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-950-g0ba22d2e46: + + rebase on tip of upstream master, SHA1 e79e42467970c1be210d674e90dab21ce73e2872 + * mgr/orch: resurrect ServiceDescription, 'orch ls' + +------------------------------------------------------------------- +Mon Feb 17 16:08:29 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-818-g5f8ed0e957: + + rebase on tip of upstream master, SHA1 eb72aebb92f1bfce00aedaebf140789871eb943f + * includes "mgr/orch: new cli, phase 2" patches (PR#33244) needed + by latest ceph-bootstrap + +------------------------------------------------------------------- +Thu Feb 13 13:45:52 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-636-g2280954009: + + rebase on tip of upstream master, SHA1 e36d47a8c3f4181d68a4cd680bdde72064dee910 + +------------------------------------------------------------------- +Mon Feb 3 14:59:02 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-168-gfda88e35c8: + + rebase on tip of upstream master, SHA1 80487f4a604da94778e65f666e1177a3ed84543e + + spec: Use pkgconfig() style BuildRequires for udev/libudev-devel + +------------------------------------------------------------------- +Thu Jan 30 13:08:38 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-10092-gb5fd1b8250: + + rebase on tip of upstream master, SHA1 3913835a8f0b9b34ceffd4dc02e1e8203227be02 + +------------------------------------------------------------------- +Thu Jan 23 12:45:20 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9544-gefdea72067: + + cmake: Improve test for 16-byte atomic support on IBM Z (bsc#1161688) + +------------------------------------------------------------------- +Tue Jan 21 11:09:45 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9543-g1c7fc80ba1: + + rebase on tip of upstream master, SHA1 089e97c27013612672099281fad76746f19290e3 + +------------------------------------------------------------------- +Mon Jan 20 16:03:16 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9494-g22cdfe7b96: + + rebase on tip of upstream master, SHA1 26c66630bd98dfce113f66ab4e081e5a7b0216c0 + +------------------------------------------------------------------- +Tue Jan 7 17:49:34 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9092-gd050bc3f0a: + + rebase on tip of upstream master, SHA1 dfd90da59c0b2eda9ca61fed1d508ddc2ab32a2b + +------------------------------------------------------------------- +Thu Dec 19 13:09:54 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8683-gb78b3635a5: + + rebase on tip of upstream master, SHA1 3e1e6a6694bb133c57e2b05a6316dcebae390815 + + drop libxio Provides/Obsoletes (they are no longer necessary because libxio + is long gone) + + drop runtime dependency on gptfdisk (it was needed for ceph-disk, + which has since been removed) + + spec: drop "_python_buildid" macro (it was needed to support py2 builds, + which upstream is finally moving away from) + +------------------------------------------------------------------- +Wed Dec 18 14:21:48 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8588-g58b5b29433: + + spec, debian: cephadm requires lvm2 (bsc#1159466) + +------------------------------------------------------------------- +Wed Dec 18 08:01:17 UTC 2019 - Nathan Cutler + +- ceph-rpmlintrc: fix syntax error introduced by change mentioned + in previous changelog entry + +------------------------------------------------------------------- +Tue Dec 17 16:08:38 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8587-gf0521c1db5: + + rebase on tip of upstream master, SHA1 068aafb2ea3c71b5adda79467847ee03b77bb35e + * cephadm: do ceph-volume activate+deactivate as part of systemd unit + +------------------------------------------------------------------- +Mon Dec 16 12:36:02 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8442-g094a533242: + + spec: + * fix cephadm user/group creation + * cephadm subpackage: start summary with a capital letter + + ceph-rpmlintrc: silence some RPMLINT warnings ------------------------------------------------------------------- Thu Dec 12 12:07:37 UTC 2019 - Nathan Cutler diff --git a/ceph-test.spec b/ceph-test.spec index b7bb1b5..5e64b65 100644 --- a/ceph-test.spec +++ b/ceph-test.spec @@ -21,6 +21,7 @@ # bcond syntax! ################################################################################# %bcond_with make_check +%bcond_with cmake_verbose_logging %bcond_without ceph_test_package %bcond_with minimal_debugging_information %ifarch s390 s390x @@ -65,13 +66,6 @@ %endif %endif %bcond_with seastar -%if 0%{?fedora} >= 29 || 0%{?suse_version} >= 1500 || 0%{?rhel} >= 8 -# distros that need a py3 Ceph build -%bcond_with python2 -%else -# distros that need a py2 Ceph build -%bcond_without python2 -%endif %if 0%{?fedora} || 0%{?suse_version} >= 1500 # distros that ship cmd2 and/or colorama %bcond_without cephfs_shell @@ -79,26 +73,27 @@ # distros that do _not_ ship cmd2/colorama %bcond_with cephfs_shell %endif -%if 0%{without python2} -%global _defined_if_python2_absent 1 -%endif -%if 0%{?fedora} || 0%{?suse_version} +%if 0%{?fedora} || 0%{?suse_version} || 0%{?rhel} >= 8 %global weak_deps 1 %endif %if %{with selinux} # get selinux policy version +# Force 0.0.0 policy version for centos builds to avoid repository sync issues between rhel and centos +%if 0%{?centos} +%global _selinux_policy_version 0.0.0 +%else %{!?_selinux_policy_version: %global _selinux_policy_version 0.0.0} %endif +%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} -# define _python_buildid macro which will expand to the empty string when -# building with python2 -%global _python_buildid %{?_defined_if_python2_absent:%{python3_pkgversion}} - +%if 0%{?rhel} == 7 +%define __python %{__python3} +%endif # unify libexec for all targets %global _libexecdir %{_exec_prefix}/lib @@ -109,7 +104,7 @@ # main package definition ################################################################################# Name: ceph-test -Version: 15.0.0.8441+g88a99a841e +Version: 15.1.0.1207+g89308cc4c6 Release: 0%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 @@ -125,7 +120,7 @@ License: LGPL-2.1 and LGPL-3.0 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD- Group: System/Filesystems %endif URL: http://ceph.com/ -Source0: %{?_remote_tarball_prefix}ceph-15.0.0-8441-g88a99a841e.tar.bz2 +Source0: %{?_remote_tarball_prefix}ceph-15.1.0-1207-g89308cc4c6.tar.bz2 %if 0%{?suse_version} Source96: checkin.sh Source97: README-checkin.txt @@ -183,7 +178,7 @@ BuildRequires: libaio-devel BuildRequires: libblkid-devel >= 2.17 BuildRequires: libcurl-devel BuildRequires: libcap-ng-devel -BuildRequires: libudev-devel +BuildRequires: pkgconfig(libudev) BuildRequires: libnl3-devel BuildRequires: liboath-devel BuildRequires: libtool @@ -195,11 +190,11 @@ BuildRequires: patch BuildRequires: perl BuildRequires: pkgconfig BuildRequires: procps -BuildRequires: python%{_python_buildid} -BuildRequires: python%{_python_buildid}-devel +BuildRequires: python%{python3_pkgversion} +BuildRequires: python%{python3_pkgversion}-devel BuildRequires: snappy-devel BuildRequires: sudo -BuildRequires: udev +BuildRequires: pkgconfig(udev) BuildRequires: util-linux BuildRequires: valgrind-devel BuildRequires: which @@ -216,11 +211,33 @@ BuildRequires: librdkafka-devel %if 0%{with make_check} BuildRequires: jq BuildRequires: libuuid-devel -BuildRequires: python%{_python_buildid}-bcrypt -BuildRequires: python%{_python_buildid}-nose -BuildRequires: python%{_python_buildid}-requests -BuildRequires: python%{_python_buildid}-six -BuildRequires: python%{_python_buildid}-virtualenv +%if 0%{?rhel} == 7 +BuildRequires: python%{python3_version_nodots}-bcrypt +BuildRequires: python%{python3_version_nodots}-nose +BuildRequires: python%{python3_version_nodots}-requests +%else +BuildRequires: python%{python3_pkgversion}-bcrypt +BuildRequires: python%{python3_pkgversion}-nose +BuildRequires: python%{python3_pkgversion}-pecan +BuildRequires: python%{python3_pkgversion}-requests +%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 seastar} @@ -253,10 +270,10 @@ BuildRequires: openldap2-devel #BuildRequires: krb5 #BuildRequires: krb5-devel BuildRequires: cunit-devel -BuildRequires: python%{_python_buildid}-setuptools -BuildRequires: python%{_python_buildid}-Cython -BuildRequires: python%{_python_buildid}-PrettyTable -BuildRequires: python%{_python_buildid}-Sphinx +BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: python%{python3_pkgversion}-Cython +BuildRequires: python%{python3_pkgversion}-PrettyTable +BuildRequires: python%{python3_pkgversion}-Sphinx BuildRequires: rdma-core-devel BuildRequires: liblz4-devel >= 1.7 # for prometheus-alerts @@ -274,9 +291,6 @@ 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} == 7 @@ -284,48 +298,46 @@ BuildRequires: python%{python3_version_nodots}-Cython %else BuildRequires: python%{python3_pkgversion}-Cython %endif -BuildRequires: python%{_python_buildid}-prettytable -BuildRequires: python%{_python_buildid}-sphinx +BuildRequires: python%{python3_pkgversion}-prettytable +BuildRequires: python%{python3_pkgversion}-sphinx BuildRequires: lz4-devel >= 1.7 %endif # distro-conditional make check dependencies %if 0%{with make_check} %if 0%{?fedora} || 0%{?rhel} -%if 0%{?fedora} || 0%{?rhel} == 7 BuildRequires: libtool-ltdl-devel -BuildRequires: python%{_python_buildid}-cherrypy -BuildRequires: python%{_python_buildid}-coverage -BuildRequires: python%{_python_buildid}-jwt -BuildRequires: python%{_python_buildid}-routes -BuildRequires: python%{_python_buildid}-pecan -BuildRequires: python%{_python_buildid}-tox -BuildRequires: python%{_python_buildid}-werkzeug BuildRequires: xmlsec1 BuildRequires: xmlsec1-devel +%ifarch x86_64 BuildRequires: xmlsec1-nss +%endif BuildRequires: xmlsec1-openssl BuildRequires: xmlsec1-openssl-devel %if 0%{?rhel} == 7 -BuildRequires: pyOpenSSL%{_python_buildid} +BuildRequires: python%{python3_version_nodots}-jwt +BuildRequires: python%{python3_version_nodots}-scipy %else -BuildRequires: python%{_python_buildid}-pyOpenSSL +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 BuildRequires: libxmlsec1-openssl1 -BuildRequires: python%{_python_buildid}-CherryPy -BuildRequires: python%{_python_buildid}-PyJWT -BuildRequires: python%{_python_buildid}-Routes -BuildRequires: python%{_python_buildid}-Werkzeug -BuildRequires: python%{_python_buildid}-coverage -BuildRequires: python%{_python_buildid}-numpy-devel -BuildRequires: python%{_python_buildid}-pecan -BuildRequires: python%{_python_buildid}-pyOpenSSL -BuildRequires: python%{_python_buildid}-tox -BuildRequires: rpm-build +BuildRequires: python%{python3_pkgversion}-CherryPy +BuildRequires: python%{python3_pkgversion}-PyJWT +BuildRequires: python%{python3_pkgversion}-Routes +BuildRequires: python%{python3_pkgversion}-Werkzeug +BuildRequires: python%{python3_pkgversion}-numpy-devel BuildRequires: xmlsec1-devel BuildRequires: xmlsec1-openssl-devel %endif @@ -382,6 +394,8 @@ This package contains Ceph benchmarks and test tools. %endif %if 0%{?weak_deps} %endif +%if 0%{?weak_deps} +%endif %if 0%{?suse_version} %endif %if 0%{?fedora} || 0%{?rhel} @@ -398,38 +412,38 @@ This package contains Ceph benchmarks and test tools. %endif %if 0%{?suse_version} %endif +%if 0%{?rhel} == 7 +%endif +%if 0%{?weak_deps} +%endif +%if 0%{?suse_version} +%endif %if 0%{?fedora} || 0%{?rhel} %endif %if 0%{?suse_version} %endif +%if 0%{?rhel} == 7 +%endif +%if 0%{?suse_version} +%endif +%if 0%{?rhel} == 7 +%endif +%if 0%{?suse_version} +%endif +%if 0%{without python2} +%endif +%if 0%{?suse_version} +%endif +%if 0%{?rhel} == 7 +%endif +%if 0%{?fedora} || 0%{?rhel} >= 8 +%endif +%if 0%{?suse_version} +%endif %if 0%{?weak_deps} %endif -%if 0%{?rhel} == 7 -%endif %if 0%{?suse_version} %endif -%if 0%{?fedora} || 0%{?rhel} -%endif -%if 0%{?suse_version} -%endif -%if 0%{?rhel} == 7 -%endif -%if 0%{?suse_version} -%endif -%if 0%{?fedora} || 0%{?rhel} > 7 || 0%{?suse_version} -%if 0%{without python2} -%endif -%endif -%if 0%{?rhel} == 7 -%endif -%if 0%{?suse_version} -%endif -%if 0%{?suse_version} -%endif -%if 0%{?suse_version} -%endif -%if 0%{?fedora} || 0%{?rhel} -%endif %if 0%{?suse_version} %endif %if 0%{?suse_version} @@ -476,22 +490,10 @@ This package contains Ceph benchmarks and test tools. %endif %if 0%{?suse_version} %endif -%if 0%{with python2} %if 0%{?suse_version} %endif -%endif %if 0%{?suse_version} %endif -%if 0%{without python2} -%endif -%if 0%{with python2} -%if 0%{?suse_version} -%endif -%endif -%if 0%{?suse_version} -%endif -%if 0%{without python2} -%endif %if 0%{with libradosstriper} %if 0%{?suse_version} %endif @@ -506,38 +508,18 @@ This package contains Ceph benchmarks and test tools. %endif %if 0%{?suse_version} %endif -%if 0%{with python2} %if 0%{?suse_version} %endif -%endif -%if 0%{?suse_version} -%endif -%if 0%{without python2} -%endif %if 0%{?suse_version} %endif %if 0%{?rhel} || 0%{?fedora} %endif %if 0%{?suse_version} %endif -%if 0%{with python2} %if 0%{?suse_version} %endif -%endif %if 0%{?suse_version} %endif -%if 0%{without python2} -%endif -%if 0%{with python2} -%if 0%{?suse_version} -%endif -%endif -%if 0%{?suse_version} -%endif -%if 0%{with python2} -%if 0%{?suse_version} -%endif -%endif %if 0%{?suse_version} %endif %if 0%{with cephfs_shell} @@ -560,16 +542,12 @@ This package contains Ceph benchmarks and test tools. %if 0%{?suse_version} %endif %endif -%if 0%{with python2} -%if 0%{?suse_version} -%endif -%endif %if 0%{?suse_version} %endif %if 0%{?suse_version} %endif %prep -%autosetup -p1 -n ceph-15.0.0-8441-g88a99a841e +%autosetup -p1 -n ceph-15.1.0-1207-g89308cc4c6 %build # LTO can be enabled as soon as the following GCC bug is fixed: @@ -644,13 +622,6 @@ ${CMAKE} .. \ -DWITH_MANPAGE=ON \ -DWITH_PYTHON3=%{python3_version} \ -DWITH_MGR_DASHBOARD_FRONTEND=OFF \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -%if %{with python2} - -DWITH_PYTHON2=ON \ -%else - -DWITH_PYTHON2=OFF \ - -DMGR_PYTHON_VERSION=3 \ -%endif %if 0%{without ceph_test_package} -DWITH_TESTS=OFF \ %endif @@ -693,10 +664,18 @@ ${CMAKE} .. \ -DWITH_RADOSGW_KAFKA_ENDPOINT=ON \ %else -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF \ +%endif +%if 0%{with cmake_verbose_logging} + -DCMAKE_VERBOSE_MAKEFILE=ON \ %endif -DBOOST_J=$CEPH_SMP_NCPUS \ -DWITH_GRAFANA=ON +%if %{with cmake_verbose_logging} +cat ./CMakeFiles/CMakeOutput.log +cat ./CMakeFiles/CMakeError.log +%endif + make "$CEPH_MFLAGS_JOBS" @@ -811,8 +790,6 @@ rm -rf %{buildroot}%{_sysconfdir}/logrotate.d/ceph rm -rf %{buildroot}%{_sysconfdir}/sysconfig/ceph rm -rf %{buildroot}%{_fillupdir}/sysconfig.* rm -rf %{buildroot}%{_unitdir}/ceph.target -rm -rf %{buildroot}%{python_sitelib}/ceph_volume/* -rm -rf %{buildroot}%{python_sitelib}/ceph_volume-* rm -rf %{buildroot}%{python3_sitelib}/ceph_volume/* rm -rf %{buildroot}%{python3_sitelib}/ceph_volume-* rm -rf %{buildroot}%{_mandir}/man8/ceph-deploy.8* @@ -875,21 +852,25 @@ rm -rf %{buildroot}%{_mandir}/man8/ceph-mds.8* rm -rf %{buildroot}%{_unitdir}/ceph-mds@.service rm -rf %{buildroot}%{_unitdir}/ceph-mds.target rm -rf %{buildroot}%{_bindir}/ceph-mgr +rm -rf %{buildroot}%{_datadir}/ceph/mgr/mgr_module.* +rm -rf %{buildroot}%{_datadir}/ceph/mgr/mgr_util.* +rm -rf %{buildroot}%{_datadir}/ceph/mgr/__pycache__ +rm -rf %{buildroot}%{_unitdir}/ceph-mgr@.service +rm -rf %{buildroot}%{_unitdir}/ceph-mgr.target +rm -rf %{buildroot}%{_datadir}/ceph/mgr/dashboard +rm -rf %{buildroot}%{_datadir}/ceph/mgr/diskprediction_local +rm -rf %{buildroot}%{_datadir}/ceph/mgr/diskprediction_cloud rm -rf %{buildroot}%{_datadir}/ceph/mgr/alerts -rm -rf %{buildroot}%{_datadir}/ceph/mgr/ansible rm -rf %{buildroot}%{_datadir}/ceph/mgr/balancer rm -rf %{buildroot}%{_datadir}/ceph/mgr/crash -rm -rf %{buildroot}%{_datadir}/ceph/mgr/deepsea rm -rf %{buildroot}%{_datadir}/ceph/mgr/devicehealth rm -rf %{buildroot}%{_datadir}/ceph/mgr/influx rm -rf %{buildroot}%{_datadir}/ceph/mgr/insights rm -rf %{buildroot}%{_datadir}/ceph/mgr/iostat rm -rf %{buildroot}%{_datadir}/ceph/mgr/localpool -rm -rf %{buildroot}%{_datadir}/ceph/mgr/mgr_module.* -rm -rf %{buildroot}%{_datadir}/ceph/mgr/mgr_util.* -rm -rf %{buildroot}%{_datadir}/ceph/mgr/orchestrator_cli -rm -rf %{buildroot}%{_datadir}/ceph/mgr/orchestrator.* +rm -rf %{buildroot}%{_datadir}/ceph/mgr/orchestrator rm -rf %{buildroot}%{_datadir}/ceph/mgr/osd_perf_query +rm -rf %{buildroot}%{_datadir}/ceph/mgr/osd_support rm -rf %{buildroot}%{_datadir}/ceph/mgr/pg_autoscaler rm -rf %{buildroot}%{_datadir}/ceph/mgr/progress rm -rf %{buildroot}%{_datadir}/ceph/mgr/prometheus @@ -902,11 +883,6 @@ rm -rf %{buildroot}%{_datadir}/ceph/mgr/telemetry rm -rf %{buildroot}%{_datadir}/ceph/mgr/test_orchestrator rm -rf %{buildroot}%{_datadir}/ceph/mgr/volumes rm -rf %{buildroot}%{_datadir}/ceph/mgr/zabbix -rm -rf %{buildroot}%{_unitdir}/ceph-mgr@.service -rm -rf %{buildroot}%{_unitdir}/ceph-mgr.target -rm -rf %{buildroot}%{_datadir}/ceph/mgr/dashboard -rm -rf %{buildroot}%{_datadir}/ceph/mgr/diskprediction_local -rm -rf %{buildroot}%{_datadir}/ceph/mgr/diskprediction_cloud rm -rf %{buildroot}%{_datadir}/ceph/mgr/rook rm -rf %{buildroot}%{_datadir}/ceph/mgr/k8sevents rm -rf %{buildroot}%{_datadir}/ceph/mgr/cephadm @@ -936,6 +912,7 @@ rm -rf %{buildroot}%{_bindir}/radosgw rm -rf %{buildroot}%{_bindir}/radosgw-token rm -rf %{buildroot}%{_bindir}/radosgw-es rm -rf %{buildroot}%{_bindir}/radosgw-object-expirer +rm -rf %{buildroot}%{_libdir}/libradosgw.so* rm -rf %{buildroot}%{_mandir}/man8/radosgw.8* rm -rf %{buildroot}%{_unitdir}/ceph-radosgw@.service rm -rf %{buildroot}%{_unitdir}/ceph-radosgw.target @@ -976,8 +953,6 @@ rm -rf %{buildroot}%{_includedir}/rados/librados.hpp rm -rf %{buildroot}%{_includedir}/rados/librados_fwd.hpp rm -rf %{buildroot}%{_includedir}/rados/page.h rm -rf %{buildroot}%{_includedir}/rados/rados_types.hpp -rm -rf %{buildroot}%{python_sitearch}/rados.so -rm -rf %{buildroot}%{python_sitearch}/rados-*.egg-info rm -rf %{buildroot}%{python3_sitearch}/rados.cpython*.so rm -rf %{buildroot}%{python3_sitearch}/rados-*.egg-info rm -rf %{buildroot}%{_libdir}/libradosstriper.so.* @@ -1002,33 +977,22 @@ rm -rf %{buildroot}%{_libdir}/librgw.so rm -rf %{buildroot}%{_libdir}/librgw_admin_user.so rm -rf %{buildroot}%{_libdir}/librgw_op_tp.so rm -rf %{buildroot}%{_libdir}/librgw_rados_tp.so -rm -rf %{buildroot}%{python_sitearch}/rgw.so -rm -rf %{buildroot}%{python_sitearch}/rgw-*.egg-info rm -rf %{buildroot}%{python3_sitearch}/rgw.cpython*.so rm -rf %{buildroot}%{python3_sitearch}/rgw-*.egg-info -rm -rf %{buildroot}%{python_sitearch}/rbd.so -rm -rf %{buildroot}%{python_sitearch}/rbd-*.egg-info rm -rf %{buildroot}%{python3_sitearch}/rbd.cpython*.so rm -rf %{buildroot}%{python3_sitearch}/rbd-*.egg-info rm -rf %{buildroot}%{_libdir}/libcephfs.so.* rm -rf %{buildroot}%{_includedir}/cephfs/libcephfs.h rm -rf %{buildroot}%{_includedir}/cephfs/ceph_statx.h rm -rf %{buildroot}%{_libdir}/libcephfs.so -rm -rf %{buildroot}%{python_sitearch}/cephfs.so -rm -rf %{buildroot}%{python_sitearch}/cephfs-*.egg-info -rm -rf %{buildroot}%{python_sitelib}/ceph_volume_client.py* rm -rf %{buildroot}%{python3_sitearch}/cephfs.cpython*.so rm -rf %{buildroot}%{python3_sitearch}/cephfs-*.egg-info rm -rf %{buildroot}%{python3_sitelib}/ceph_volume_client.py rm -rf %{buildroot}%{python3_sitelib}/__pycache__/ceph_volume_client.cpython*.py* -rm -rf %{buildroot}%{python_sitelib}/ceph_argparse.py* -rm -rf %{buildroot}%{python_sitelib}/ceph_daemon.py* rm -rf %{buildroot}%{python3_sitelib}/ceph_argparse.py rm -rf %{buildroot}%{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py* rm -rf %{buildroot}%{python3_sitelib}/ceph_daemon.py rm -rf %{buildroot}%{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py* -rm -rf %{buildroot}%{python_sitelib}/ceph -rm -rf %{buildroot}%{python_sitelib}/ceph-*.egg-info rm -rf %{buildroot}%{python3_sitelib}/ceph rm -rf %{buildroot}%{python3_sitelib}/ceph-*.egg-info rm -rf %{buildroot}%{python3_sitelib}/cephfs_shell-*.egg-info @@ -1070,8 +1034,6 @@ rm -rf %{buildroot} %endif %if 0%{?suse_version} %endif -%if 0%{with python2} -%endif %if 0%{?suse_version} %endif %if 0%{?fedora} || 0%{?rhel} @@ -1106,6 +1068,8 @@ rm -rf %{buildroot} %endif %if 0%{?fedora} || 0%{?rhel} %endif +%if 0%{?rhel} == 7 +%endif %if 0%{?suse_version} %endif %if 0%{?fedora} || 0%{?rhel} @@ -1188,8 +1152,6 @@ rm -rf %{buildroot} %endif %if %{with lttng} %endif -%if 0%{with python2} -%endif %if 0%{with libradosstriper} %endif %if %{with lttng} @@ -1200,16 +1162,6 @@ rm -rf %{buildroot} %endif %if %{with lttng} %endif -%if 0%{with python2} -%endif -%if 0%{with python2} -%endif -%if 0%{with python2} -%endif -%if 0%{with python2} -%endif -%if 0%{with python2} -%endif %if 0%{with cephfs_shell} %endif %if 0%{with ceph_test_package} @@ -1245,8 +1197,6 @@ rm -rf %{buildroot} %endif %if 0%{with selinux} %endif # with selinux -%if 0%{with python2} -%endif %if 0%{?suse_version} %endif %if 0%{?suse_version} diff --git a/ceph.changes b/ceph.changes index 1ddd0a5..5a20104 100644 --- a/ceph.changes +++ b/ceph.changes @@ -1,8 +1,125 @@ ------------------------------------------------------------------- -Fri Dec 13 12:33:34 UTC 2019 - Nathan Cutler +Tue Feb 25 12:55:29 UTC 2020 - Nathan Cutler -- Update to 15.0.0-8441-g88a99a841e - + spec: fix cephadm user/group creation +- significant changes since the last Factory SR: + + ceph-rpmlintrc: silence RPMLINT warnings and document ones that are in + the process of being fixed ("WIP") + + fix s390x build failure + + fix GCC 10 build failure (boo#1161086) + + spec: Use pkgconfig() style BuildRequires for udev/libudev-devel + +------------------------------------------------------------------- +Tue Feb 25 10:24:26 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-1207-g89308cc4c6: + + rebase on tip of upstream master, SHA1 0ffbe4a5ef73036309a3c6488be4dbb1b667a4c7 + + drop temporary fix "cephadm: Don't call prepare-host from bootstrap" + +------------------------------------------------------------------- +Fri Feb 21 07:46:56 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-951-g36f83482b6c: + + cephadm: Don't call prepare-host from bootstrap + (temporary fix to keep cephadm running on SUSE after upstream merged + 932ac9342483141f10dbf99d1806d81a4d70a26a) + +------------------------------------------------------------------- +Thu Feb 20 10:21:39 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-950-g0ba22d2e46: + + rebase on tip of upstream master, SHA1 e79e42467970c1be210d674e90dab21ce73e2872 + * mgr/orch: resurrect ServiceDescription, 'orch ls' + +------------------------------------------------------------------- +Mon Feb 17 16:08:29 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-818-g5f8ed0e957: + + rebase on tip of upstream master, SHA1 eb72aebb92f1bfce00aedaebf140789871eb943f + * includes "mgr/orch: new cli, phase 2" patches (PR#33244) needed + by latest ceph-bootstrap + +------------------------------------------------------------------- +Thu Feb 13 13:45:52 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-636-g2280954009: + + rebase on tip of upstream master, SHA1 e36d47a8c3f4181d68a4cd680bdde72064dee910 + +------------------------------------------------------------------- +Mon Feb 3 14:59:02 UTC 2020 - Nathan Cutler + +- Update to 15.1.0-168-gfda88e35c8: + + rebase on tip of upstream master, SHA1 80487f4a604da94778e65f666e1177a3ed84543e + + spec: Use pkgconfig() style BuildRequires for udev/libudev-devel + +------------------------------------------------------------------- +Thu Jan 30 13:08:38 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-10092-gb5fd1b8250: + + rebase on tip of upstream master, SHA1 3913835a8f0b9b34ceffd4dc02e1e8203227be02 + +------------------------------------------------------------------- +Thu Jan 23 12:45:20 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9544-gefdea72067: + + cmake: Improve test for 16-byte atomic support on IBM Z (bsc#1161688) + +------------------------------------------------------------------- +Tue Jan 21 11:09:45 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9543-g1c7fc80ba1: + + rebase on tip of upstream master, SHA1 089e97c27013612672099281fad76746f19290e3 + +------------------------------------------------------------------- +Mon Jan 20 16:03:16 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9494-g22cdfe7b96: + + rebase on tip of upstream master, SHA1 26c66630bd98dfce113f66ab4e081e5a7b0216c0 + +------------------------------------------------------------------- +Tue Jan 7 17:49:34 UTC 2020 - Nathan Cutler + +- Update to 15.0.0-9092-gd050bc3f0a: + + rebase on tip of upstream master, SHA1 dfd90da59c0b2eda9ca61fed1d508ddc2ab32a2b + +------------------------------------------------------------------- +Thu Dec 19 13:09:54 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8683-gb78b3635a5: + + rebase on tip of upstream master, SHA1 3e1e6a6694bb133c57e2b05a6316dcebae390815 + + drop libxio Provides/Obsoletes (they are no longer necessary because libxio + is long gone) + + drop runtime dependency on gptfdisk (it was needed for ceph-disk, + which has since been removed) + + spec: drop "_python_buildid" macro (it was needed to support py2 builds, + which upstream is finally moving away from) + +------------------------------------------------------------------- +Wed Dec 18 14:21:48 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8588-g58b5b29433: + + spec, debian: cephadm requires lvm2 (bsc#1159466) + +------------------------------------------------------------------- +Wed Dec 18 08:01:17 UTC 2019 - Nathan Cutler + +- ceph-rpmlintrc: fix syntax error introduced by change mentioned + in previous changelog entry + +------------------------------------------------------------------- +Tue Dec 17 16:08:38 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8587-gf0521c1db5: + + rebase on tip of upstream master, SHA1 068aafb2ea3c71b5adda79467847ee03b77bb35e + * cephadm: do ceph-volume activate+deactivate as part of systemd unit + +------------------------------------------------------------------- +Mon Dec 16 12:36:02 UTC 2019 - Nathan Cutler + +- Update to 15.0.0-8442-g094a533242: + + spec: + * fix cephadm user/group creation + * cephadm subpackage: start summary with a capital letter + + ceph-rpmlintrc: silence some RPMLINT warnings ------------------------------------------------------------------- Thu Dec 12 12:07:37 UTC 2019 - Nathan Cutler diff --git a/ceph.spec b/ceph.spec index 038ec15..bcf249a 100644 --- a/ceph.spec +++ b/ceph.spec @@ -21,6 +21,7 @@ # bcond syntax! ################################################################################# %bcond_with make_check +%bcond_with cmake_verbose_logging %bcond_with ceph_test_package %bcond_with minimal_debugging_information %ifarch s390 s390x @@ -65,13 +66,6 @@ %endif %endif %bcond_with seastar -%if 0%{?fedora} >= 29 || 0%{?suse_version} >= 1500 || 0%{?rhel} >= 8 -# distros that need a py3 Ceph build -%bcond_with python2 -%else -# distros that need a py2 Ceph build -%bcond_without python2 -%endif %if 0%{?fedora} || 0%{?suse_version} >= 1500 # distros that ship cmd2 and/or colorama %bcond_without cephfs_shell @@ -79,26 +73,27 @@ # distros that do _not_ ship cmd2/colorama %bcond_with cephfs_shell %endif -%if 0%{without python2} -%global _defined_if_python2_absent 1 -%endif -%if 0%{?fedora} || 0%{?suse_version} +%if 0%{?fedora} || 0%{?suse_version} || 0%{?rhel} >= 8 %global weak_deps 1 %endif %if %{with selinux} # get selinux policy version +# Force 0.0.0 policy version for centos builds to avoid repository sync issues between rhel and centos +%if 0%{?centos} +%global _selinux_policy_version 0.0.0 +%else %{!?_selinux_policy_version: %global _selinux_policy_version 0.0.0} %endif +%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} -# define _python_buildid macro which will expand to the empty string when -# building with python2 -%global _python_buildid %{?_defined_if_python2_absent:%{python3_pkgversion}} - +%if 0%{?rhel} == 7 +%define __python %{__python3} +%endif # unify libexec for all targets %global _libexecdir %{_exec_prefix}/lib @@ -109,7 +104,7 @@ # main package definition ################################################################################# Name: ceph -Version: 15.0.0.8441+g88a99a841e +Version: 15.1.0.1207+g89308cc4c6 Release: 0%{?dist} %if 0%{?fedora} || 0%{?rhel} Epoch: 2 @@ -125,7 +120,7 @@ License: LGPL-2.1 and LGPL-3.0 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD- Group: System/Filesystems %endif URL: http://ceph.com/ -Source0: %{?_remote_tarball_prefix}ceph-15.0.0-8441-g88a99a841e.tar.bz2 +Source0: %{?_remote_tarball_prefix}ceph-15.1.0-1207-g89308cc4c6.tar.bz2 %if 0%{?suse_version} # _insert_obs_source_lines_here ExclusiveArch: x86_64 aarch64 ppc64le s390x @@ -175,7 +170,7 @@ BuildRequires: libaio-devel BuildRequires: libblkid-devel >= 2.17 BuildRequires: libcurl-devel BuildRequires: libcap-ng-devel -BuildRequires: libudev-devel +BuildRequires: pkgconfig(libudev) BuildRequires: libnl3-devel BuildRequires: liboath-devel BuildRequires: libtool @@ -187,11 +182,11 @@ BuildRequires: patch BuildRequires: perl BuildRequires: pkgconfig BuildRequires: procps -BuildRequires: python%{_python_buildid} -BuildRequires: python%{_python_buildid}-devel +BuildRequires: python%{python3_pkgversion} +BuildRequires: python%{python3_pkgversion}-devel BuildRequires: snappy-devel BuildRequires: sudo -BuildRequires: udev +BuildRequires: pkgconfig(udev) BuildRequires: util-linux BuildRequires: valgrind-devel BuildRequires: which @@ -208,11 +203,33 @@ BuildRequires: librdkafka-devel %if 0%{with make_check} BuildRequires: jq BuildRequires: libuuid-devel -BuildRequires: python%{_python_buildid}-bcrypt -BuildRequires: python%{_python_buildid}-nose -BuildRequires: python%{_python_buildid}-requests -BuildRequires: python%{_python_buildid}-six -BuildRequires: python%{_python_buildid}-virtualenv +%if 0%{?rhel} == 7 +BuildRequires: python%{python3_version_nodots}-bcrypt +BuildRequires: python%{python3_version_nodots}-nose +BuildRequires: python%{python3_version_nodots}-requests +%else +BuildRequires: python%{python3_pkgversion}-bcrypt +BuildRequires: python%{python3_pkgversion}-nose +BuildRequires: python%{python3_pkgversion}-pecan +BuildRequires: python%{python3_pkgversion}-requests +%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 seastar} @@ -245,10 +262,10 @@ BuildRequires: openldap2-devel #BuildRequires: krb5 #BuildRequires: krb5-devel BuildRequires: cunit-devel -BuildRequires: python%{_python_buildid}-setuptools -BuildRequires: python%{_python_buildid}-Cython -BuildRequires: python%{_python_buildid}-PrettyTable -BuildRequires: python%{_python_buildid}-Sphinx +BuildRequires: python%{python3_pkgversion}-setuptools +BuildRequires: python%{python3_pkgversion}-Cython +BuildRequires: python%{python3_pkgversion}-PrettyTable +BuildRequires: python%{python3_pkgversion}-Sphinx BuildRequires: rdma-core-devel BuildRequires: liblz4-devel >= 1.7 # for prometheus-alerts @@ -266,9 +283,6 @@ 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} == 7 @@ -276,48 +290,46 @@ BuildRequires: python%{python3_version_nodots}-Cython %else BuildRequires: python%{python3_pkgversion}-Cython %endif -BuildRequires: python%{_python_buildid}-prettytable -BuildRequires: python%{_python_buildid}-sphinx +BuildRequires: python%{python3_pkgversion}-prettytable +BuildRequires: python%{python3_pkgversion}-sphinx BuildRequires: lz4-devel >= 1.7 %endif # distro-conditional make check dependencies %if 0%{with make_check} %if 0%{?fedora} || 0%{?rhel} -%if 0%{?fedora} || 0%{?rhel} == 7 BuildRequires: libtool-ltdl-devel -BuildRequires: python%{_python_buildid}-cherrypy -BuildRequires: python%{_python_buildid}-coverage -BuildRequires: python%{_python_buildid}-jwt -BuildRequires: python%{_python_buildid}-routes -BuildRequires: python%{_python_buildid}-pecan -BuildRequires: python%{_python_buildid}-tox -BuildRequires: python%{_python_buildid}-werkzeug BuildRequires: xmlsec1 BuildRequires: xmlsec1-devel +%ifarch x86_64 BuildRequires: xmlsec1-nss +%endif BuildRequires: xmlsec1-openssl BuildRequires: xmlsec1-openssl-devel %if 0%{?rhel} == 7 -BuildRequires: pyOpenSSL%{_python_buildid} +BuildRequires: python%{python3_version_nodots}-jwt +BuildRequires: python%{python3_version_nodots}-scipy %else -BuildRequires: python%{_python_buildid}-pyOpenSSL +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 BuildRequires: libxmlsec1-openssl1 -BuildRequires: python%{_python_buildid}-CherryPy -BuildRequires: python%{_python_buildid}-PyJWT -BuildRequires: python%{_python_buildid}-Routes -BuildRequires: python%{_python_buildid}-Werkzeug -BuildRequires: python%{_python_buildid}-coverage -BuildRequires: python%{_python_buildid}-numpy-devel -BuildRequires: python%{_python_buildid}-pecan -BuildRequires: python%{_python_buildid}-pyOpenSSL -BuildRequires: python%{_python_buildid}-tox -BuildRequires: rpm-build +BuildRequires: python%{python3_pkgversion}-CherryPy +BuildRequires: python%{python3_pkgversion}-PyJWT +BuildRequires: python%{python3_pkgversion}-Routes +BuildRequires: python%{python3_pkgversion}-Werkzeug +BuildRequires: python%{python3_pkgversion}-numpy-devel BuildRequires: xmlsec1-devel BuildRequires: xmlsec1-openssl-devel %endif @@ -387,7 +399,7 @@ Requires: grep Requires: logrotate Requires: parted Requires: psmisc -Requires: python%{_python_buildid}-setuptools +Requires: python%{python3_pkgversion}-setuptools Requires: util-linux Requires: xfsprogs Requires: which @@ -400,17 +412,20 @@ Requires: gperftools-libs >= 2.6.1 %endif %if 0%{?weak_deps} Recommends: chrony -Requires: gptfdisk %endif %description base Base is the package that includes all the files shared amongst ceph servers %package -n cephadm -Summary: cephadm utility to bootstrap Ceph clusters -Requires: podman +Summary: Utility to bootstrap Ceph clusters +Requires: lvm2 +Requires: python%{python3_pkgversion} +%if 0%{?weak_deps} +Recommends: podman +%endif %description -n cephadm -cephadm utility to bootstrap a Ceph cluster and manage ceph daemons -deployed with systemd and podman. +Utility to bootstrap a Ceph cluster and manage Ceph daemons deployed +with systemd and podman. %package -n ceph-common Summary: Ceph Common @@ -420,18 +435,17 @@ Group: System/Filesystems Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} Requires: librados2 = %{_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} -Requires: python%{_python_buildid}-cephfs = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-rgw = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-ceph-argparse = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-ceph-common = %{_epoch_prefix}%{version}-%{release} +Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} +Requires: python%{python3_pkgversion}-rbd = %{_epoch_prefix}%{version}-%{release} +Requires: python%{python3_pkgversion}-cephfs = %{_epoch_prefix}%{version}-%{release} +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%{?fedora} || 0%{?rhel} -Requires: python%{_python_buildid}-prettytable +Requires: python%{python3_pkgversion}-prettytable %endif %if 0%{?suse_version} -Requires: python%{_python_buildid}-PrettyTable -Obsoletes: libxio <= 1.7 +Requires: python%{python3_pkgversion}-PrettyTable %endif %if 0%{with libradosstriper} Requires: libradosstriper1 = %{_epoch_prefix}%{version}-%{release} @@ -477,31 +491,19 @@ Summary: Ceph Manager Daemon Group: System/Filesystems %endif Requires: ceph-base = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-bcrypt -Requires: python%{_python_buildid}-pecan -Requires: python%{_python_buildid}-requests -Requires: python%{_python_buildid}-six -%if 0%{?fedora} || 0%{?rhel} -Requires: python%{_python_buildid}-cherrypy -Requires: python%{_python_buildid}-werkzeug -%endif -%if 0%{?suse_version} -Requires: python%{_python_buildid}-CherryPy -Requires: python%{_python_buildid}-Werkzeug +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} Recommends: ceph-mgr-diskprediction-cloud = %{_epoch_prefix}%{version}-%{release} -Recommends: ceph-mgr-rook = %{_epoch_prefix}%{version}-%{release} Recommends: ceph-mgr-k8sevents = %{_epoch_prefix}%{version}-%{release} Recommends: ceph-mgr-cephadm = %{_epoch_prefix}%{version}-%{release} -Recommends: python%{_python_buildid}-influxdb -%endif -%if 0%{?rhel} == 7 -Requires: pyOpenSSL -%else -Requires: python%{_python_buildid}-pyOpenSSL +Recommends: python%{python3_pkgversion}-influxdb %endif %description mgr ceph-mgr enables python modules that provide services (such as the REST @@ -518,101 +520,130 @@ Group: System/Filesystems Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} Requires: ceph-grafana-dashboards = %{_epoch_prefix}%{version}-%{release} %if 0%{?fedora} || 0%{?rhel} -Requires: python%{_python_buildid}-cherrypy -Requires: python%{_python_buildid}-ipaddress -Requires: python%{_python_buildid}-jwt -Requires: python%{_python_buildid}-routes -Requires: python%{_python_buildid}-werkzeug +Requires: python%{python3_pkgversion}-cherrypy +Requires: python%{python3_pkgversion}-jwt +Requires: python%{python3_pkgversion}-routes +Requires: python%{python3_pkgversion}-werkzeug %endif %if 0%{?suse_version} -Requires: python%{_python_buildid}-CherryPy -Requires: python%{_python_buildid}-PyJWT -Requires: python%{_python_buildid}-Routes -Requires: python%{_python_buildid}-Werkzeug +Requires: python%{python3_pkgversion}-CherryPy +Requires: python%{python3_pkgversion}-PyJWT +Requires: python%{python3_pkgversion}-Routes +Requires: python%{python3_pkgversion}-Werkzeug %endif %if 0%{?rhel} == 7 Requires: pyOpenSSL %else -Requires: python%{_python_buildid}-pyOpenSSL +Requires: python%{python3_pkgversion}-pyOpenSSL %endif %description mgr-dashboard -ceph-mgr-dashboard is a manager plugin, providing a web-based application +ceph-mgr-dashboard is a manager module, providing a web-based application to monitor and manage many aspects of a Ceph cluster and related components. See the Dashboard documentation at http://docs.ceph.com/ for details and a detailed feature overview. %package mgr-diskprediction-local -Summary: Ceph Manager plugin for predicting disk failures +Summary: Ceph Manager module for predicting disk failures BuildArch: noarch %if 0%{?suse_version} 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 -%if 0%{without python2} +Requires: python%{python3_pkgversion}-numpy 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 +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 plugin for cloud-based disk failure prediction +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} +%if 0%{without python2} +Requires: python3-grpcio +Requires: python3-protobuf +%else +Requires: python2-grpcio +Requires: python2-protobuf +%endif %description mgr-diskprediction-cloud -ceph-mgr-diskprediction-cloud is a ceph-mgr plugin that tries to predict +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 +%else +Requires: python%{python3_pkgversion}-bcrypt +Requires: python%{python3_pkgversion}-pecan +Requires: python%{python3_pkgversion}-pyOpenSSL +Requires: python%{python3_pkgversion}-requests +%endif +%if 0%{?fedora} || 0%{?rhel} >= 8 +Requires: python%{python3_pkgversion}-cherrypy +Requires: python%{python3_pkgversion}-pyyaml +Requires: python%{python3_pkgversion}-werkzeug +%endif +%if 0%{?suse_version} +Requires: python%{python3_pkgversion}-CherryPy +Requires: python%{python3_pkgversion}-PyYAML +Requires: python%{python3_pkgversion}-Werkzeug +%endif +%if 0%{?weak_deps} +Recommends: ceph-mgr-rook = %{_epoch_prefix}%{version}-%{release} +%endif +%description mgr-modules-core +ceph-mgr-modules-core provides a set of modules which are always +enabled by ceph-mgr. + %package mgr-rook BuildArch: noarch -Summary: Ceph Manager plugin for Rook-based orchestration +Summary: Ceph Manager module for Rook-based orchestration %if 0%{?suse_version} Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-kubernetes +Requires: python%{python3_pkgversion}-kubernetes +Requires: python%{python3_pkgversion}-jsonpatch %description mgr-rook -ceph-mgr-rook is a ceph-mgr plugin for orchestration functions using +ceph-mgr-rook is a ceph-mgr module for orchestration functions using a Rook backend. %package mgr-k8sevents BuildArch: noarch -Summary: Ceph Manager plugin to orchestrate ceph-events to kubernetes' events API +Summary: Ceph Manager module to orchestrate ceph-events to kubernetes' events API %if 0%{?suse_version} Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-kubernetes -%if 0%{?fedora} || 0%{?rhel} -Requires: python%{_python_buildid}-yaml -%endif -%if 0%{?suse_version} -Requires: python%{_python_buildid}-PyYAML -%endif +Requires: python%{python3_pkgversion}-kubernetes %description mgr-k8sevents -ceph-mgr-k8sevents is a ceph-mgr plugin that sends every ceph-events +ceph-mgr-k8sevents is a ceph-mgr module that sends every ceph-events to kubernetes' events API %package mgr-cephadm -Summary: Ceph Manager plugin for cephadm-based orchestration +Summary: Ceph Manager module for cephadm-based orchestration BuildArch: noarch %if 0%{?suse_version} Group: System/Filesystems %endif Requires: ceph-mgr = %{_epoch_prefix}%{version}-%{release} -Requires: python%{_python_buildid}-remoto +Requires: python%{python3_pkgversion}-remoto Requires: cephadm = %{_epoch_prefix}%{version}-%{release} %if 0%{?suse_version} Requires: openssh @@ -798,21 +829,6 @@ Obsoletes: librgw2-devel < %{_epoch_prefix}%{version}-%{release} This package contains libraries and headers needed to develop programs that use RADOS gateway client library. -%if 0%{with python2} -%package -n python-rgw -Summary: Python 2 libraries for the RADOS gateway -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -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} -%description -n python-rgw -This package contains Python 2 libraries for interacting with Cephs RADOS -gateway. -%endif - %package -n python%{python3_pkgversion}-rgw Summary: Python 3 libraries for the RADOS gateway %if 0%{?suse_version} @@ -821,28 +837,12 @@ Group: Development/Libraries/Python Requires: librgw2 = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-rgw} -%if 0%{without python2} Provides: python-rgw = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-rgw < %{_epoch_prefix}%{version}-%{release} -%endif %description -n python%{python3_pkgversion}-rgw This package contains Python 3 libraries for interacting with Cephs RADOS gateway. -%if 0%{with python2} -%package -n python-rados -Summary: Python 2 libraries for the RADOS object store -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -Requires: librados2 = %{_epoch_prefix}%{version}-%{release} -%{?python_provide:%python_provide python-rados} -Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} -%description -n python-rados -This package contains Python 2 libraries for interacting with Cephs RADOS -object store. -%endif - %package -n python%{python3_pkgversion}-rados Summary: Python 3 libraries for the RADOS object store %if 0%{?suse_version} @@ -851,10 +851,8 @@ Group: Development/Libraries/Python Requires: python%{python3_pkgversion} 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} -%endif +Obsoletes: python-rados < %{_epoch_prefix}%{version}-%{release} %description -n python%{python3_pkgversion}-rados This package contains Python 3 libraries for interacting with Cephs RADOS object store. @@ -920,21 +918,6 @@ Obsoletes: librbd1-devel < %{_epoch_prefix}%{version}-%{release} This package contains libraries and headers needed to develop programs that use RADOS block device. -%if 0%{with python2} -%package -n python-rbd -Summary: Python 2 libraries for the RADOS block device -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -Requires: librbd1 = %{_epoch_prefix}%{version}-%{release} -Requires: python-rados = %{_epoch_prefix}%{version}-%{release} -%{?python_provide:%python_provide python-rbd} -Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} -%description -n python-rbd -This package contains Python 2 libraries for interacting with Cephs RADOS -block device. -%endif - %package -n python%{python3_pkgversion}-rbd Summary: Python 3 libraries for the RADOS block device %if 0%{?suse_version} @@ -943,10 +926,8 @@ 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} -%if 0%{without python2} Provides: python-rbd = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-rbd < %{_epoch_prefix}%{version}-%{release} -%endif %description -n python%{python3_pkgversion}-rbd This package contains Python 3 libraries for interacting with Cephs RADOS block device. @@ -981,22 +962,6 @@ Obsoletes: libcephfs2-devel < %{_epoch_prefix}%{version}-%{release} This package contains libraries and headers needed to develop programs that use Cephs distributed file system. -%if 0%{with python2} -%package -n python-cephfs -Summary: Python 2 libraries for Ceph distributed file system -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} -Requires: python-rados = %{_epoch_prefix}%{version}-%{release} -Requires: python-ceph-argparse = %{_epoch_prefix}%{version}-%{release} -%{?python_provide:%python_provide python-cephfs} -Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release} -%description -n python-cephfs -This package contains Python 2 libraries for interacting with Cephs distributed -file system. -%endif - %package -n python%{python3_pkgversion}-cephfs Summary: Python 3 libraries for Ceph distributed file system %if 0%{?suse_version} @@ -1006,28 +971,12 @@ Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-rados = %{_epoch_prefix}%{version}-%{release} Requires: python%{python3_pkgversion}-ceph-argparse = %{_epoch_prefix}%{version}-%{release} %{?python_provide:%python_provide python%{python3_pkgversion}-cephfs} -%if 0%{without python2} Provides: python-cephfs = %{_epoch_prefix}%{version}-%{release} Obsoletes: python-cephfs < %{_epoch_prefix}%{version}-%{release} -%endif %description -n python%{python3_pkgversion}-cephfs This package contains Python 3 libraries for interacting with Cephs distributed file system. -%if 0%{with python2} -%package -n python-ceph-argparse -Summary: Python 2 utility libraries for Ceph CLI -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -%{?python_provide:%python_provide python-ceph-argparse} -%description -n python-ceph-argparse -This package contains types and routines for Python 2 used by the Ceph CLI as -well as the RESTful interface. These have to do with querying the daemons for -command-description information, validating user command input against those -descriptions, and submitting the command to the appropriate daemon. -%endif - %package -n python%{python3_pkgversion}-ceph-argparse Summary: Python 3 utility libraries for Ceph CLI %if 0%{?suse_version} @@ -1040,18 +989,6 @@ well as the RESTful interface. These have to do with querying the daemons for command-description information, validating user command input against those descriptions, and submitting the command to the appropriate daemon. -%if 0%{with python2} -%package -n python-ceph-common -Summary: Python 2 utility libraries for Ceph -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -%{?python_provide:%python_provide python-ceph-common} -%description -n python-ceph-common -This package contains data structures, classes and functions used by Ceph. -It also contains utilities used for the cephadm orchestrator. -%endif - %package -n python%{python3_pkgversion}-ceph-common Summary: Python 3 utility libraries for Ceph %if 0%{?suse_version} @@ -1158,25 +1095,6 @@ populated file-systems. %endif -%if 0%{with python2} -%package -n python-ceph-compat -Summary: Compatibility package for Cephs python libraries -%if 0%{?suse_version} -Group: Development/Libraries/Python -%endif -Obsoletes: python-ceph -Requires: python-rados = %{_epoch_prefix}%{version}-%{release} -Requires: python-rbd = %{_epoch_prefix}%{version}-%{release} -Requires: python-cephfs = %{_epoch_prefix}%{version}-%{release} -Requires: python-rgw = %{_epoch_prefix}%{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, python-rgw and python-cephfs. Packages still -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 @@ -1203,7 +1121,7 @@ This package provides Ceph’s default alerts for Prometheus. # common ################################################################################# %prep -%autosetup -p1 -n ceph-15.0.0-8441-g88a99a841e +%autosetup -p1 -n ceph-15.1.0-1207-g89308cc4c6 %build # LTO can be enabled as soon as the following GCC bug is fixed: @@ -1278,13 +1196,6 @@ ${CMAKE} .. \ -DWITH_MANPAGE=ON \ -DWITH_PYTHON3=%{python3_version} \ -DWITH_MGR_DASHBOARD_FRONTEND=OFF \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -%if %{with python2} - -DWITH_PYTHON2=ON \ -%else - -DWITH_PYTHON2=OFF \ - -DMGR_PYTHON_VERSION=3 \ -%endif %if 0%{without ceph_test_package} -DWITH_TESTS=OFF \ %endif @@ -1327,10 +1238,18 @@ ${CMAKE} .. \ -DWITH_RADOSGW_KAFKA_ENDPOINT=ON \ %else -DWITH_RADOSGW_KAFKA_ENDPOINT=OFF \ +%endif +%if 0%{with cmake_verbose_logging} + -DCMAKE_VERBOSE_MAKEFILE=ON \ %endif -DBOOST_J=$CEPH_SMP_NCPUS \ -DWITH_GRAFANA=ON +%if %{with cmake_verbose_logging} +cat ./CMakeFiles/CMakeOutput.log +cat ./CMakeFiles/CMakeError.log +%endif + make "$CEPH_MFLAGS_JOBS" @@ -1466,15 +1385,9 @@ rm -rf %{buildroot} %{_fillupdir}/sysconfig.* %endif %{_unitdir}/ceph.target -%if 0%{with python2} -%dir %{python_sitelib}/ceph_volume -%{python_sitelib}/ceph_volume/* -%{python_sitelib}/ceph_volume-* -%else %dir %{python3_sitelib}/ceph_volume %{python3_sitelib}/ceph_volume/* %{python3_sitelib}/ceph_volume-* -%endif %{_mandir}/man8/ceph-deploy.8* %{_mandir}/man8/ceph-create-keys.8* %{_mandir}/man8/ceph-run.8* @@ -1535,8 +1448,8 @@ if [ $1 -ge 1 ] ; then fi %pre -n cephadm -getent group cephadm >/dev/null || groupadd cephadm -getent passwd cephadm >/dev/null || useradd -g cephadm -s /bin/bash -c "cephadm user for mgr/cephadm" -d %{_sharedstatedir}/cephadm cephadm +getent group cephadm >/dev/null || groupadd -r cephadm +getent passwd cephadm >/dev/null || useradd -r -g cephadm -s /bin/bash -c "cephadm user for mgr/cephadm" -d %{_sharedstatedir}/cephadm cephadm exit 0 %if ! 0%{?suse_version} @@ -1694,33 +1607,11 @@ fi %files mgr %{_bindir}/ceph-mgr %dir %{_datadir}/ceph/mgr -%{_datadir}/ceph/mgr/alerts -%{_datadir}/ceph/mgr/ansible -%{_datadir}/ceph/mgr/balancer -%{_datadir}/ceph/mgr/crash -%{_datadir}/ceph/mgr/deepsea -%{_datadir}/ceph/mgr/devicehealth -%{_datadir}/ceph/mgr/influx -%{_datadir}/ceph/mgr/insights -%{_datadir}/ceph/mgr/iostat -%{_datadir}/ceph/mgr/localpool %{_datadir}/ceph/mgr/mgr_module.* %{_datadir}/ceph/mgr/mgr_util.* -%{_datadir}/ceph/mgr/orchestrator_cli -%{_datadir}/ceph/mgr/orchestrator.* -%{_datadir}/ceph/mgr/osd_perf_query -%{_datadir}/ceph/mgr/pg_autoscaler -%{_datadir}/ceph/mgr/progress -%{_datadir}/ceph/mgr/prometheus -%{_datadir}/ceph/mgr/rbd_support -%{_datadir}/ceph/mgr/restful -%{_datadir}/ceph/mgr/selftest -%{_datadir}/ceph/mgr/status -%{_datadir}/ceph/mgr/telegraf -%{_datadir}/ceph/mgr/telemetry -%{_datadir}/ceph/mgr/test_orchestrator -%{_datadir}/ceph/mgr/volumes -%{_datadir}/ceph/mgr/zabbix +%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 @@ -1805,6 +1696,32 @@ 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 +%{_datadir}/ceph/mgr/balancer +%{_datadir}/ceph/mgr/crash +%{_datadir}/ceph/mgr/devicehealth +%{_datadir}/ceph/mgr/influx +%{_datadir}/ceph/mgr/insights +%{_datadir}/ceph/mgr/iostat +%{_datadir}/ceph/mgr/localpool +%{_datadir}/ceph/mgr/orchestrator +%{_datadir}/ceph/mgr/osd_perf_query +%{_datadir}/ceph/mgr/osd_support +%{_datadir}/ceph/mgr/pg_autoscaler +%{_datadir}/ceph/mgr/progress +%{_datadir}/ceph/mgr/prometheus +%{_datadir}/ceph/mgr/rbd_support +%{_datadir}/ceph/mgr/restful +%{_datadir}/ceph/mgr/selftest +%{_datadir}/ceph/mgr/status +%{_datadir}/ceph/mgr/telegraf +%{_datadir}/ceph/mgr/telemetry +%{_datadir}/ceph/mgr/test_orchestrator +%{_datadir}/ceph/mgr/volumes +%{_datadir}/ceph/mgr/zabbix + %files mgr-rook %{_datadir}/ceph/mgr/rook @@ -2008,12 +1925,14 @@ fi %{_bindir}/radosgw-token %{_bindir}/radosgw-es %{_bindir}/radosgw-object-expirer +%{_libdir}/libradosgw.so* %{_mandir}/man8/radosgw.8* %dir %{_localstatedir}/lib/ceph/radosgw %{_unitdir}/ceph-radosgw@.service %{_unitdir}/ceph-radosgw.target %post radosgw +/sbin/ldconfig %if 0%{?suse_version} if [ $1 -eq 1 ] ; then /usr/bin/systemctl preset ceph-radosgw@\*.service ceph-radosgw.target >/dev/null 2>&1 || : @@ -2035,6 +1954,7 @@ fi %endif %postun radosgw +/sbin/ldconfig %if 0%{?suse_version} DISABLE_RESTART_ON_UPDATE="yes" %service_del_postun ceph-radosgw@\*.service ceph-radosgw.target @@ -2171,12 +2091,6 @@ fi %{_includedir}/rados/page.h %{_includedir}/rados/rados_types.hpp -%if 0%{with python2} -%files -n python-rados -%{python_sitearch}/rados.so -%{python_sitearch}/rados-*.egg-info -%endif - %files -n python%{python3_pkgversion}-rados %{python3_sitearch}/rados.cpython*.so %{python3_sitearch}/rados-*.egg-info @@ -2240,22 +2154,10 @@ fi %{_libdir}/librgw_rados_tp.so %endif -%if 0%{with python2} -%files -n python-rgw -%{python_sitearch}/rgw.so -%{python_sitearch}/rgw-*.egg-info -%endif - %files -n python%{python3_pkgversion}-rgw %{python3_sitearch}/rgw.cpython*.so %{python3_sitearch}/rgw-*.egg-info -%if 0%{with python2} -%files -n python-rbd -%{python_sitearch}/rbd.so -%{python_sitearch}/rbd-*.egg-info -%endif - %files -n python%{python3_pkgversion}-rbd %{python3_sitearch}/rbd.cpython*.so %{python3_sitearch}/rbd-*.egg-info @@ -2274,37 +2176,18 @@ fi %{_includedir}/cephfs/ceph_statx.h %{_libdir}/libcephfs.so -%if 0%{with python2} -%files -n python-cephfs -%{python_sitearch}/cephfs.so -%{python_sitearch}/cephfs-*.egg-info -%{python_sitelib}/ceph_volume_client.py* -%endif - %files -n python%{python3_pkgversion}-cephfs %{python3_sitearch}/cephfs.cpython*.so %{python3_sitearch}/cephfs-*.egg-info %{python3_sitelib}/ceph_volume_client.py %{python3_sitelib}/__pycache__/ceph_volume_client.cpython*.py* -%if 0%{with python2} -%files -n python-ceph-argparse -%{python_sitelib}/ceph_argparse.py* -%{python_sitelib}/ceph_daemon.py* -%endif - %files -n python%{python3_pkgversion}-ceph-argparse %{python3_sitelib}/ceph_argparse.py %{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py* %{python3_sitelib}/ceph_daemon.py %{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py* -%if 0%{with python2} -%files -n python-ceph-common -%{python_sitelib}/ceph -%{python_sitelib}/ceph-*.egg-info -%endif - %files -n python%{python3_pkgversion}-ceph-common %{python3_sitelib}/ceph %{python3_sitelib}/ceph-*.egg-info @@ -2451,12 +2334,6 @@ exit 0 %endif # with selinux -%if 0%{with python2} -%files -n python-ceph-compat -# We need an empty %%files list for python-ceph-compat, to tell rpmbuild to -# actually build this meta package. -%endif - %files grafana-dashboards %if 0%{?suse_version} %attr(0755,root,root) %dir %{_sysconfdir}/grafana diff --git a/checkin.sh b/checkin.sh index c6fa889..f191467 100644 --- a/checkin.sh +++ b/checkin.sh @@ -92,7 +92,7 @@ else # TMPDIR=$(mktemp -d --tmpdir=$BASEDIR) # does not work due to http://tracker.ceph.com/issues/39556 TMPDIR=$(mktemp -d) echo "Created temporary temporary $TMPDIR" - git clone --branch $BRANCH $REPO $TMPDIR + git clone --progress --branch $BRANCH $REPO $TMPDIR CLONE="$TMPDIR" fi _check_ceph_clone "$CLONE"