New release (2:14.0.1-1)
- sync with upstream - drop 32-bit support, it is no longer supported upstream
This commit is contained in:
parent
4c70f88757
commit
2b3fa8bef4
@ -5,8 +5,6 @@ Subject: [PATCH 1/4] f30 python3 execs
|
||||
|
||||
---
|
||||
src/ceph-create-keys | 2 +-
|
||||
src/ceph-detect-init/ceph_detect_init/main.py | 2 +-
|
||||
src/ceph-disk/ceph_disk/main.py | 2 +-
|
||||
src/ceph-volume/bin/ceph-volume | 2 +-
|
||||
src/ceph-volume/bin/ceph-volume-systemd | 2 +-
|
||||
src/ceph.in | 2 +-
|
||||
@ -23,26 +21,6 @@ index c14c02f28d..7e80aab6a2 100755
|
||||
import argparse
|
||||
import errno
|
||||
import json
|
||||
diff --git a/src/ceph-detect-init/ceph_detect_init/main.py b/src/ceph-detect-init/ceph_detect_init/main.py
|
||||
index 320ae17032..c18ce74c1c 100644
|
||||
--- a/src/ceph-detect-init/ceph_detect_init/main.py
|
||||
+++ b/src/ceph-detect-init/ceph_detect_init/main.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env python
|
||||
+#!/usr/bin/python3
|
||||
#
|
||||
# Copyright (C) 2015 <contact@redhat.com>
|
||||
# Copyright (C) 2015 SUSE LINUX GmbH
|
||||
diff --git a/src/ceph-disk/ceph_disk/main.py b/src/ceph-disk/ceph_disk/main.py
|
||||
index 639c49e7e1..bfcce98351 100644
|
||||
--- a/src/ceph-disk/ceph_disk/main.py
|
||||
+++ b/src/ceph-disk/ceph_disk/main.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-#!/usr/bin/env python
|
||||
+#!/usr/bin/python3
|
||||
#
|
||||
# Copyright (C) 2015, 2016, 2017 Red Hat <contact@redhat.com>
|
||||
# Copyright (C) 2014 Inktank <info@inktank.com>
|
||||
diff --git a/src/ceph-volume/bin/ceph-volume b/src/ceph-volume/bin/ceph-volume
|
||||
index 5905cfccc0..a4f62b4a1f 100755
|
||||
--- a/src/ceph-volume/bin/ceph-volume
|
||||
|
@ -1,158 +0,0 @@
|
||||
From e0c90eac818bb3cab041f983b60ba560a9f36dca Mon Sep 17 00:00:00 2001
|
||||
From: Boris Ranto <branto@redhat.com>
|
||||
Date: Tue, 27 Nov 2018 00:30:56 +0100
|
||||
Subject: [PATCH 2/4] 32-bit compile patch
|
||||
|
||||
---
|
||||
src/common/ceph_context.h | 2 +-
|
||||
src/mon/OSDMonitor.cc | 2 +-
|
||||
src/os/bluestore/BlueStore.cc | 2 +-
|
||||
src/osd/PrimaryLogPG.cc | 3 ++-
|
||||
src/rgw/rgw_op.h | 4 ++--
|
||||
src/rgw/rgw_rest_swift.cc | 6 +++---
|
||||
src/rgw/rgw_sync_log_trim.cc | 2 +-
|
||||
src/test/rbd_mirror/test_ImageSync.cc | 2 +-
|
||||
8 files changed, 12 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/src/common/ceph_context.h b/src/common/ceph_context.h
|
||||
index 6af282225c..cde7388fe9 100644
|
||||
--- a/src/common/ceph_context.h
|
||||
+++ b/src/common/ceph_context.h
|
||||
@@ -144,7 +144,7 @@ public:
|
||||
void do_command(std::string_view command, const cmdmap_t& cmdmap,
|
||||
std::string_view format, ceph::bufferlist *out);
|
||||
|
||||
- static constexpr std::size_t largest_singleton = sizeof(void*) * 72;
|
||||
+ static constexpr std::size_t largest_singleton = 8 * 72; // Sizeof 64-bit pointer * 72
|
||||
|
||||
template<typename T, typename... Args>
|
||||
T& lookup_or_create_singleton_object(std::string_view name,
|
||||
diff --git a/src/mon/OSDMonitor.cc b/src/mon/OSDMonitor.cc
|
||||
index da55af1519..4915d3b581 100644
|
||||
--- a/src/mon/OSDMonitor.cc
|
||||
+++ b/src/mon/OSDMonitor.cc
|
||||
@@ -821,7 +821,7 @@ OSDMonitor::update_pending_pgs(const OSDMap::Incremental& inc,
|
||||
<< " modified " << p->second.modified
|
||||
<< " [" << p->second.start << "-" << p->second.end << ")"
|
||||
<< dendl;
|
||||
- int n = std::min(max - pending_creatings.pgs.size(),
|
||||
+ int n = std::min<int>(max - pending_creatings.pgs.size(),
|
||||
p->second.end - p->second.start);
|
||||
ps_t first = p->second.start;
|
||||
ps_t end = first + n;
|
||||
diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc
|
||||
index 0c4fbc0bf9..70f4e2f284 100644
|
||||
--- a/src/os/bluestore/BlueStore.cc
|
||||
+++ b/src/os/bluestore/BlueStore.cc
|
||||
@@ -12276,7 +12276,7 @@ size_t BlueStoreRepairer::StoreSpaceTracker::filter_out(
|
||||
if (e.second == 0) {
|
||||
continue;
|
||||
}
|
||||
- size_t pos = max(e.first / granularity, prev_pos);
|
||||
+ size_t pos = max<size_t>(e.first / granularity, prev_pos);
|
||||
size_t end_pos = 1 + (e.first + e.second - 1) / granularity;
|
||||
while (pos != npos && pos < end_pos) {
|
||||
ceph_assert( collections_bfs[pos].element_count() ==
|
||||
diff --git a/src/osd/PrimaryLogPG.cc b/src/osd/PrimaryLogPG.cc
|
||||
index e65171eec1..eeb2de2bc1 100644
|
||||
--- a/src/osd/PrimaryLogPG.cc
|
||||
+++ b/src/osd/PrimaryLogPG.cc
|
||||
@@ -20,6 +20,7 @@
|
||||
#include "PG.h"
|
||||
#include "PrimaryLogPG.h"
|
||||
#include "OSD.h"
|
||||
+#include <algorithm>
|
||||
#include "OpRequest.h"
|
||||
#include "ScrubStore.h"
|
||||
#include "Session.h"
|
||||
@@ -1635,7 +1636,7 @@ void PrimaryLogPG::calc_trim_to()
|
||||
pg_log.get_log().approx_size() > target) {
|
||||
dout(10) << __func__ << " approx pg log length = "
|
||||
<< pg_log.get_log().approx_size() << dendl;
|
||||
- size_t num_to_trim = std::min(pg_log.get_log().approx_size() - target,
|
||||
+ size_t num_to_trim = std::min<size_t>(pg_log.get_log().approx_size() - target,
|
||||
cct->_conf->osd_pg_log_trim_max);
|
||||
dout(10) << __func__ << " num_to_trim = " << num_to_trim << dendl;
|
||||
if (num_to_trim < cct->_conf->osd_pg_log_trim_min &&
|
||||
diff --git a/src/rgw/rgw_op.h b/src/rgw/rgw_op.h
|
||||
index ba3db09821..22fd91c7f4 100644
|
||||
--- a/src/rgw/rgw_op.h
|
||||
+++ b/src/rgw/rgw_op.h
|
||||
@@ -1977,7 +1977,7 @@ static inline int rgw_get_request_metadata(CephContext* const cct,
|
||||
* as ObjectStore::get_max_attr_name_length() can set the limit even
|
||||
* lower than the "osd_max_attr_name_len" configurable. */
|
||||
const size_t max_attr_name_len = \
|
||||
- cct->_conf->get_val<size_t>("rgw_max_attr_name_len");
|
||||
+ cct->_conf->get_val<Option::size_t>("rgw_max_attr_name_len");
|
||||
if (max_attr_name_len && attr_name.length() > max_attr_name_len) {
|
||||
return -ENAMETOOLONG;
|
||||
}
|
||||
@@ -1993,7 +1993,7 @@ static inline int rgw_get_request_metadata(CephContext* const cct,
|
||||
/* Swift allows administrators to limit the number of metadats items
|
||||
* send _in a single request_. */
|
||||
const auto rgw_max_attrs_num_in_req = \
|
||||
- cct->_conf->get_val<size_t>("rgw_max_attrs_num_in_req");
|
||||
+ cct->_conf->get_val<Option::size_t>("rgw_max_attrs_num_in_req");
|
||||
if (rgw_max_attrs_num_in_req &&
|
||||
++valid_meta_count > rgw_max_attrs_num_in_req) {
|
||||
return -E2BIG;
|
||||
diff --git a/src/rgw/rgw_rest_swift.cc b/src/rgw/rgw_rest_swift.cc
|
||||
index ebf2803b62..70cef69f5c 100644
|
||||
--- a/src/rgw/rgw_rest_swift.cc
|
||||
+++ b/src/rgw/rgw_rest_swift.cc
|
||||
@@ -724,7 +724,7 @@ static inline int handle_metadata_errors(req_state* const s, const int op_ret)
|
||||
} else if (op_ret == -E2BIG) {
|
||||
const auto error_message = boost::str(
|
||||
boost::format("Too many metadata items; max %lld")
|
||||
- % s->cct->_conf->get_val<size_t>("rgw_max_attrs_num_in_req"));
|
||||
+ % s->cct->_conf->get_val<Option::size_t>("rgw_max_attrs_num_in_req"));
|
||||
set_req_state_err(s, EINVAL, error_message);
|
||||
return -EINVAL;
|
||||
}
|
||||
@@ -1779,7 +1779,7 @@ void RGWInfo_ObjStore_SWIFT::list_swift_data(Formatter& formatter,
|
||||
formatter.dump_string("version", ceph_version);
|
||||
|
||||
const size_t max_attr_name_len = \
|
||||
- g_conf->get_val<size_t>("rgw_max_attr_name_len");
|
||||
+ g_conf->get_val<Option::size_t>("rgw_max_attr_name_len");
|
||||
if (max_attr_name_len) {
|
||||
const size_t meta_name_limit = \
|
||||
max_attr_name_len - strlen(RGW_ATTR_PREFIX RGW_AMZ_META_PREFIX);
|
||||
@@ -1792,7 +1792,7 @@ void RGWInfo_ObjStore_SWIFT::list_swift_data(Formatter& formatter,
|
||||
}
|
||||
|
||||
const size_t meta_num_limit = \
|
||||
- g_conf->get_val<size_t>("rgw_max_attrs_num_in_req");
|
||||
+ g_conf->get_val<Option::size_t>("rgw_max_attrs_num_in_req");
|
||||
if (meta_num_limit) {
|
||||
formatter.dump_int("max_meta_count", meta_num_limit);
|
||||
}
|
||||
diff --git a/src/rgw/rgw_sync_log_trim.cc b/src/rgw/rgw_sync_log_trim.cc
|
||||
index e1002253b8..b14d7e80be 100644
|
||||
--- a/src/rgw/rgw_sync_log_trim.cc
|
||||
+++ b/src/rgw/rgw_sync_log_trim.cc
|
||||
@@ -351,7 +351,7 @@ int take_min_status(CephContext *cct, Iter first, Iter last,
|
||||
status->clear();
|
||||
// The initialisation below is required to silence a false positive
|
||||
// -Wmaybe-uninitialized warning
|
||||
- boost::optional<size_t> num_shards = boost::make_optional(false, 0UL);
|
||||
+ boost::optional<size_t> num_shards = boost::make_optional(false, (size_t)0);
|
||||
for (auto peer = first; peer != last; ++peer) {
|
||||
const size_t peer_shards = peer->size();
|
||||
if (!num_shards) {
|
||||
diff --git a/src/test/rbd_mirror/test_ImageSync.cc b/src/test/rbd_mirror/test_ImageSync.cc
|
||||
index 5ef2cbe77a..15a98423c8 100644
|
||||
--- a/src/test/rbd_mirror/test_ImageSync.cc
|
||||
+++ b/src/test/rbd_mirror/test_ImageSync.cc
|
||||
@@ -41,7 +41,7 @@ int flush(librbd::ImageCtx *image_ctx) {
|
||||
|
||||
void scribble(librbd::ImageCtx *image_ctx, int num_ops, size_t max_size)
|
||||
{
|
||||
- max_size = std::min(image_ctx->size, max_size);
|
||||
+ max_size = std::min<size_t>(image_ctx->size, max_size);
|
||||
for (int i=0; i<num_ops; i++) {
|
||||
uint64_t off = rand() % (image_ctx->size - max_size + 1);
|
||||
uint64_t len = 1 + rand() % max_size;
|
||||
--
|
||||
2.19.1
|
||||
|
@ -1,32 +0,0 @@
|
||||
From 9fa9fbe96deb565188ba6740c3200a67c499d68a Mon Sep 17 00:00:00 2001
|
||||
From: Brad Hubbard <bhubbard@redhat.com>
|
||||
Date: Thu, 13 Sep 2018 13:19:02 +1000
|
||||
Subject: [PATCH 3/4] mgr: Change signature of PyString_AsString to match
|
||||
return
|
||||
|
||||
PyUnicode_AsUTF8 now returns 'const char*'
|
||||
|
||||
Fixes: http://tracker.ceph.com/issues/35984
|
||||
|
||||
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
|
||||
(cherry picked from commit b29c65623f508082ded87af6f8d068ce8882f936)
|
||||
---
|
||||
src/mgr/PythonCompat.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/mgr/PythonCompat.h b/src/mgr/PythonCompat.h
|
||||
index 745dad1a7e..7bbaf9c43c 100644
|
||||
--- a/src/mgr/PythonCompat.h
|
||||
+++ b/src/mgr/PythonCompat.h
|
||||
@@ -13,7 +13,7 @@
|
||||
inline PyObject* PyString_FromString(const char *v) {
|
||||
return PyUnicode_FromFormat("%s", v);
|
||||
}
|
||||
-inline char* PyString_AsString(PyObject *string) {
|
||||
+inline const char* PyString_AsString(PyObject *string) {
|
||||
return PyUnicode_AsUTF8(string);
|
||||
}
|
||||
inline long PyInt_AsLong(PyObject *io) {
|
||||
--
|
||||
2.19.1
|
||||
|
File diff suppressed because it is too large
Load Diff
222
ceph.spec
222
ceph.spec
@ -18,14 +18,8 @@
|
||||
# https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation_phase_2
|
||||
%global _python_bytecompile_extra 1
|
||||
%global _hardened_build 1
|
||||
%global fixme 0
|
||||
|
||||
%bcond_without ocf
|
||||
%ifnarch armv7hl
|
||||
%bcond_without cephfs_java
|
||||
%else
|
||||
%bcond_with cephfs_java
|
||||
%endif
|
||||
%bcond_with make_check
|
||||
%ifarch s390 s390x
|
||||
%bcond_with tcmalloc
|
||||
@ -35,6 +29,7 @@
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
%bcond_without selinux
|
||||
%bcond_without ceph_test_package
|
||||
%bcond_without cephfs_java
|
||||
%bcond_without lttng
|
||||
%bcond_without libradosstriper
|
||||
%global _remote_tarball_prefix https://download.ceph.com/tarballs/
|
||||
@ -42,6 +37,7 @@
|
||||
%if 0%{?suse_version}
|
||||
%bcond_with selinux
|
||||
%bcond_with ceph_test_package
|
||||
%bcond_with cephfs_java
|
||||
#Compat macro for new _fillupdir macro introduced in Nov 2017
|
||||
%if ! %{defined _fillupdir}
|
||||
%global _fillupdir /var/adm/fillup-templates
|
||||
@ -58,11 +54,21 @@
|
||||
%endif
|
||||
%endif
|
||||
%endif
|
||||
%if 0%{?fedora} >= 30 || 0%{?suse_version} >= 1500
|
||||
%bcond_without python2
|
||||
%bcond_with seastar
|
||||
%if 0%{?fedora} || 0%{?suse_version} >= 1500
|
||||
# distros where py2 is _optional_
|
||||
%bcond_with python2
|
||||
%else
|
||||
# distros where py2 is _mandatory_
|
||||
%bcond_without python2
|
||||
%endif
|
||||
%if 0%{?fedora} || 0%{?suse_version} >= 1500
|
||||
# distros that ship cmd2 and/or colorama
|
||||
%bcond_without cephfs_shell
|
||||
%else
|
||||
# distros that do _not_ ship cmd2/colorama
|
||||
%bcond_with cephfs_shell
|
||||
%endif
|
||||
%if 0%{without python2}
|
||||
%global _defined_if_python2_absent 1
|
||||
%endif
|
||||
@ -89,7 +95,7 @@
|
||||
# main package definition
|
||||
#################################################################################
|
||||
Name: ceph
|
||||
Version: 13.2.2
|
||||
Version: 14.0.1
|
||||
Release: 1%{?dist}
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
Epoch: 2
|
||||
@ -105,19 +111,9 @@ License: LGPL-2.1 and CC-BY-SA-3.0 and GPL-2.0 and BSL-1.0 and BSD-3-Clause and
|
||||
Group: System/Filesystems
|
||||
%endif
|
||||
URL: http://ceph.com/
|
||||
Source0: %{?_remote_tarball_prefix}ceph-13.2.2.tar.bz2
|
||||
Source0: %{?_remote_tarball_prefix}ceph-14.0.1.tar.bz2
|
||||
Patch001: 0001-f30-python3-execs.patch
|
||||
Patch002: 0002-32-bit-compile-patch.patch
|
||||
Patch003: 0003-mgr-Change-signature-of-PyString_AsString-to-match-r.patch
|
||||
#Patch004: 0004-Rename-include-assert.h.patch
|
||||
%if 0%{?suse_version}
|
||||
# _insert_obs_source_lines_here
|
||||
%if 0%{?is_opensuse}
|
||||
ExclusiveArch: x86_64 aarch64 ppc64 ppc64le
|
||||
%else
|
||||
ExclusiveArch: x86_64 aarch64 ppc64le s390x
|
||||
%endif
|
||||
%endif
|
||||
ExcludeArch: i686 armv7hl
|
||||
#################################################################################
|
||||
# dependencies that apply across all distro families
|
||||
#################################################################################
|
||||
@ -136,20 +132,29 @@ BuildRequires: selinux-policy-devel
|
||||
%endif
|
||||
BuildRequires: bc
|
||||
BuildRequires: gperf
|
||||
BuildRequires: cmake
|
||||
%if 0%{?rhel} == 7
|
||||
BuildRequires: cmake3 > 3.5
|
||||
%else
|
||||
BuildRequires: cmake > 3.5
|
||||
%endif
|
||||
BuildRequires: cryptsetup
|
||||
BuildRequires: fuse-devel
|
||||
%if 0%{?rhel} == 7
|
||||
# devtoolset offers newer make and valgrind-devel, but the old ones are good
|
||||
# enough.
|
||||
BuildRequires: devtoolset-7-gcc-c++
|
||||
BuildRequires: devtoolset-7-gcc-c++ >= 7.3.1
|
||||
%else
|
||||
BuildRequires: gcc-c++
|
||||
%endif
|
||||
BuildRequires: gdbm
|
||||
%if 0%{with tcmalloc}
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
BuildRequires: gperftools-devel >= 2.6.1
|
||||
%endif
|
||||
%if 0%{?suse_version}
|
||||
BuildRequires: gperftools-devel >= 2.4
|
||||
%endif
|
||||
%endif
|
||||
BuildRequires: jq
|
||||
BuildRequires: leveldb-devel > 1.2
|
||||
BuildRequires: libaio-devel
|
||||
@ -168,6 +173,7 @@ BuildRequires: procps
|
||||
BuildRequires: python%{_python_buildid}
|
||||
BuildRequires: python%{_python_buildid}-devel
|
||||
BuildRequires: snappy-devel
|
||||
BuildRequires: sudo
|
||||
BuildRequires: udev
|
||||
BuildRequires: util-linux
|
||||
BuildRequires: valgrind-devel
|
||||
@ -186,7 +192,17 @@ BuildRequires: python%{_python_buildid}-tox
|
||||
BuildRequires: python%{_python_buildid}-virtualenv
|
||||
BuildRequires: socat
|
||||
%endif
|
||||
|
||||
%if 0%{with seastar}
|
||||
BuildRequires: c-ares-devel
|
||||
BuildRequires: gnutls-devel
|
||||
BuildRequires: hwloc-devel
|
||||
BuildRequires: libpciaccess-devel
|
||||
BuildRequires: lksctp-tools-devel
|
||||
BuildRequires: protobuf-devel
|
||||
BuildRequires: ragel
|
||||
BuildRequires: systemtap-sdt-devel
|
||||
BuildRequires: yaml-cpp-devel
|
||||
%endif
|
||||
#################################################################################
|
||||
# distro-conditional dependencies
|
||||
#################################################################################
|
||||
@ -219,6 +235,7 @@ BuildRequires: btrfs-progs
|
||||
BuildRequires: nss-devel
|
||||
BuildRequires: keyutils-libs-devel
|
||||
BuildRequires: libibverbs-devel
|
||||
BuildRequires: librdmacm-devel
|
||||
BuildRequires: openldap-devel
|
||||
BuildRequires: openssl-devel
|
||||
BuildRequires: CUnit-devel
|
||||
@ -275,6 +292,17 @@ BuildRequires: expat-devel
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
BuildRequires: redhat-rpm-config
|
||||
%endif
|
||||
%if 0%{with seastar}
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
BuildRequires: cryptopp-devel
|
||||
BuildRequires: numactl-devel
|
||||
BuildRequires: protobuf-compiler
|
||||
%endif
|
||||
%if 0%{?suse_version}
|
||||
BuildRequires: libcryptopp-devel
|
||||
BuildRequires: libnuma-devel
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%description
|
||||
Ceph is a massively scalable, open-source, distributed storage system that runs
|
||||
@ -289,6 +317,7 @@ Summary: Ceph Base Package
|
||||
%if 0%{?suse_version}
|
||||
Group: System/Filesystems
|
||||
%endif
|
||||
Provides: ceph-test:/usr/bin/ceph-kvstore-tool
|
||||
Requires: ceph-common = %{_epoch_prefix}%{version}-%{release}
|
||||
Requires: librbd1 = %{_epoch_prefix}%{version}-%{release}
|
||||
Requires: librados2 = %{_epoch_prefix}%{version}-%{release}
|
||||
@ -331,6 +360,7 @@ 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}
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
Requires: python%{_python_buildid}-prettytable
|
||||
Requires: python%{_python_buildid}-requests
|
||||
@ -366,6 +396,7 @@ Summary: Ceph Monitor Daemon
|
||||
%if 0%{?suse_version}
|
||||
Group: System/Filesystems
|
||||
%endif
|
||||
Provides: ceph-test:/usr/bin/ceph-monstore-tool
|
||||
Requires: ceph-base = %{_epoch_prefix}%{version}-%{release}
|
||||
%description mon
|
||||
ceph-mon is the cluster monitor daemon for the Ceph distributed file
|
||||
@ -483,8 +514,10 @@ Summary: Ceph Object Storage Daemon
|
||||
%if 0%{?suse_version}
|
||||
Group: System/Filesystems
|
||||
%endif
|
||||
Provides: ceph-test:/usr/bin/ceph-osdomap-tool
|
||||
Requires: ceph-base = %{_epoch_prefix}%{version}-%{release}
|
||||
Requires: lvm2
|
||||
Requires: sudo
|
||||
%description osd
|
||||
ceph-osd is the object storage daemon for the Ceph distributed file
|
||||
system. It is responsible for storing objects on a local file system
|
||||
@ -710,9 +743,8 @@ Summary: Python 2 libraries for Ceph distributed file system
|
||||
Group: Development/Libraries/Python
|
||||
%endif
|
||||
Requires: libcephfs2 = %{_epoch_prefix}%{version}-%{release}
|
||||
%if 0%{?suse_version}
|
||||
Recommends: python-rados = %{_epoch_prefix}%{version}-%{release}
|
||||
%endif
|
||||
Requires: python-rados = %{_epoch_prefix}%{version}-%{release}
|
||||
Requires: python-ceph-argparse = %{_epoch_prefix}%{version}-%{release}
|
||||
Obsoletes: python-ceph < %{_epoch_prefix}%{version}-%{release}
|
||||
%description -n python-cephfs
|
||||
This package contains Python 2 libraries for interacting with Cephs distributed
|
||||
@ -726,11 +758,24 @@ Group: Development/Libraries/Python
|
||||
%endif
|
||||
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}
|
||||
%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
|
||||
%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}
|
||||
@ -741,6 +786,17 @@ This package contains types and routines for Python 3 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.
|
||||
|
||||
%if 0%{with cephfs_shell}
|
||||
%package -n cephfs-shell
|
||||
Summary: Interactive shell for Ceph file system
|
||||
Requires: python%{python3_pkgversion}-cmd2
|
||||
Requires: python%{python3_pkgversion}-colorama
|
||||
Requires: python%{python3_pkgversion}-cephfs
|
||||
%description -n cephfs-shell
|
||||
This package contains an interactive tool that allows accessing a Ceph
|
||||
file system without mounting it by providing a nice pseudo-shell which
|
||||
works like an FTP client.
|
||||
%endif
|
||||
|
||||
%if 0%{with ceph_test_package}
|
||||
@ -850,7 +906,7 @@ python-rbd, python-rgw or python-cephfs instead.
|
||||
# common
|
||||
#################################################################################
|
||||
%prep
|
||||
%autosetup -p1 -n ceph-13.2.2
|
||||
%autosetup -p1 -n ceph-14.0.1
|
||||
|
||||
%build
|
||||
|
||||
@ -869,13 +925,6 @@ done
|
||||
# the following setting fixed an OOM condition we once encountered in the OBS
|
||||
RPM_OPT_FLAGS="$RPM_OPT_FLAGS --param ggc-min-expand=20 --param ggc-min-heapsize=32768"
|
||||
%endif
|
||||
%ifnarch armv7hl
|
||||
export RPM_OPT_FLAGS=`echo $RPM_OPT_FLAGS | sed -e 's/i386/i486/'`
|
||||
%else
|
||||
# Assume low mem builder for armv7hl and lower garbage collection settings
|
||||
export RPM_OPT_FLAGS="$(echo $RPM_OPT_FLAGS | sed -e 's/i386/i486/' -e 's/-pipe //g' -e 's/-O2 //g') --param ggc-min-expand=20 --param ggc-min-heapsize=32768"
|
||||
%endif
|
||||
|
||||
|
||||
export CPPFLAGS="$java_inc"
|
||||
export CFLAGS="$RPM_OPT_FLAGS"
|
||||
@ -908,7 +957,12 @@ env | sort
|
||||
|
||||
mkdir build
|
||||
cd build
|
||||
cmake .. \
|
||||
%if 0%{?rhel} == 7
|
||||
CMAKE=cmake3
|
||||
%else
|
||||
CMAKE=cmake
|
||||
%endif
|
||||
${CMAKE} .. \
|
||||
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
|
||||
-DCMAKE_INSTALL_LIBDIR=%{_libdir} \
|
||||
-DCMAKE_INSTALL_LIBEXECDIR=%{_libexecdir} \
|
||||
@ -917,13 +971,8 @@ cmake .. \
|
||||
-DCMAKE_INSTALL_MANDIR=%{_mandir} \
|
||||
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \
|
||||
-DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \
|
||||
-DWITH_EMBEDDED=OFF \
|
||||
-DWITH_MANPAGE=ON \
|
||||
-DWITH_PYTHON3=ON \
|
||||
-DWITH_SPDK=OFF \
|
||||
-DWITH_PMEM=OFF \
|
||||
-DWITH_BOOST_CONTEXT=OFF \
|
||||
-DWITH_LEVELDB=OFF \
|
||||
-DWITH_MGR_DASHBOARD_FRONTEND=OFF \
|
||||
%if %{with python2}
|
||||
-DWITH_PYTHON2=ON \
|
||||
@ -955,12 +1004,12 @@ cmake .. \
|
||||
-DWITH_OCF=ON \
|
||||
%endif
|
||||
%ifarch aarch64 armv7hl mips mipsel ppc ppc64 ppc64le %{ix86} x86_64
|
||||
-DWITH_RADOSGW_BEAST_FRONTEND=ON \
|
||||
-DWITH_BOOST_CONTEXT=ON \
|
||||
%else
|
||||
-DWITH_RADOSGW_BEAST_FRONTEND=OFF \
|
||||
-DWITH_BOOST_CONTEXT=OFF \
|
||||
%endif
|
||||
%ifnarch %{arm}
|
||||
-DWITH_RDMA=OFF \
|
||||
%if 0%{with cephfs_shell}
|
||||
-DWITH_CEPHFS_SHELL=ON \
|
||||
%endif
|
||||
%if 0%{with libradosstriper}
|
||||
-DWITH_LIBRADOSSTRIPER=ON \
|
||||
@ -1011,8 +1060,9 @@ ln -sf %{_sbindir}/mount.ceph %{buildroot}/sbin/mount.ceph
|
||||
|
||||
# udev rules
|
||||
install -m 0644 -D udev/50-rbd.rules %{buildroot}%{_udevrulesdir}/50-rbd.rules
|
||||
install -m 0644 -D udev/60-ceph-by-parttypeuuid.rules %{buildroot}%{_udevrulesdir}/60-ceph-by-parttypeuuid.rules
|
||||
install -m 0644 -D udev/95-ceph-osd.rules %{buildroot}%{_udevrulesdir}/95-ceph-osd.rules
|
||||
|
||||
# sudoers.d
|
||||
install -m 0600 -D sudoers.d/ceph-osd-smartctl %{buildroot}%{_sysconfdir}/sudoers.d/ceph-osd-smartctl
|
||||
|
||||
#set up placeholder directories
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/ceph
|
||||
@ -1023,6 +1073,8 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/mon
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/osd
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/mds
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/mgr
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/crash
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/crash/posted
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/radosgw
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-osd
|
||||
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mds
|
||||
@ -1044,15 +1096,14 @@ rm -rf %{buildroot}
|
||||
%files
|
||||
|
||||
%files base
|
||||
%{_bindir}/ceph-crash
|
||||
%{_bindir}/crushtool
|
||||
%{_bindir}/monmaptool
|
||||
%{_bindir}/osdmaptool
|
||||
%{_bindir}/ceph-kvstore-tool
|
||||
%{_bindir}/ceph-run
|
||||
%{_bindir}/ceph-detect-init
|
||||
%{_libexecdir}/systemd/system-preset/50-ceph.preset
|
||||
%{_sbindir}/ceph-create-keys
|
||||
%{_sbindir}/ceph-disk
|
||||
%dir %{_libexecdir}/ceph
|
||||
%{_libexecdir}/ceph/ceph_common.sh
|
||||
%dir %{_libdir}/rados-classes
|
||||
@ -1062,6 +1113,7 @@ rm -rf %{buildroot}
|
||||
%{_libdir}/ceph/erasure-code/libec_*.so*
|
||||
%dir %{_libdir}/ceph/compressor
|
||||
%{_libdir}/ceph/compressor/libceph_*.so*
|
||||
%{_unitdir}/ceph-crash.service
|
||||
%ifarch x86_64
|
||||
%dir %{_libdir}/ceph/crypto
|
||||
%{_libdir}/ceph/crypto/libceph_*.so*
|
||||
@ -1079,16 +1131,8 @@ rm -rf %{buildroot}
|
||||
%config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/ceph-mon
|
||||
%config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/ceph-osd-mds
|
||||
%endif
|
||||
%{_unitdir}/ceph-disk@.service
|
||||
%{_unitdir}/ceph.target
|
||||
%if 0%{with python2}
|
||||
%{python_sitelib}/ceph_detect_init*
|
||||
%{python_sitelib}/ceph_disk*
|
||||
%else
|
||||
%{python3_sitelib}/ceph_detect_init*
|
||||
%{python3_sitelib}/ceph_disk*
|
||||
%endif
|
||||
%if 0%{with python2}
|
||||
%dir %{python_sitelib}/ceph_volume
|
||||
%{python_sitelib}/ceph_volume/*
|
||||
%{python_sitelib}/ceph_volume-*
|
||||
@ -1098,15 +1142,15 @@ rm -rf %{buildroot}
|
||||
%{python3_sitelib}/ceph_volume-*
|
||||
%endif
|
||||
%{_mandir}/man8/ceph-deploy.8*
|
||||
%{_mandir}/man8/ceph-detect-init.8*
|
||||
%{_mandir}/man8/ceph-create-keys.8*
|
||||
%{_mandir}/man8/ceph-disk.8*
|
||||
%{_mandir}/man8/ceph-run.8*
|
||||
%{_mandir}/man8/crushtool.8*
|
||||
%{_mandir}/man8/osdmaptool.8*
|
||||
%{_mandir}/man8/monmaptool.8*
|
||||
%{_mandir}/man8/ceph-kvstore-tool.8*
|
||||
#set up placeholder directories
|
||||
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/crash
|
||||
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/crash/posted
|
||||
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/tmp
|
||||
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/bootstrap-osd
|
||||
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/bootstrap-mds
|
||||
@ -1119,22 +1163,22 @@ rm -rf %{buildroot}
|
||||
%if 0%{?suse_version}
|
||||
%fillup_only
|
||||
if [ $1 -eq 1 ] ; then
|
||||
/usr/bin/systemctl preset ceph-disk@\*.service ceph.target >/dev/null 2>&1 || :
|
||||
/usr/bin/systemctl preset ceph.target ceph-crash.service >/dev/null 2>&1 || :
|
||||
fi
|
||||
%endif
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
%systemd_post ceph-disk@\*.service ceph.target
|
||||
%systemd_post ceph.target ceph-crash.service
|
||||
%endif
|
||||
if [ $1 -eq 1 ] ; then
|
||||
/usr/bin/systemctl start ceph.target >/dev/null 2>&1 || :
|
||||
/usr/bin/systemctl start ceph.target ceph-crash.service >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
%preun base
|
||||
%if 0%{?suse_version}
|
||||
%service_del_preun ceph-disk@\*.service ceph.target
|
||||
%service_del_preun ceph.target ceph-crash.service
|
||||
%endif
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
%systemd_preun ceph-disk@\*.service ceph.target
|
||||
%systemd_preun ceph.target ceph-crash.service
|
||||
%endif
|
||||
|
||||
%postun base
|
||||
@ -1142,10 +1186,10 @@ fi
|
||||
test -n "$FIRST_ARG" || FIRST_ARG=$1
|
||||
%if 0%{?suse_version}
|
||||
DISABLE_RESTART_ON_UPDATE="yes"
|
||||
%service_del_postun ceph-disk@\*.service ceph.target
|
||||
%service_del_postun ceph.target
|
||||
%endif
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
%systemd_postun ceph-disk@\*.service ceph.target
|
||||
%systemd_postun ceph.target
|
||||
%endif
|
||||
if [ $FIRST_ARG -ge 1 ] ; then
|
||||
# Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
|
||||
@ -1154,9 +1198,6 @@ if [ $FIRST_ARG -ge 1 ] ; then
|
||||
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 ceph-disk@\*.service > /dev/null 2>&1 || :
|
||||
fi
|
||||
fi
|
||||
|
||||
%files common
|
||||
@ -1213,15 +1254,6 @@ fi
|
||||
%config %{_sysconfdir}/bash_completion.d/radosgw-admin
|
||||
%config(noreplace) %{_sysconfdir}/ceph/rbdmap
|
||||
%{_unitdir}/rbdmap.service
|
||||
%if 0%{with python2}
|
||||
%{python_sitelib}/ceph_argparse.py*
|
||||
%{python_sitelib}/ceph_daemon.py*
|
||||
%else
|
||||
%{python3_sitelib}/ceph_argparse.py
|
||||
%{python3_sitelib}/__pycache__/ceph_argparse.cpython*.py*
|
||||
%{python3_sitelib}/ceph_daemon.py
|
||||
%{python3_sitelib}/__pycache__/ceph_daemon.cpython*.py*
|
||||
%endif
|
||||
%dir %{_udevrulesdir}
|
||||
%{_udevrulesdir}/50-rbd.rules
|
||||
%attr(3770,ceph,ceph) %dir %{_localstatedir}/log/ceph/
|
||||
@ -1535,9 +1567,6 @@ fi
|
||||
%{_libexecdir}/ceph/ceph-osd-prestart.sh
|
||||
%{_sbindir}/ceph-volume
|
||||
%{_sbindir}/ceph-volume-systemd
|
||||
%dir %{_udevrulesdir}
|
||||
%{_udevrulesdir}/60-ceph-by-parttypeuuid.rules
|
||||
%{_udevrulesdir}/95-ceph-osd.rules
|
||||
%{_mandir}/man8/ceph-clsinfo.8*
|
||||
%{_mandir}/man8/ceph-osd.8*
|
||||
%{_mandir}/man8/ceph-bluestore-tool.8*
|
||||
@ -1551,6 +1580,7 @@ fi
|
||||
%{_unitdir}/ceph-volume@.service
|
||||
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/osd
|
||||
%config(noreplace) %{_sysctldir}/90-ceph-osd.conf
|
||||
%{_sysconfdir}/sudoers.d/ceph-osd-smartctl
|
||||
|
||||
%post osd
|
||||
%if 0%{?suse_version}
|
||||
@ -1569,8 +1599,6 @@ fi
|
||||
%else
|
||||
/usr/lib/systemd/systemd-sysctl %{_sysctldir}/90-ceph-osd.conf > /dev/null 2>&1 || :
|
||||
%endif
|
||||
# work around https://tracker.ceph.com/issues/24903
|
||||
chown -f -h ceph:ceph /var/lib/ceph/osd/*/block* 2>&1 > /dev/null || :
|
||||
|
||||
%preun osd
|
||||
%if 0%{?suse_version}
|
||||
@ -1634,7 +1662,6 @@ fi
|
||||
%{_includedir}/rados/crc32c.h
|
||||
%{_includedir}/rados/rados_types.h
|
||||
%{_includedir}/rados/rados_types.hpp
|
||||
%{_includedir}/rados/memory.h
|
||||
%{_libdir}/librados.so
|
||||
%if %{with lttng}
|
||||
%{_libdir}/librados_tp.so
|
||||
@ -1689,6 +1716,7 @@ fi
|
||||
|
||||
%files -n librgw2
|
||||
%{_libdir}/librgw.so.*
|
||||
%{_libdir}/librgw_admin_user.so.*
|
||||
%if %{with lttng}
|
||||
%{_libdir}/librgw_op_tp.so*
|
||||
%{_libdir}/librgw_rados_tp.so*
|
||||
@ -1701,8 +1729,10 @@ fi
|
||||
%files -n librgw-devel
|
||||
%dir %{_includedir}/rados
|
||||
%{_includedir}/rados/librgw.h
|
||||
%{_includedir}/rados/librgw_admin_user.h
|
||||
%{_includedir}/rados/rgw_file.h
|
||||
%{_libdir}/librgw.so
|
||||
%{_libdir}/librgw_admin_user.so
|
||||
|
||||
%if 0%{with python2}
|
||||
%files -n python-rgw
|
||||
@ -1751,11 +1781,21 @@ fi
|
||||
%{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 cephfs_shell}
|
||||
%files -n cephfs-shell
|
||||
%{python3_sitelib}/cephfs_shell-*.egg-info
|
||||
%{_bindir}/cephfs-shell
|
||||
%endif
|
||||
|
||||
%if 0%{with ceph_test_package}
|
||||
@ -1841,13 +1881,8 @@ if test $STATUS -eq 0; then
|
||||
/usr/bin/systemctl stop ceph.target > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
# Relabel the files
|
||||
# Use ceph-disk fix for first package install and fixfiles otherwise
|
||||
if [ "$1" = "1" ]; then
|
||||
/usr/sbin/ceph-disk fix --selinux
|
||||
else
|
||||
/usr/sbin/fixfiles -C ${FILE_CONTEXT}.pre restore 2> /dev/null
|
||||
fi
|
||||
# Relabel the files fix for first package install
|
||||
/usr/sbin/fixfiles -C ${FILE_CONTEXT}.pre restore 2> /dev/null
|
||||
|
||||
rm -f ${FILE_CONTEXT}.pre
|
||||
# The fixfiles command won't fix label for /var/run/ceph
|
||||
@ -1906,6 +1941,11 @@ exit 0
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Dec 04 2018 Boris Ranto <branto@redhat.com> - 2:14.0.1-1
|
||||
- New release (2:14.0.1-1)
|
||||
- Sync with upstream
|
||||
- Drop 32-bit support
|
||||
|
||||
* Wed Nov 21 2018 Boris Ranto <branto@redhat.com> - 2:13.2.2-1
|
||||
- New release (2:13.2.2-1)
|
||||
- Sync with upstream
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (ceph-13.2.2.tar.bz2) = 04cf65503120f64fcc834498f509f385d5427b09c7690bc18318d39242f48786f4703b10fae3055f7fbe9edae84bb9dae0e9b7a3bcd092bf3e257ad274d183b6
|
||||
SHA512 (ceph-14.0.1.tar.bz2) = a949ea3cbd6ee0cae1cf60193b3e8de80b7af43155869f8f504e2aeedc7ee2db5d484013572b28d5ae1a0a0b7b619ee912f536a0015f4c9d18ea2a8705f9150a
|
||||
|
Loading…
Reference in New Issue
Block a user