SHA256
1
0
forked from pool/ceph

Accepting request 478533 from filesystems:ceph

1

OBS-URL: https://build.opensuse.org/request/show/478533
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/ceph?expand=0&rev=8
This commit is contained in:
Dominique Leuenberger 2017-03-13 14:31:02 +00:00 committed by Git OBS Bridge
commit a0438e5b1c
10 changed files with 1142 additions and 150 deletions

View File

@ -1,13 +1,13 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="versionformat">11.0.0+git.%ct.%h</param>
<param name="versionformat">12.0.0+git.%ct.%h</param>
<param name="url">git://github.com/SUSE/ceph.git</param>
<param name="revision">ses5</param>
<param name="filename">ceph</param>
<param name="scm">git</param>
<param name="package-meta">no</param>
<param name="changesgenerate">enable</param>
<param name="commandtorun">sh ../../../ceph_ver_hack.sh</param>
<param name="commandtorun">sh etc/ceph_ver_hack.sh</param>
</service>
<service name="extract_ceph_spec" mode="disabled" />
<service name="recompress" mode="disabled">

View File

@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://github.com/SUSE/ceph.git</param>
<param name="changesrevision">a17726c4326ee895bf40686e3340c04c6963c153</param></service></servicedata>
<param name="changesrevision">410e200be5f33c0f2079a3ad1c0cbc2464236e53</param></service></servicedata>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d2b78dfb0da332f53f848d774aea562854e5e6d25f6f2f8bc0316ddd6f86b3fe
size 17530394

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:86c397c17e3fd6743368d7349bece0faf35f166dad3d3aec0ae1ae67c7498e53
size 103823168

View File

@ -1,3 +1,385 @@
-------------------------------------------------------------------
Fri Mar 10 15:55:53 UTC 2017 - ncutler@suse.com
- Update to version 12.0.0+git.1489159457.410e200:
+ build/ops: fix Group strings for library packages
-------------------------------------------------------------------
Fri Mar 3 15:32:06 UTC 2017 - ncutler@suse.com
- Update to version 12.0.0+git.1488553020.e902441:
+ Recent upstream master (3c0af07629dc661aba84e2fef696339ac7171914)
+ Builds with GCC7 (boo#1025891)
-------------------------------------------------------------------
Wed Feb 08 21:28:28 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1486588482.ba197ae:
+ Update to latest upstream master (3d740bd)
+ cmake: added empty RPATH to several executables
+ rocksdb: sync with upstream
-------------------------------------------------------------------
Fri Jan 20 14:00:36 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1484919552.9216e9a:
+ Revert "rpm: put distro conditionals around Source0 in spec file"
+ Revert "ceph.spec.in: revert Source0 line to upstream version"
-------------------------------------------------------------------
Fri Jan 20 10:18:44 UTC 2017 - ncutler@suse.com
- pre_checkin.sh: add logic to remove s390 architectures from ExclusiveArch
line in ceph-test.spec (rationale: ceph-test is not shipped for s390x)
-------------------------------------------------------------------
Fri Jan 20 10:06:54 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1484745543.7b08de5:
+ Update to latest upstream master (36874c8) - significant changes:
* cmake: Turn libcommon into a shared library (PR#12840)
* cmake: fix rpath on shared libraries and executables (PR#12927)
+ Fix build failure in ppc64le and s390x, caused by missing
"-momit-leaf-frame-pointer" gcc option in these architectures:
+ rocksdb: build with ppc64 (PR#12908)
-------------------------------------------------------------------
Tue Jan 17 14:14:45 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1484659687.3472421:
+ rpm: tell openSUSE to never clean the spec file
+ Enable ppc64le and s390x builds in SLE
+ rpm: lttng only on x86_64 and aarch64
-------------------------------------------------------------------
Thu Jan 05 10:43:34 UTC 2017 - jfajerski@suse.com
- Update to version 11.1.0+git.1483528076.d86680e (latest master)
+ Merge branch 'master' into ses5 (Merge: 185bcce798 a7b78620f0) with conflicts:
conflicts in qa/ where resolved with theirs
conflict in src/osd/PrimaryLogPG.cc was resolved with picking ours plus a method rename
int ReplicatedPG::do_extent_cmp -> int PrimaryLogPG::do_extent_cmp
-------------------------------------------------------------------
Tue Dec 13 21:21:41 UTC 2016 - ncutler@suse.com
- Update to version 11.1.0+git.1481663255.bf42706:
+ Update to upstream 11.1.0 release; for details see
http://docs.ceph.com/docs/master/release-notes/#v11-1-0-release-candidate
+ move ceph_ver_hack.sh script from build service package to git repo
(bsc#1015419)
-------------------------------------------------------------------
Tue Nov 29 20:39:16 UTC 2016 - ncutler@suse.com
- Update to version 11.0.2+git.1480437645.66595d3
+ Update to latest upstream master (boost library is now included in the
tarball, so the tarball is much larger than before and the build takes
longer to complete)
+ ceph_ver_hack_sh adaptation (upstream dropped src/make_version script)
+ rocksdb: do not build with --march=native (bsc#1012553)
-------------------------------------------------------------------
Fri Nov 25 20:42:45 UTC 2016 - ncutler@suse.com
- Update to version 11.0.2+git.1480105120.6b8e9e5:
+ Revert commit 8aee8db140bcbd1ffd2a7b571dbbade10bec9de3 because it
conflicted with upstream
+ update to latest upstream kraken (11.0.2) - for details, see
http://ceph.com/releases/kraken-11-0-2-released/
-------------------------------------------------------------------
Mon Sep 12 12:48:33 UTC 2016 - ncutler@suse.com
- Update to version 11.0.0+git.1473684054.73e4b4a:
+ safe_io: Improve portability by replacing loff_t type usage with off_t.
+ mon: remove the redundant list swap in paxos commit_proposal
+ msg/EventPoll.h: add override to virtual functions
+ msg/EventKqueue.h: add override to virtual func
+ msg/EventSelect.h: add override to virtual funct
+ ceph-disk: Compatibility fixes for Python 3
+ ceph-disk: Use true integer division in get_dev_size
+ ceph-disk: Fix bug in FileLock
+ ceph-disk: Allow ConfigObj to write in binary mode
+ ceph-disk: Use context manager with FileLock
+ ceph-disk: Use os.path.isabs instead of .startswith('/')
+ ceph-disk: Set space_symlink to the path, not file object
+ ceph-disk: PEP8ify
+ rgw: rgw file fix bug of rgw_lookup can not exact match file name
+ rgw: fix the wrong return value
+ rgw/rgw_coroutine: move WaitContext to .cc file
+ client: pass a mask parameter to path_walk
+ mds/mdstypes: add btime to inode
+ mds/Server: set btime=ctime on creation
+ mds/MDCache: set btime on system inodes
+ include/ceph_features: add FS_BTIME features
+ mds: pass btime in InodeStat MClientReply, if feature is present
+ client: keep btime in Inode and InodeStat
+ ceph: break up ll_getattr into two functions
+ client: move the device bitshift handling macros to Client.h
+ libcephfs: add a ceph_ll_getattrx and ceph_statx
+ libcephfs: add a test for "lazy" statx
+ mds/client: add btime to CapSnap and MClientCaps
+ mds/mdstypes: add change attribute to inode
+ mds/Server: set change_attr to 0 on creation
+ mds/MDCache: set change_attr to 0 on system_inodes
+ include/ceph_features: add FS_CHANGE_ATTR feature
+ mds: pass change_attr in InodeStat MClientReply, if feature is present
+ mds/client: keep change_attr in Inode, CapSnap and MClientCaps
+ mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL
+ mds/client: bump the change_attr at the appropriate time for files
+ libcephfs: return the change_attr in the statx.stx_version field
+ tests: add a ChangeAttr test
+ mds: make frag_info_t add_dirty() function take a pointer to touched_mtime
+ mds: add change_attr to frag_info_t
+ test: add test for change attribute of directories
+ cephfs: rename ceph_mds_request_head and _args with a _legacy postfix
+ MDS: allow the MDS to accept requests to set the btime
+ client: add the ability to set the btime
+ client: add a ceph_fstatx
+ client: extend the Btime test to cover fstatx as well
+ journal/JournalTrimmer: move C_RemoveSet struct
+ rbd_mirror/ImageSynceThrottler: move struct to .cc
+ libcephfs: add unmount function in cephfs.pyx
+ rgw: fix typo of "minite" to "minute" in rgw_lc.cc
+ rgw/rgw_lc.cc: fix sleep time according to the error message
+ crush: don't normalize input of crush_ln iteratively
+ crush: remove clutter
+ mds: remove max_mds config option
+ vstart.sh: add option to turn on multimds
+ rgw: right parenthesis is missing in radosgw-admin help message on caps
+ SQUASH: client: request AUTH caps on the directory during create if we'll need to check perms locally
+ SQUASH: Revert "mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL"
+ SQUASH: client: always take a change_attr update from the server if it's newer
+ SQUASH: mds/client: don't get clever with ceph_mds_request_head_legacy encode/decode
+ rgw/rgw_rados.h: remove unneeded class C_Tick
+ SQUASH: client: querying for stx_version field requires getting all shared caps
+ SQUASH: mds/client: add routines to copy to/from ceph_mds_request_head_legacy
+ client: properly set inode number of created inode in replay request
+ test/librbd/fsx: enable exclusive-lock feature in krbd mode
+ os/bluestore/BlueFS: fix async compaction txn
+ scripts/bdev_grep: parse bluefs style extents too
+ SQUASH: client: request all shared caps if ctime was requested
+ os/bluestore/BlueFS: factor unflushed log into runway calculation
+ osd/ReplicatedBackend: move classes to cc file
+ os/bluestore: honour allow-eio flag during read
+ CmakeLists.txt: use LIB_RESOLV instead of resolv.
+ osd/ReplicatedPG: move classes to .cc file
+ librbd: potential double-unwatch of watch handle upon error
+ cls/journal: add async client_update_state method
+ journal: allow to trim journal for "laggy" clients
+ librbd: optionally flag "laggy" journal clients disconnected
+ rbd: new command to disconnect journal client
+ rbd-mirror: decode_client_meta should return false on error
+ rbd-mirror: resync was possible only when image replayer start had succeeded
+ rbd-mirror: stop replay when client is disconnected
+ rbd-mirror: option to automatically resync after journal client disconnect
+ qa/workunits/cephtool/test.sh: fix omision of ceph-command
+ os/bluestore: use global compressor if possible
+ build/ops: fix /etc/os-release parsing in install-deps.sh
+ osd/OSD.cc: remove repeated searching of map
+ test/cephfs: add mount&&unmount test
+ mds: s/used_ions/used_inos/
+ Add dependencies from ceph_smalliobenchrbd on cls_rbd, cls_journal, and cls_lock.
+ ceph_test_objectstore: add SyntheticMatrixSharding
+ ceph_test_objectstore: occasional umount/fsck/mount
+ ceph_test_objectstore: test shards for longer
+ crush/CrushCompiler.cc:884 bug fix: index out of range
+ Makfile: Fix rocksdb error when make dist
+ src/CMakeLists.txt: exclude parts not buildable on FreeBSD
+ src/pybind/CMakeLists.txt: conditionaly build cython tools
+ src/tools/CMakeLists.txt: conditionaly build ceph-client-debug
+ src/test/objectstore/CMakeLists.txt: conditionaly build tests
+ mds: trim null dentries proactively
+ cmake: include(SIMDExt) in src/CMakeLists.txt
+ mds: log path with CDir damage messages
+ hint in extent_alloc code
+ remove wrap argument and handle in wrappers
+ Hint argument in alloc_blocks + test case changes
+ os/bluestore: shard extent map
+ os/bluestore: make nid and blobid allocation less racy
+ os/bluestore: optimize compress_extent_map
+ os/bluestore: fix fsck used_block bitmap
+ os/bluestore: use block_size for allocator unit
+ os/bluestore: make blob_t unused helpers use logical length
+ os/bluestore: instrument big/small writes
+ os/bluestore: instrument transaction count
+ os/bluestore: instrument onode reshard events
+ os/bluestore: dump some stats after fsck
+ os/bluestore: assert shared blob cache cleared on split
+ remove autotools
+ test/objectstore/CMakeLists.txt: fix libaio conditional
+ buffer: clear append_buffer on clear()
+ os/bluestore: tunable prealloc size for ExtentMap inline_bl
+ os/bluestore: don't dirty onode if its size is already at desired offset
+ os/bluestore: remove never reachable asserts
+ os/bluestore: drop unnecessary separator between fields
+ os/bluestore: fix key+name sort wonkiness
+ os/bluestore: encode shard id in single byte
+ os/bluestore: small put_ref cleanup
+ os/bluestore: remove faulted debug hackery
+ os/bluestore: bits for unit tests
+ unittest_bluestore_types: resurrect blob and extent_map unit tests
+ os/bluestore/BlueFS: do not start racing async compaction
+ os/bluestore/BlueFS: fix Dir memory leak
+ buffer: implement buffer::list::reserve(n)
+ os/bluestore: do not waste memory on cached encoded blobs
+ qa/workunits/objectstore: fix test_fuse.sh
+ os/FuseStore: only flush if dirty
+ build: drop dryrun of autogen.sh from run-cmake-check.sh script
+ os/bluestore/BlueFS: For logs of rocksdb & bluefs only use directio.
+ os/bluestore: remove some copy-pastes
+ cmake: make py3 a nice-to-have
+ os/bluestore/BlueFS: only extend extent on same bdev
+ msg/AsyncConnection: add const to mem functions
+ msg/AsyncMessenger: add const to function
+ client/barrier: move C_Block_Sync class to .cc
+ osd/OSD.cc: remove unneeded searching of map
+ Set ARM_CRC_FLAGS from the CRC test rather than ARM_NEON_FLAGS
+ rpm: Moved ceph-client-debug from ceph-base to ceph-test package
+ rpm: Renamed bcond tests flag to make_check
+ rbd-nbd: fix kernel deadlock during teuthology testing
+ rbd-nbd: mask out-of-bounds IO errors caused by image shrink
+ librbd: invalidate cache before trimming image
+ librbd: ignore cache busy errors when shrinking an image
+ librbd: potential seg fault when blacklisting an image client
+ cmake: Use WITH_TESTS flag to guard the build of ceph-test scripts/binaries
+ rpm: Added ceph_test_package bcond flag to control the build of ceph-test package
+ deb: Moved ceph-client-debug from ceph-base to ceph-test package
+ ceph-objectstore-tool: add a way to split filestore directories offline
+ install-deps: exit non-zero when we cannot match distro
+ librbd: possible deadlock if cluster connection closed after image
+ osd/ReplicatedPG: remove class redeclaration
+ librbd: ignore partial refresh error when acquiring exclusive lock
+ osd/OSD.cc: remove unneeded returns
-------------------------------------------------------------------
Fri Sep 09 12:53:16 UTC 2016 - ncutler@suse.com
- Update to version 11.0.0+git.1473424516.3b8b524:
+ Revert "ceph_disk.main: s/get_dev_size/get_free_partition_size/"
+ Revert "ceph_disk tests/test_prepare: s/get_dev_size/get_free_partition_size/"
+ Revert "ceph_disk tests/test_get_free_partition_size: New unit tests"
+ Revert "ceph_disk tox.ini: add tests/test_get_free_partition_size.py"
+ rpm: put distro conditionals around Source0 in spec file
-------------------------------------------------------------------
Fri Sep 09 10:59:53 UTC 2016 - ncutler@suse.com
- Update to version 11.0.0+git.1473418476.095f67c:
+ ceph.spec.in: revert Source0 line to upstream version
+ ceph.spec.in: conditionalize %prep command
-------------------------------------------------------------------
Fri Sep 09 08:16:40 UTC 2016 - ncutler@suse.com
- ceph.spec.in: enable cephfs_java build unconditionally
- new (merged) commits from upstream master branch:
+ mailmap updates
+ rgw: fix the handling of rgw_swift_url_prefix.
+ rgw: ONLY improve code formatting around RGWRESTMgr.
+ rgw: add support for the crossdomain.xml resource of Swift API.
+ rgw: add support for the healthcheck feature of Swift API.
+ swift /info implementation.
+ rgw: settle /info implementation across other swift-at-root features.
+ compressor: isa-l extension for zlib plugin Signed-off-by: Alyona Kiseleva <akiselyova@mirantis.com>
+ mon: tear down standby replays on MDS rank stop
+ mon/MDSMonitor: move C_Updated class to .cc file
+ rgw_file: fix/update rgw_open flag arguments
+ rgw_file: fix/update rgw_create flag arguments
+ doc: remove btrfs contradiction
+ msg: make async backend default
+ msg/simple: wait dispatch_queue until all pipes closed
+ rgw_file: implement stateless write completion timer
+ rgw_file: add RGW_OPEN_FLAG_STATELESS as a synonym for V3
+ rgw_file: log on write completion events at level 10
+ rgw file: allow RGWLibFS::write_completion_interval_s to be set in conf
+ osdc/ObjectCacher: move C_ReadFinish, C_RetryRead
+ osdc/Journaler: move C_DelayFlush class to .cc
+ rgw: fix RGWAccessControlPolicy_SWIFT::create return value check error
+ librgw: add API version defines for librgw and rgw_file
+ make-dist/ceph.spec.in: Fix srpm build breakage.
+ ceph_timer: prefer using directive to typedef
+ rgw_file: explain semantics of RGWFileHandle::commit
+ compressor: Better arch ifdefs for isal code
+ mds/MDSTable: add const to member functions
+ os/bluestore: fix some #includes
+ vstart.sh: -b for bluestore
+ os/bluestore/bluestore_types: make blob_t get_chunk_size const
+ os/bluestore: use Blob const and non-const accessors
+ os/bluestore: avoid reencoding unchanged blobs
+ os/bluestore: decode blobs on demand
+ mds/SnapRealm.h: add const to member functions
+ os/bluestore/bluefs: avoid check "locked" field for newly created file
+ os/bluestore/bluefs: check against locked field during unlink
+ os/bluestore/bluefs: assert refs of file don't underflow
+ os/kstore: kill dead code
+ rgw: remove duplicated calls to getattr
+ debian: should dh_python3 python3-* not python-*
+ pybind: silence -Wsign-compare warning
+ test/ceph_test_msgr: fix -Wsign-compare warnings
+ test/unittest_alloc: fix -Wsign-compare warnings
+ librbd: API methods to directly acquire and release the exclusive lock
+ doc: add graphic for cap bit field
+ mds/MDCache.h: remove unneeded access specifier
+ librbd: skeleton implementation of client-side image cache
+ librbd: blocking parent IO completion no longer required
+ librbd: remove use of owner_lock on IO path
+ Revert "osdc: ObjectCacher flusher might needs additional locks"
+ librbd: support bufferlist payload for AioImageWrite
+ librbd: add internal support for scatter/gather IO
+ librbd: initial integration of ImageWriteback to AioImageRequest
+ librbd: consolidate IO clipping to reusable method
+ librbd: differentiate between image and object cache
+ librbd: C_ImageCacheRead bridge from Context to AioCompletion
+ librbd: integrate image cache hooks into IO path
+ common/Throttle.h: remove unneeded class
+ cmake: fix the tracing header dependencies
+ src/test/bench/CMakeLists.txt: RBD exclude
+ src/CMakeLists.txt: RBD|KVS|FUSE exclude
+ src/librbd/CMakeLists.txt: krbd and secret.c are LINUX dependant
+ src/os/CMakeLists.txt: AIO|FUSE exclude
+ src/test/CMakeLists.txt: RADOSGW|RBD exclude
+ src/test/common/CMakeLists.txt: BLKID exclude
+ install-deps.sh: initial distro detection based on /etc/os-release
+ ceph_test_objectstore: fix ObjectStore/StoreTest.BluestoreStatFSTest/2 on ssd
+ ceph_test_objectstore: disable statfs checks on available space
+ messages/MOSDMap: mark as enlighten OSDMap encoder
+ cmake: remove unused librados_api target
+ cmake: replace Findlttng-ust.cmake with FindLTTngUST.cmake
+ cmake: let librados_api_obj depend on librados-tp
+ os/bluestore: yet another statfs test fix
+ Revert "osd/ReplicatedPG: for sync-read it don't cacl l_osd_op_r_prepare_lat."
+ doc/release-notes: v0.94.9
+ os/bluestore/bluefs: use map to track dirty files
+ os/bluestore/bluefs: update mtime of inode in unified path
+ os/bluestore/bluefs: drop redundant eof check for read_random()
+ os/CMakeLists.txt: undubble kv.cc usage.
+ test,pybind: silence -Wsign-compare warnings
+ test/perf_local: fix -Wmaybe-uninitialized warnings
+ os/bluestore: get rid off "isa-l" type in ZLibCompressor ctor
+ Allow compressor build without YASM
+ script/bdev_grep: update to use hex
+ os/bluestore: improve failed csum debug output
+ librbd: improve image state machine debug log messages
+ librbd: deadlock when replaying journal during image open
+ os/bluestore: end scope of std::hex properly
+ os/bluestore: don't over-gift if bluefs free is smaller than bluestore_bluefs_min
+ os/bluestore: use _setattr for SETATTR
+ os/bluestore: make object existence check robust
+ ceph_test_objectstore: assert umount succeeds
+ ceph_test_objectstore: clean up Rename test a bit
+ ceph_test_objectstore: fix TryMoveRename test
+ os/bluestore: add onode/buffer cache statistics
+ os/bluestore: end scope of std::hex properly
+ cmake: pass -DINTEL* to gf-complete cflags
+ os/bluestore: conditional checking label of bluefs devices
+ src/CMakeLists.txt: -Woverloaded-virtual is already included in -Wall on Clang
+ os/bluestore: don't overwrite type if it does already exist and at desired type
+ os/bluestore: trivial cleanups
+ os/bluestore: replace store with logger in Cache
+ os/bluestore: check iterator before using during fsck
-------------------------------------------------------------------
Mon Aug 29 07:24:44 UTC 2016 - ncutler@suse.com

View File

@ -13,6 +13,7 @@
#
# Please submit bugfixes or comments via http://tracker.ceph.com/
#
%bcond_with cephfs_java
%if 0%{?suse_version}
%bcond_without ceph_test_package
%else
@ -26,15 +27,13 @@
# no gperftools/tcmalloc on s390(x)
%bcond_with tcmalloc
%endif
%bcond_with lowmem_builder
%bcond_without lowmem_builder
%bcond_with minimal_debugging_information
%if 0%{?fedora} || 0%{?rhel}
%bcond_without cephfs_java
%bcond_with ocf
%bcond_without selinux
%endif
%if 0%{?suse_version}
%bcond_with cephfs_java
%bcond_without ocf
%if %{with ocf}
%global _with_ocf --with-ocf
@ -45,9 +44,11 @@
# LTTng-UST enabled on Fedora, RHEL 6+, and SLE (not openSUSE)
%if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?suse_version}
%if ! 0%{?is_opensuse}
%ifarch x86_64 aarch64
%bcond_without lttng
%endif
%endif
%endif
%if %{with selinux}
# get selinux policy version
@ -66,7 +67,7 @@
# common
#################################################################################
Name: ceph-test
Version: 11.0.0+git.1472455009.a17726c
Version: 12.0.0+git.1489159457.410e200
Release: 0
Summary: Ceph benchmarks and test tools
License: LGPL-2.1 and CC-BY-SA-1.0 and GPL-2.0 and BSL-1.0 and GPL-2.0-with-autoconf-exception and BSD-3-Clause and MIT
@ -75,7 +76,6 @@ Group: System/Filesystems
%endif
URL: http://ceph.com/
Source0: ceph-%{version}.tar.bz2
Source97: ceph_ver_hack.sh
Source98: README-ceph-test.txt
Source99: ceph-rpmlintrc
# _insert_obs_source_lines_here
@ -83,7 +83,7 @@ Source99: ceph-rpmlintrc
%if 0%{?is_opensuse}
ExclusiveArch: x86_64 aarch64 ppc64 ppc64le
%else
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64 aarch64 ppc64le
%endif
%endif
#################################################################################
@ -92,6 +92,7 @@ ExclusiveArch: x86_64 aarch64
Requires: ceph-common
Requires: xmlstarlet
Requires(post): binutils
@ -104,7 +105,7 @@ BuildRequires: checkpolicy
BuildRequires: selinux-policy-devel
BuildRequires: /usr/share/selinux/devel/policyhelp
%endif
BuildRequires: boost-devel
BuildRequires: bc
BuildRequires: cmake
BuildRequires: cryptsetup
BuildRequires: fuse-devel
@ -113,7 +114,6 @@ BuildRequires: gdbm
%if 0%{with tcmalloc}
BuildRequires: gperftools-devel
%endif
BuildRequires: hdparm
BuildRequires: jq
BuildRequires: leveldb-devel > 1.2
BuildRequires: libaio-devel
@ -218,46 +218,125 @@ This package contains Ceph benchmarks and test tools.
#################################################################################
# packages
#################################################################################
%if 0%{?suse_version}
%endif
%if 0%{with selinux}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?fedora} || 0%{?rhel}
%endif
%if 0%{with xio}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{with xio}
%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}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{with selinux}
%endif
%if 0%{?rhel} || 0%{?fedora}
%endif
%if %{with ocf}
%if 0%{?suse_version}
%endif
%endif
%if 0%{?suse_version}
%endif
%if 0%{?fedora} || 0%{?rhel}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?rhel} || 0%{?fedora}
%if 0%{?suse_version}
%endif
%if 0%{?rhel} || 0%{?fedora}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?rhel} || 0%{?fedora}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?rhel} || 0%{?fedora}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{with ceph_test_package}
%if 0%{?suse_version}
%endif
%endif
%if 0%{with cephfs_java}
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?suse_version}
%endif
%endif
%if 0%{with selinux}
%if 0%{?suse_version}
%endif
%endif
%if 0%{?suse_version}
%endif
%prep
%if 0%{?rhel}
%autosetup -p1 -n @TARBALL_BASENAME@
%endif
%if ! 0%{?rhel}
%autosetup -p1 -n ceph-%version
%endif
%build
%if 0%{with cephfs_java}
@ -279,6 +358,8 @@ export CPPFLAGS="$java_inc"
export CFLAGS="$RPM_OPT_FLAGS"
export CXXFLAGS="$RPM_OPT_FLAGS"
env | sort
mkdir build
cd build
cmake .. \
@ -289,7 +370,9 @@ cmake .. \
-DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} \
-DCMAKE_INSTALL_MANDIR=%{_mandir} \
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \
-DWITH_EMBEDDED=OFF \
-DWITH_MANPAGE=ON \
-DWITH_PYTHON3=ON \
-DWITH_SYSTEMD=ON \
%if 0%{?rhel} && ! 0%{?centos}
-DWITH_SUBMAN=ON \
@ -364,7 +447,7 @@ make DESTDIR=%{buildroot} install
# we have dropped sysvinit bits
rm -f %{buildroot}/%{_sysconfdir}/init.d/ceph
popd
install -D src/etc-rbdmap %{buildroot}%{_sysconfdir}/ceph/rbdmap
install -m 0644 -D src/etc-rbdmap %{buildroot}%{_sysconfdir}/ceph/rbdmap
%if 0%{?fedora} || 0%{?rhel}
install -m 0644 -D etc/sysconfig/ceph %{buildroot}%{_sysconfdir}/sysconfig/ceph
%endif
@ -400,6 +483,7 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/tmp
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/radosgw
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-osd
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mds
@ -418,7 +502,6 @@ rm -rf %{buildroot}%{_bindir}/osdmaptool
rm -rf %{buildroot}%{_bindir}/ceph-run
rm -rf %{buildroot}%{_bindir}/ceph-dencoder
rm -rf %{buildroot}%{_bindir}/ceph-detect-init
rm -rf %{buildroot}%{_unitdir}/ceph-create-keys@.service
rm -rf %{buildroot}%{_bindir}/cephfs-data-scan
rm -rf %{buildroot}%{_bindir}/cephfs-journal-tool
rm -rf %{buildroot}%{_bindir}/cephfs-table-tool
@ -492,6 +575,10 @@ rm -rf %{buildroot}%{_bindir}/ceph-mds
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}%{_libdir}/ceph/mgr
rm -rf %{buildroot}%{_unitdir}/ceph-mgr@.service
rm -rf %{buildroot}%{_unitdir}/ceph-mgr.target
rm -rf %{buildroot}%{_bindir}/ceph-mon
rm -rf %{buildroot}%{_bindir}/ceph-rest-api
rm -rf %{buildroot}%{_mandir}/man8/ceph-mon.8*
@ -502,6 +589,8 @@ rm -rf %{buildroot}%{_unitdir}/ceph-mon.target
rm -rf %{buildroot}%{_bindir}/ceph-fuse
rm -rf %{buildroot}%{_mandir}/man8/ceph-fuse.8*
rm -rf %{buildroot}%{_sbindir}/mount.fuse.ceph
rm -rf %{buildroot}%{_unitdir}/ceph-fuse@.service
rm -rf %{buildroot}%{_unitdir}/ceph-fuse.target
rm -rf %{buildroot}%{_bindir}/rbd-fuse
rm -rf %{buildroot}%{_mandir}/man8/rbd-fuse.8*
rm -rf %{buildroot}%{_bindir}/rbd-mirror
@ -537,11 +626,13 @@ rm -rf %{buildroot}%{_unitdir}/ceph-osd.target
rm -rf %{buildroot}%{_unitdir}/ceph-disk@.service
rm -rf %{buildroot}%{_prefix}/lib/ocf/resource.d/ceph/rbd
rm -rf %{buildroot}%{_libdir}/librados.so.*
rm -rf %{buildroot}%{_libdir}/ceph/libceph-common.so*
rm -rf %{buildroot}%{_libdir}/librados_tp.so.*
rm -rf %{buildroot}%{_includedir}/rados/librados.h
rm -rf %{buildroot}%{_includedir}/rados/librados.hpp
rm -rf %{buildroot}%{_includedir}/rados/buffer.h
rm -rf %{buildroot}%{_includedir}/rados/buffer_fwd.h
rm -rf %{buildroot}%{_includedir}/rados/inline_memory.h
rm -rf %{buildroot}%{_includedir}/rados/page.h
rm -rf %{buildroot}%{_includedir}/rados/crc32c.h
rm -rf %{buildroot}%{_includedir}/rados/rados_types.h
@ -570,12 +661,17 @@ rm -rf %{buildroot}%{_libdir}/librgw.so.*
rm -rf %{buildroot}%{_includedir}/rados/librgw.h
rm -rf %{buildroot}%{_includedir}/rados/rgw_file.h
rm -rf %{buildroot}%{_libdir}/librgw.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
@ -676,6 +772,16 @@ rm -rf %{buildroot}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?fedora} || 0%{?rhel}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?fedora} || 0%{?rhel}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?fedora} || 0%{?rhel}
%endif
%if 0%{?suse_version}
%endif
%if 0%{?fedora} || 0%{?rhel}
@ -755,3 +861,4 @@ rm -rf %{buildroot}
%if 0%{with selinux}
%endif # with selinux
%changelog
# nospeccleaner

View File

@ -1,3 +1,385 @@
-------------------------------------------------------------------
Fri Mar 10 15:55:53 UTC 2017 - ncutler@suse.com
- Update to version 12.0.0+git.1489159457.410e200:
+ build/ops: fix Group strings for library packages
-------------------------------------------------------------------
Fri Mar 3 15:32:06 UTC 2017 - ncutler@suse.com
- Update to version 12.0.0+git.1488553020.e902441:
+ Recent upstream master (3c0af07629dc661aba84e2fef696339ac7171914)
+ Builds with GCC7 (boo#1025891)
-------------------------------------------------------------------
Wed Feb 08 21:28:28 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1486588482.ba197ae:
+ Update to latest upstream master (3d740bd)
+ cmake: added empty RPATH to several executables
+ rocksdb: sync with upstream
-------------------------------------------------------------------
Fri Jan 20 14:00:36 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1484919552.9216e9a:
+ Revert "rpm: put distro conditionals around Source0 in spec file"
+ Revert "ceph.spec.in: revert Source0 line to upstream version"
-------------------------------------------------------------------
Fri Jan 20 10:18:44 UTC 2017 - ncutler@suse.com
- pre_checkin.sh: add logic to remove s390 architectures from ExclusiveArch
line in ceph-test.spec (rationale: ceph-test is not shipped for s390x)
-------------------------------------------------------------------
Fri Jan 20 10:06:54 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1484745543.7b08de5:
+ Update to latest upstream master (36874c8) - significant changes:
* cmake: Turn libcommon into a shared library (PR#12840)
* cmake: fix rpath on shared libraries and executables (PR#12927)
+ Fix build failure in ppc64le and s390x, caused by missing
"-momit-leaf-frame-pointer" gcc option in these architectures:
+ rocksdb: build with ppc64 (PR#12908)
-------------------------------------------------------------------
Tue Jan 17 14:14:45 UTC 2017 - ncutler@suse.com
- Update to version 11.1.0+git.1484659687.3472421:
+ rpm: tell openSUSE to never clean the spec file
+ Enable ppc64le and s390x builds in SLE
+ rpm: lttng only on x86_64 and aarch64
-------------------------------------------------------------------
Thu Jan 05 10:43:34 UTC 2017 - jfajerski@suse.com
- Update to version 11.1.0+git.1483528076.d86680e (latest master)
+ Merge branch 'master' into ses5 (Merge: 185bcce798 a7b78620f0) with conflicts:
conflicts in qa/ where resolved with theirs
conflict in src/osd/PrimaryLogPG.cc was resolved with picking ours plus a method rename
int ReplicatedPG::do_extent_cmp -> int PrimaryLogPG::do_extent_cmp
-------------------------------------------------------------------
Tue Dec 13 21:21:41 UTC 2016 - ncutler@suse.com
- Update to version 11.1.0+git.1481663255.bf42706:
+ Update to upstream 11.1.0 release; for details see
http://docs.ceph.com/docs/master/release-notes/#v11-1-0-release-candidate
+ move ceph_ver_hack.sh script from build service package to git repo
(bsc#1015419)
-------------------------------------------------------------------
Tue Nov 29 20:39:16 UTC 2016 - ncutler@suse.com
- Update to version 11.0.2+git.1480437645.66595d3
+ Update to latest upstream master (boost library is now included in the
tarball, so the tarball is much larger than before and the build takes
longer to complete)
+ ceph_ver_hack_sh adaptation (upstream dropped src/make_version script)
+ rocksdb: do not build with --march=native (bsc#1012553)
-------------------------------------------------------------------
Fri Nov 25 20:42:45 UTC 2016 - ncutler@suse.com
- Update to version 11.0.2+git.1480105120.6b8e9e5:
+ Revert commit 8aee8db140bcbd1ffd2a7b571dbbade10bec9de3 because it
conflicted with upstream
+ update to latest upstream kraken (11.0.2) - for details, see
http://ceph.com/releases/kraken-11-0-2-released/
-------------------------------------------------------------------
Mon Sep 12 12:48:33 UTC 2016 - ncutler@suse.com
- Update to version 11.0.0+git.1473684054.73e4b4a:
+ safe_io: Improve portability by replacing loff_t type usage with off_t.
+ mon: remove the redundant list swap in paxos commit_proposal
+ msg/EventPoll.h: add override to virtual functions
+ msg/EventKqueue.h: add override to virtual func
+ msg/EventSelect.h: add override to virtual funct
+ ceph-disk: Compatibility fixes for Python 3
+ ceph-disk: Use true integer division in get_dev_size
+ ceph-disk: Fix bug in FileLock
+ ceph-disk: Allow ConfigObj to write in binary mode
+ ceph-disk: Use context manager with FileLock
+ ceph-disk: Use os.path.isabs instead of .startswith('/')
+ ceph-disk: Set space_symlink to the path, not file object
+ ceph-disk: PEP8ify
+ rgw: rgw file fix bug of rgw_lookup can not exact match file name
+ rgw: fix the wrong return value
+ rgw/rgw_coroutine: move WaitContext to .cc file
+ client: pass a mask parameter to path_walk
+ mds/mdstypes: add btime to inode
+ mds/Server: set btime=ctime on creation
+ mds/MDCache: set btime on system inodes
+ include/ceph_features: add FS_BTIME features
+ mds: pass btime in InodeStat MClientReply, if feature is present
+ client: keep btime in Inode and InodeStat
+ ceph: break up ll_getattr into two functions
+ client: move the device bitshift handling macros to Client.h
+ libcephfs: add a ceph_ll_getattrx and ceph_statx
+ libcephfs: add a test for "lazy" statx
+ mds/client: add btime to CapSnap and MClientCaps
+ mds/mdstypes: add change attribute to inode
+ mds/Server: set change_attr to 0 on creation
+ mds/MDCache: set change_attr to 0 on system_inodes
+ include/ceph_features: add FS_CHANGE_ATTR feature
+ mds: pass change_attr in InodeStat MClientReply, if feature is present
+ mds/client: keep change_attr in Inode, CapSnap and MClientCaps
+ mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL
+ mds/client: bump the change_attr at the appropriate time for files
+ libcephfs: return the change_attr in the statx.stx_version field
+ tests: add a ChangeAttr test
+ mds: make frag_info_t add_dirty() function take a pointer to touched_mtime
+ mds: add change_attr to frag_info_t
+ test: add test for change attribute of directories
+ cephfs: rename ceph_mds_request_head and _args with a _legacy postfix
+ MDS: allow the MDS to accept requests to set the btime
+ client: add the ability to set the btime
+ client: add a ceph_fstatx
+ client: extend the Btime test to cover fstatx as well
+ journal/JournalTrimmer: move C_RemoveSet struct
+ rbd_mirror/ImageSynceThrottler: move struct to .cc
+ libcephfs: add unmount function in cephfs.pyx
+ rgw: fix typo of "minite" to "minute" in rgw_lc.cc
+ rgw/rgw_lc.cc: fix sleep time according to the error message
+ crush: don't normalize input of crush_ln iteratively
+ crush: remove clutter
+ mds: remove max_mds config option
+ vstart.sh: add option to turn on multimds
+ rgw: right parenthesis is missing in radosgw-admin help message on caps
+ SQUASH: client: request AUTH caps on the directory during create if we'll need to check perms locally
+ SQUASH: Revert "mds: ensure that change_attr reflects metadata changes on clients that hold CAP_FILE_EXCL"
+ SQUASH: client: always take a change_attr update from the server if it's newer
+ SQUASH: mds/client: don't get clever with ceph_mds_request_head_legacy encode/decode
+ rgw/rgw_rados.h: remove unneeded class C_Tick
+ SQUASH: client: querying for stx_version field requires getting all shared caps
+ SQUASH: mds/client: add routines to copy to/from ceph_mds_request_head_legacy
+ client: properly set inode number of created inode in replay request
+ test/librbd/fsx: enable exclusive-lock feature in krbd mode
+ os/bluestore/BlueFS: fix async compaction txn
+ scripts/bdev_grep: parse bluefs style extents too
+ SQUASH: client: request all shared caps if ctime was requested
+ os/bluestore/BlueFS: factor unflushed log into runway calculation
+ osd/ReplicatedBackend: move classes to cc file
+ os/bluestore: honour allow-eio flag during read
+ CmakeLists.txt: use LIB_RESOLV instead of resolv.
+ osd/ReplicatedPG: move classes to .cc file
+ librbd: potential double-unwatch of watch handle upon error
+ cls/journal: add async client_update_state method
+ journal: allow to trim journal for "laggy" clients
+ librbd: optionally flag "laggy" journal clients disconnected
+ rbd: new command to disconnect journal client
+ rbd-mirror: decode_client_meta should return false on error
+ rbd-mirror: resync was possible only when image replayer start had succeeded
+ rbd-mirror: stop replay when client is disconnected
+ rbd-mirror: option to automatically resync after journal client disconnect
+ qa/workunits/cephtool/test.sh: fix omision of ceph-command
+ os/bluestore: use global compressor if possible
+ build/ops: fix /etc/os-release parsing in install-deps.sh
+ osd/OSD.cc: remove repeated searching of map
+ test/cephfs: add mount&&unmount test
+ mds: s/used_ions/used_inos/
+ Add dependencies from ceph_smalliobenchrbd on cls_rbd, cls_journal, and cls_lock.
+ ceph_test_objectstore: add SyntheticMatrixSharding
+ ceph_test_objectstore: occasional umount/fsck/mount
+ ceph_test_objectstore: test shards for longer
+ crush/CrushCompiler.cc:884 bug fix: index out of range
+ Makfile: Fix rocksdb error when make dist
+ src/CMakeLists.txt: exclude parts not buildable on FreeBSD
+ src/pybind/CMakeLists.txt: conditionaly build cython tools
+ src/tools/CMakeLists.txt: conditionaly build ceph-client-debug
+ src/test/objectstore/CMakeLists.txt: conditionaly build tests
+ mds: trim null dentries proactively
+ cmake: include(SIMDExt) in src/CMakeLists.txt
+ mds: log path with CDir damage messages
+ hint in extent_alloc code
+ remove wrap argument and handle in wrappers
+ Hint argument in alloc_blocks + test case changes
+ os/bluestore: shard extent map
+ os/bluestore: make nid and blobid allocation less racy
+ os/bluestore: optimize compress_extent_map
+ os/bluestore: fix fsck used_block bitmap
+ os/bluestore: use block_size for allocator unit
+ os/bluestore: make blob_t unused helpers use logical length
+ os/bluestore: instrument big/small writes
+ os/bluestore: instrument transaction count
+ os/bluestore: instrument onode reshard events
+ os/bluestore: dump some stats after fsck
+ os/bluestore: assert shared blob cache cleared on split
+ remove autotools
+ test/objectstore/CMakeLists.txt: fix libaio conditional
+ buffer: clear append_buffer on clear()
+ os/bluestore: tunable prealloc size for ExtentMap inline_bl
+ os/bluestore: don't dirty onode if its size is already at desired offset
+ os/bluestore: remove never reachable asserts
+ os/bluestore: drop unnecessary separator between fields
+ os/bluestore: fix key+name sort wonkiness
+ os/bluestore: encode shard id in single byte
+ os/bluestore: small put_ref cleanup
+ os/bluestore: remove faulted debug hackery
+ os/bluestore: bits for unit tests
+ unittest_bluestore_types: resurrect blob and extent_map unit tests
+ os/bluestore/BlueFS: do not start racing async compaction
+ os/bluestore/BlueFS: fix Dir memory leak
+ buffer: implement buffer::list::reserve(n)
+ os/bluestore: do not waste memory on cached encoded blobs
+ qa/workunits/objectstore: fix test_fuse.sh
+ os/FuseStore: only flush if dirty
+ build: drop dryrun of autogen.sh from run-cmake-check.sh script
+ os/bluestore/BlueFS: For logs of rocksdb & bluefs only use directio.
+ os/bluestore: remove some copy-pastes
+ cmake: make py3 a nice-to-have
+ os/bluestore/BlueFS: only extend extent on same bdev
+ msg/AsyncConnection: add const to mem functions
+ msg/AsyncMessenger: add const to function
+ client/barrier: move C_Block_Sync class to .cc
+ osd/OSD.cc: remove unneeded searching of map
+ Set ARM_CRC_FLAGS from the CRC test rather than ARM_NEON_FLAGS
+ rpm: Moved ceph-client-debug from ceph-base to ceph-test package
+ rpm: Renamed bcond tests flag to make_check
+ rbd-nbd: fix kernel deadlock during teuthology testing
+ rbd-nbd: mask out-of-bounds IO errors caused by image shrink
+ librbd: invalidate cache before trimming image
+ librbd: ignore cache busy errors when shrinking an image
+ librbd: potential seg fault when blacklisting an image client
+ cmake: Use WITH_TESTS flag to guard the build of ceph-test scripts/binaries
+ rpm: Added ceph_test_package bcond flag to control the build of ceph-test package
+ deb: Moved ceph-client-debug from ceph-base to ceph-test package
+ ceph-objectstore-tool: add a way to split filestore directories offline
+ install-deps: exit non-zero when we cannot match distro
+ librbd: possible deadlock if cluster connection closed after image
+ osd/ReplicatedPG: remove class redeclaration
+ librbd: ignore partial refresh error when acquiring exclusive lock
+ osd/OSD.cc: remove unneeded returns
-------------------------------------------------------------------
Fri Sep 09 12:53:16 UTC 2016 - ncutler@suse.com
- Update to version 11.0.0+git.1473424516.3b8b524:
+ Revert "ceph_disk.main: s/get_dev_size/get_free_partition_size/"
+ Revert "ceph_disk tests/test_prepare: s/get_dev_size/get_free_partition_size/"
+ Revert "ceph_disk tests/test_get_free_partition_size: New unit tests"
+ Revert "ceph_disk tox.ini: add tests/test_get_free_partition_size.py"
+ rpm: put distro conditionals around Source0 in spec file
-------------------------------------------------------------------
Fri Sep 09 10:59:53 UTC 2016 - ncutler@suse.com
- Update to version 11.0.0+git.1473418476.095f67c:
+ ceph.spec.in: revert Source0 line to upstream version
+ ceph.spec.in: conditionalize %prep command
-------------------------------------------------------------------
Fri Sep 09 08:16:40 UTC 2016 - ncutler@suse.com
- ceph.spec.in: enable cephfs_java build unconditionally
- new (merged) commits from upstream master branch:
+ mailmap updates
+ rgw: fix the handling of rgw_swift_url_prefix.
+ rgw: ONLY improve code formatting around RGWRESTMgr.
+ rgw: add support for the crossdomain.xml resource of Swift API.
+ rgw: add support for the healthcheck feature of Swift API.
+ swift /info implementation.
+ rgw: settle /info implementation across other swift-at-root features.
+ compressor: isa-l extension for zlib plugin Signed-off-by: Alyona Kiseleva <akiselyova@mirantis.com>
+ mon: tear down standby replays on MDS rank stop
+ mon/MDSMonitor: move C_Updated class to .cc file
+ rgw_file: fix/update rgw_open flag arguments
+ rgw_file: fix/update rgw_create flag arguments
+ doc: remove btrfs contradiction
+ msg: make async backend default
+ msg/simple: wait dispatch_queue until all pipes closed
+ rgw_file: implement stateless write completion timer
+ rgw_file: add RGW_OPEN_FLAG_STATELESS as a synonym for V3
+ rgw_file: log on write completion events at level 10
+ rgw file: allow RGWLibFS::write_completion_interval_s to be set in conf
+ osdc/ObjectCacher: move C_ReadFinish, C_RetryRead
+ osdc/Journaler: move C_DelayFlush class to .cc
+ rgw: fix RGWAccessControlPolicy_SWIFT::create return value check error
+ librgw: add API version defines for librgw and rgw_file
+ make-dist/ceph.spec.in: Fix srpm build breakage.
+ ceph_timer: prefer using directive to typedef
+ rgw_file: explain semantics of RGWFileHandle::commit
+ compressor: Better arch ifdefs for isal code
+ mds/MDSTable: add const to member functions
+ os/bluestore: fix some #includes
+ vstart.sh: -b for bluestore
+ os/bluestore/bluestore_types: make blob_t get_chunk_size const
+ os/bluestore: use Blob const and non-const accessors
+ os/bluestore: avoid reencoding unchanged blobs
+ os/bluestore: decode blobs on demand
+ mds/SnapRealm.h: add const to member functions
+ os/bluestore/bluefs: avoid check "locked" field for newly created file
+ os/bluestore/bluefs: check against locked field during unlink
+ os/bluestore/bluefs: assert refs of file don't underflow
+ os/kstore: kill dead code
+ rgw: remove duplicated calls to getattr
+ debian: should dh_python3 python3-* not python-*
+ pybind: silence -Wsign-compare warning
+ test/ceph_test_msgr: fix -Wsign-compare warnings
+ test/unittest_alloc: fix -Wsign-compare warnings
+ librbd: API methods to directly acquire and release the exclusive lock
+ doc: add graphic for cap bit field
+ mds/MDCache.h: remove unneeded access specifier
+ librbd: skeleton implementation of client-side image cache
+ librbd: blocking parent IO completion no longer required
+ librbd: remove use of owner_lock on IO path
+ Revert "osdc: ObjectCacher flusher might needs additional locks"
+ librbd: support bufferlist payload for AioImageWrite
+ librbd: add internal support for scatter/gather IO
+ librbd: initial integration of ImageWriteback to AioImageRequest
+ librbd: consolidate IO clipping to reusable method
+ librbd: differentiate between image and object cache
+ librbd: C_ImageCacheRead bridge from Context to AioCompletion
+ librbd: integrate image cache hooks into IO path
+ common/Throttle.h: remove unneeded class
+ cmake: fix the tracing header dependencies
+ src/test/bench/CMakeLists.txt: RBD exclude
+ src/CMakeLists.txt: RBD|KVS|FUSE exclude
+ src/librbd/CMakeLists.txt: krbd and secret.c are LINUX dependant
+ src/os/CMakeLists.txt: AIO|FUSE exclude
+ src/test/CMakeLists.txt: RADOSGW|RBD exclude
+ src/test/common/CMakeLists.txt: BLKID exclude
+ install-deps.sh: initial distro detection based on /etc/os-release
+ ceph_test_objectstore: fix ObjectStore/StoreTest.BluestoreStatFSTest/2 on ssd
+ ceph_test_objectstore: disable statfs checks on available space
+ messages/MOSDMap: mark as enlighten OSDMap encoder
+ cmake: remove unused librados_api target
+ cmake: replace Findlttng-ust.cmake with FindLTTngUST.cmake
+ cmake: let librados_api_obj depend on librados-tp
+ os/bluestore: yet another statfs test fix
+ Revert "osd/ReplicatedPG: for sync-read it don't cacl l_osd_op_r_prepare_lat."
+ doc/release-notes: v0.94.9
+ os/bluestore/bluefs: use map to track dirty files
+ os/bluestore/bluefs: update mtime of inode in unified path
+ os/bluestore/bluefs: drop redundant eof check for read_random()
+ os/CMakeLists.txt: undubble kv.cc usage.
+ test,pybind: silence -Wsign-compare warnings
+ test/perf_local: fix -Wmaybe-uninitialized warnings
+ os/bluestore: get rid off "isa-l" type in ZLibCompressor ctor
+ Allow compressor build without YASM
+ script/bdev_grep: update to use hex
+ os/bluestore: improve failed csum debug output
+ librbd: improve image state machine debug log messages
+ librbd: deadlock when replaying journal during image open
+ os/bluestore: end scope of std::hex properly
+ os/bluestore: don't over-gift if bluefs free is smaller than bluestore_bluefs_min
+ os/bluestore: use _setattr for SETATTR
+ os/bluestore: make object existence check robust
+ ceph_test_objectstore: assert umount succeeds
+ ceph_test_objectstore: clean up Rename test a bit
+ ceph_test_objectstore: fix TryMoveRename test
+ os/bluestore: add onode/buffer cache statistics
+ os/bluestore: end scope of std::hex properly
+ cmake: pass -DINTEL* to gf-complete cflags
+ os/bluestore: conditional checking label of bluefs devices
+ src/CMakeLists.txt: -Woverloaded-virtual is already included in -Wall on Clang
+ os/bluestore: don't overwrite type if it does already exist and at desired type
+ os/bluestore: trivial cleanups
+ os/bluestore: replace store with logger in Cache
+ os/bluestore: check iterator before using during fsck
-------------------------------------------------------------------
Mon Aug 29 07:24:44 UTC 2016 - ncutler@suse.com

327
ceph.spec
View File

@ -13,6 +13,7 @@
#
# Please submit bugfixes or comments via http://tracker.ceph.com/
#
%bcond_with cephfs_java
%if 0%{?suse_version}
%bcond_with ceph_test_package
%else
@ -26,15 +27,13 @@
# no gperftools/tcmalloc on s390(x)
%bcond_with tcmalloc
%endif
%bcond_with lowmem_builder
%bcond_without lowmem_builder
%bcond_with minimal_debugging_information
%if 0%{?fedora} || 0%{?rhel}
%bcond_without cephfs_java
%bcond_with ocf
%bcond_without selinux
%endif
%if 0%{?suse_version}
%bcond_with cephfs_java
%bcond_without ocf
%if %{with ocf}
%global _with_ocf --with-ocf
@ -45,9 +44,11 @@
# LTTng-UST enabled on Fedora, RHEL 6+, and SLE (not openSUSE)
%if 0%{?fedora} || 0%{?rhel} >= 6 || 0%{?suse_version}
%if ! 0%{?is_opensuse}
%ifarch x86_64 aarch64
%bcond_without lttng
%endif
%endif
%endif
%if %{with selinux}
# get selinux policy version
@ -66,7 +67,7 @@
# common
#################################################################################
Name: ceph
Version: 11.0.0+git.1472455009.a17726c
Version: 12.0.0+git.1489159457.410e200
Release: 0
Summary: User space components of the Ceph file system
License: LGPL-2.1 and CC-BY-SA-1.0 and GPL-2.0 and BSL-1.0 and GPL-2.0-with-autoconf-exception and BSD-3-Clause and MIT
@ -80,7 +81,7 @@ Source0: %{name}-%{version}.tar.bz2
%if 0%{?is_opensuse}
ExclusiveArch: x86_64 aarch64 ppc64 ppc64le
%else
ExclusiveArch: x86_64 aarch64
ExclusiveArch: x86_64 aarch64 ppc64le s390x
%endif
%endif
#################################################################################
@ -88,6 +89,7 @@ ExclusiveArch: x86_64 aarch64
#################################################################################
Requires: ceph-osd = %{version}-%{release}
Requires: ceph-mds = %{version}-%{release}
Requires: ceph-mgr = %{version}-%{release}
Requires: ceph-mon = %{version}-%{release}
Requires(post): binutils
%if 0%{with cephfs_java}
@ -99,7 +101,7 @@ BuildRequires: checkpolicy
BuildRequires: selinux-policy-devel
BuildRequires: /usr/share/selinux/devel/policyhelp
%endif
BuildRequires: boost-devel
BuildRequires: bc
BuildRequires: cmake
BuildRequires: cryptsetup
BuildRequires: fuse-devel
@ -108,7 +110,6 @@ BuildRequires: gdbm
%if 0%{with tcmalloc}
BuildRequires: gperftools-devel
%endif
BuildRequires: hdparm
BuildRequires: jq
BuildRequires: leveldb-devel > 1.2
BuildRequires: libaio-devel
@ -217,11 +218,13 @@ on commodity hardware and delivers object, block and file system storage.
#################################################################################
%package base
Summary: Ceph Base Package
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-common = %{version}-%{release}
Requires: librbd1 = %{version}-%{release}
Requires: librados2 = %{version}-%{release}
Requires: libcephfs1 = %{version}-%{release}
Requires: libcephfs2 = %{version}-%{release}
Requires: librgw2 = %{version}-%{release}
%if 0%{with selinux}
Requires: ceph-selinux = %{version}-%{release}
@ -233,17 +236,12 @@ Requires: grep
Requires: xfsprogs
Requires: logrotate
Requires: util-linux
Requires: hdparm
Requires: cryptsetup
Requires: findutils
Requires: which
%if 0%{?suse_version}
Requires: lsb-release
Recommends: ntp-daemon
%endif
%if 0%{?fedora} || 0%{?rhel}
Requires: redhat-lsb-core
%endif
%if 0%{with xio}
Requires: libxio
%endif
@ -252,13 +250,16 @@ Base is the package that includes all the files shared amongst ceph servers
%package -n ceph-common
Summary: Ceph Common
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: librbd1 = %{version}-%{release}
Requires: librados2 = %{version}-%{release}
Requires: libcephfs1 = %{version}-%{release}
Requires: libcephfs2 = %{version}-%{release}
Requires: python-rados = %{version}-%{release}
Requires: python-rbd = %{version}-%{release}
Requires: python-cephfs = %{version}-%{release}
Requires: python-rgw = %{version}-%{release}
Requires: python-requests
%{?systemd_requires}
%if 0%{?suse_version}
@ -274,7 +275,9 @@ Comprised of files that are common to Ceph clients and servers.
%package mds
Summary: Ceph Metadata Server Daemon
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-base = %{version}-%{release}
%description mds
ceph-mds is the metadata server daemon for the Ceph distributed file system.
@ -283,7 +286,9 @@ namespace, coordinating access to the shared OSD cluster.
%package mon
Summary: Ceph Monitor Daemon
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-base = %{version}-%{release}
# For ceph-rest-api
%if 0%{?fedora} || 0%{?rhel}
@ -298,15 +303,33 @@ system. One or more instances of ceph-mon form a Paxos part-time
parliament cluster that provides extremely reliable and durable storage
of cluster membership, configuration, and state.
%package mgr
Summary: Ceph Manager Daemon
License: LGPL-2.1 and CC-BY-SA-1.0 and GPL-2.0 and BSL-1.0 and GPL-2.0-with-autoconf-exception and BSD-3-Clause and MIT
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-base = %{version}-%{release}
%description mgr
ceph-mgr enables python modules that provide services (such as the REST
module derived from Calamari) and expose CLI hooks. ceph-mgr gathers
the cluster maps, the daemon metadata, and performance counters, and
exposes all these to the python modules.
%package fuse
Summary: Ceph fuse-based client
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
%description fuse
FUSE based client for Ceph distributed network file system
%package -n rbd-fuse
Summary: Ceph fuse-based client
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: librados2 = %{version}-%{release}
Requires: librbd1 = %{version}-%{release}
%description -n rbd-fuse
@ -314,7 +337,9 @@ FUSE based client to map Ceph rbd images to files
%package -n rbd-mirror
Summary: Ceph daemon for mirroring RBD images
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-common = %{version}-%{release}
Requires: librados2 = %{version}-%{release}
%description -n rbd-mirror
@ -323,7 +348,9 @@ changes asynchronously.
%package -n rbd-nbd
Summary: Ceph RBD client base on NBD
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: librados2 = %{version}-%{release}
Requires: librbd1 = %{version}-%{release}
%description -n rbd-nbd
@ -331,7 +358,9 @@ NBD based client to map Ceph rbd images to local device
%package radosgw
Summary: Rados REST gateway
Group: Development/Libraries
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-common = %{version}-%{release}
%if 0%{with selinux}
Requires: ceph-selinux = %{version}-%{release}
@ -350,7 +379,9 @@ service as well as the OpenStack Object Storage ("Swift") API.
%if %{with ocf}
%package resource-agents
Summary: OCF-compliant resource agents for Ceph daemons
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
License: LGPL-2.0
Requires: ceph-base = %{version}
Requires: resource-agents
@ -362,7 +393,9 @@ managers such as Pacemaker.
%package osd
Summary: Ceph Object Storage Daemon
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-base = %{version}-%{release}
# for sgdisk, used by ceph-disk
%if 0%{?fedora} || 0%{?rhel}
@ -379,7 +412,9 @@ and providing access to them over the network.
%package -n librados2
Summary: RADOS distributed object store client library
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
%if 0%{?rhel} || 0%{?fedora}
Obsoletes: ceph-libs < %{version}-%{release}
@ -392,7 +427,9 @@ store using a simple file-like interface.
%package -n librados-devel
Summary: RADOS headers
Group: Development/Libraries
%if 0%{?suse_version}
Group: Development/Libraries/C and C++
%endif
License: LGPL-2.0
Requires: librados2 = %{version}-%{release}
Obsoletes: ceph-devel < %{version}-%{release}
@ -404,7 +441,9 @@ that use RADOS object store.
%package -n librgw2
Summary: RADOS gateway client library
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
Requires: librados2 = %{version}-%{release}
%description -n librgw2
@ -413,7 +452,9 @@ This package provides a library implementation of the RADOS gateway
%package -n librgw-devel
Summary: RADOS gateway client library
Group: Development/Libraries
%if 0%{?suse_version}
Group: Development/Libraries/C and C++
%endif
License: LGPL-2.0
Requires: librados-devel = %{version}-%{release}
Requires: librgw2 = %{version}-%{release}
@ -423,9 +464,36 @@ Obsoletes: librgw2-devel < %{version}-%{release}
This package contains libraries and headers needed to develop programs
that use RADOS gateway client library.
%package -n python-rgw
Summary: Python 2 libraries for the RADOS gateway
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: librgw2 = %{version}-%{release}
Requires: python-rados = %{version}-%{release}
Obsoletes: python-ceph < %{version}-%{release}
%description -n python-rgw
This package contains Python 2 libraries for interacting with Cephs RADOS
gateway.
%package -n python%{python3_pkgversion}-rgw
Summary: Python 3 libraries for the RADOS gateway
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: librgw2 = %{version}-%{release}
Requires: python%{python3_pkgversion}-rados = %{version}-%{release}
%description -n python%{python3_pkgversion}-rgw
This package contains Python 3 libraries for interacting with Cephs RADOS
gateway.
%package -n python-rados
Summary: Python 2 libraries for the RADOS object store
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: librados2 = %{version}-%{release}
Obsoletes: python-ceph < %{version}-%{release}
@ -435,7 +503,9 @@ object store.
%package -n python%{python3_pkgversion}-rados
Summary: Python 3 libraries for the RADOS object store
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: python%{python3_pkgversion}
Requires: librados2 = %{version}-%{release}
@ -445,7 +515,9 @@ object store.
%package -n libradosstriper1
Summary: RADOS striping interface
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
Requires: librados2 = %{version}-%{release}
%description -n libradosstriper1
@ -455,7 +527,9 @@ an interface very similar to the rados one.
%package -n libradosstriper-devel
Summary: RADOS striping interface headers
Group: Development/Libraries
%if 0%{?suse_version}
Group: Development/Libraries/C and C++
%endif
License: LGPL-2.0
Requires: libradosstriper1 = %{version}-%{release}
Requires: librados-devel = %{version}-%{release}
@ -468,7 +542,9 @@ that use RADOS striping interface.
%package -n librbd1
Summary: RADOS block device client library
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
Requires: librados2 = %{version}-%{release}
%if 0%{?rhel} || 0%{?fedora}
@ -482,7 +558,9 @@ shared library allowing applications to manage these block devices.
%package -n librbd-devel
Summary: RADOS block device headers
Group: Development/Libraries
%if 0%{?suse_version}
Group: Development/Libraries/C and C++
%endif
License: LGPL-2.0
Requires: librbd1 = %{version}-%{release}
Requires: librados-devel = %{version}-%{release}
@ -495,7 +573,9 @@ that use RADOS block device.
%package -n python-rbd
Summary: Python 2 libraries for the RADOS block device
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: librbd1 = %{version}-%{release}
Requires: python-rados = %{version}-%{release}
@ -506,7 +586,9 @@ block device.
%package -n python%{python3_pkgversion}-rbd
Summary: Python 3 libraries for the RADOS block device
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: librbd1 = %{version}-%{release}
Requires: python%{python3_pkgversion}-rados = %{version}-%{release}
@ -514,15 +596,17 @@ Requires: python%{python3_pkgversion}-rados = %{version}-%{release}
This package contains Python 3 libraries for interacting with Cephs RADOS
block device.
%package -n libcephfs1
%package -n libcephfs2
Summary: Ceph distributed file system client library
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
%if 0%{?rhel} || 0%{?fedora}
Obsoletes: ceph-libs < %{version}-%{release}
Obsoletes: ceph-libcephfs
%endif
%description -n libcephfs1
%description -n libcephfs2
Ceph is a distributed network file system designed to provide excellent
performance, reliability, and scalability. This is a shared library
allowing applications to access a Ceph distributed file system via a
@ -530,23 +614,29 @@ POSIX-like interface.
%package -n libcephfs-devel
Summary: Ceph distributed file system headers
Group: Development/Libraries
%if 0%{?suse_version}
Group: Development/Libraries/C and C++
%endif
License: LGPL-2.0
Requires: libcephfs1 = %{version}-%{release}
Requires: libcephfs2 = %{version}-%{release}
Requires: librados-devel = %{version}-%{release}
Obsoletes: ceph-devel < %{version}-%{release}
Provides: libcephfs1-devel = %{version}-%{release}
Obsoletes: libcephfs1-devel < %{version}-%{release}
Provides: libcephfs2-devel = %{version}-%{release}
Obsoletes: libcephfs2-devel < %{version}-%{release}
%description -n libcephfs-devel
This package contains libraries and headers needed to develop programs
that use Cephs distributed file system.
%package -n python-cephfs
Summary: Python 2 libraries for Ceph distributed file system
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: libcephfs1 = %{version}-%{release}
Requires: python-rados = %{version}-%{release}
Requires: libcephfs2 = %{version}-%{release}
%if 0%{?suse_version}
Recommends: python-rados = %{version}-%{release}
%endif
Obsoletes: python-ceph < %{version}-%{release}
%description -n python-cephfs
This package contains Python 2 libraries for interacting with Cephs distributed
@ -554,9 +644,11 @@ file system.
%package -n python%{python3_pkgversion}-cephfs
Summary: Python 3 libraries for Ceph distributed file system
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Requires: libcephfs1 = %{version}-%{release}
Requires: libcephfs2 = %{version}-%{release}
Requires: python%{python3_pkgversion}-rados = %{version}-%{release}
%description -n python%{python3_pkgversion}-cephfs
This package contains Python 3 libraries for interacting with Cephs distributed
@ -564,7 +656,9 @@ file system.
%package -n python%{python3_pkgversion}-ceph-argparse
Summary: Python 3 utility libraries for Ceph CLI
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
%description -n python%{python3_pkgversion}-ceph-argparse
This package contains types and routines for Python 3 used by the Ceph CLI as
@ -575,7 +669,9 @@ descriptions, and submitting the command to the appropriate daemon.
%if 0%{with ceph_test_package}
%package -n ceph-test
Summary: Ceph benchmarks and test tools
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Benchmark
%endif
License: LGPL-2.0
Requires: ceph-common
Requires: xmlstarlet
@ -587,17 +683,21 @@ This package contains Ceph benchmarks and test tools.
%package -n libcephfs_jni1
Summary: Java Native Interface library for CephFS Java bindings
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
Requires: java
Requires: libcephfs1 = %{version}-%{release}
Requires: libcephfs2 = %{version}-%{release}
%description -n libcephfs_jni1
This package contains the Java Native Interface library for CephFS Java
bindings.
%package -n libcephfs_jni-devel
Summary: Development files for CephFS Java Native Interface library
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Libraries/Java
%endif
License: LGPL-2.0
Requires: java
Requires: libcephfs_jni1 = %{version}-%{release}
@ -610,7 +710,9 @@ library.
%package -n cephfs-java
Summary: Java libraries for the Ceph File System
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: System/Libraries
%endif
License: LGPL-2.0
Requires: java
Requires: libcephfs_jni1 = %{version}-%{release}
@ -625,7 +727,9 @@ This package contains the Java libraries for the Ceph File System.
%package selinux
Summary: SELinux support for Ceph MON, OSD and MDS
Group: System Environment/Base
%if 0%{?suse_version}
Group: System/Filesystems
%endif
Requires: ceph-base = %{version}-%{release}
Requires: policycoreutils, libselinux-utils
Requires(post): selinux-policy-base >= %{_selinux_policy_version}, policycoreutils, gawk
@ -639,24 +743,32 @@ populated file-systems.
%package -n python-ceph-compat
Summary: Compatibility package for Cephs python libraries
Group: System Environment/Libraries
%if 0%{?suse_version}
Group: Development/Languages/Python
%endif
License: LGPL-2.0
Obsoletes: python-ceph
Requires: python-rados = %{version}-%{release}
Requires: python-rbd = %{version}-%{release}
Requires: python-cephfs = %{version}-%{release}
Requires: python-rgw = %{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 and python-cephfs. Packages still depending on
python-ceph should be fixed to depend on python-rados, python-rbd or
python-cephfs instead.
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.
#################################################################################
# common
#################################################################################
%prep
%if 0%{?rhel}
%autosetup -p1 -n @TARBALL_BASENAME@
%endif
%if ! 0%{?rhel}
%autosetup -p1
%endif
%build
%if 0%{with cephfs_java}
@ -678,6 +790,8 @@ export CPPFLAGS="$java_inc"
export CFLAGS="$RPM_OPT_FLAGS"
export CXXFLAGS="$RPM_OPT_FLAGS"
env | sort
mkdir build
cd build
cmake .. \
@ -688,7 +802,9 @@ cmake .. \
-DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} \
-DCMAKE_INSTALL_MANDIR=%{_mandir} \
-DCMAKE_INSTALL_DOCDIR=%{_docdir}/ceph \
-DWITH_EMBEDDED=OFF \
-DWITH_MANPAGE=ON \
-DWITH_PYTHON3=ON \
-DWITH_SYSTEMD=ON \
%if 0%{?rhel} && ! 0%{?centos}
-DWITH_SUBMAN=ON \
@ -763,7 +879,7 @@ make DESTDIR=%{buildroot} install
# we have dropped sysvinit bits
rm -f %{buildroot}/%{_sysconfdir}/init.d/ceph
popd
install -D src/etc-rbdmap %{buildroot}%{_sysconfdir}/ceph/rbdmap
install -m 0644 -D src/etc-rbdmap %{buildroot}%{_sysconfdir}/ceph/rbdmap
%if 0%{?fedora} || 0%{?rhel}
install -m 0644 -D etc/sysconfig/ceph %{buildroot}%{_sysconfdir}/sysconfig/ceph
%endif
@ -799,6 +915,7 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/tmp
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/radosgw
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-osd
mkdir -p %{buildroot}%{_localstatedir}/lib/ceph/bootstrap-mds
@ -829,7 +946,6 @@ rm -rf %{buildroot}
%{_bindir}/ceph-run
%{_bindir}/ceph-dencoder
%{_bindir}/ceph-detect-init
%{_unitdir}/ceph-create-keys@.service
%{_bindir}/cephfs-data-scan
%{_bindir}/cephfs-journal-tool
%{_bindir}/cephfs-table-tool
@ -984,11 +1100,6 @@ usermod -c "Ceph storage service" \
-g ceph \
-s /sbin/nologin \
ceph
# fix ownership of log files
[ -d /var/log/ceph ] || exit 0
[ "$(stat -c %U /var/log/ceph)" = "ceph" ] && exit 0
find /var/log/ceph -type f -name '*.log' -exec chown ceph.ceph {} \;
chown ceph.ceph /var/log/ceph
%endif
exit 0
@ -1051,6 +1162,55 @@ if [ $FIRST_ARG -ge 1 ] ; then
fi
fi
%files mgr
%{_bindir}/ceph-mgr
%{_libdir}/ceph/mgr
%{_unitdir}/ceph-mgr@.service
%{_unitdir}/ceph-mgr.target
%attr(750,ceph,ceph) %dir %{_localstatedir}/lib/ceph/mgr
%post mgr
%if 0%{?suse_version}
if [ $1 -eq 1 ] ; then
/usr/bin/systemctl preset ceph-mgr@\*.service ceph-mgr.target >/dev/null 2>&1 || :
fi
%endif
%if 0%{?fedora} || 0%{?rhel}
%systemd_post ceph-mgr@\*.service ceph-mgr.target
%endif
if [ $1 -eq 1 ] ; then
/usr/bin/systemctl start ceph-mgr.target >/dev/null 2>&1 || :
fi
%preun mgr
%if 0%{?suse_version}
%service_del_preun ceph-mgr@\*.service ceph-mgr.target
%endif
%if 0%{?fedora} || 0%{?rhel}
%systemd_preun ceph-mgr@\*.service ceph-mgr.target
%endif
%postun mgr
test -n "$FIRST_ARG" || FIRST_ARG=$1
%if 0%{?suse_version}
DISABLE_RESTART_ON_UPDATE="yes"
%service_del_postun ceph-mgr@\*.service ceph-mgr.target
%endif
%if 0%{?fedora} || 0%{?rhel}
%systemd_postun ceph-mgr@\*.service ceph-mgr.target
%endif
if [ $FIRST_ARG -ge 1 ] ; then
# Restart on upgrade, but only if "CEPH_AUTO_RESTART_ON_UPGRADE" is set to
# "yes". In any case: if units are not running, do not touch them.
SYSCONF_CEPH=%{_sysconfdir}/sysconfig/ceph
if [ -f $SYSCONF_CEPH -a -r $SYSCONF_CEPH ] ; then
source $SYSCONF_CEPH
fi
if [ "X$CEPH_AUTO_RESTART_ON_UPGRADE" = "Xyes" ] ; then
/usr/bin/systemctl try-restart ceph-mgr@\*.service > /dev/null 2>&1 || :
fi
fi
%files mon
%{_bindir}/ceph-mon
%{_bindir}/ceph-rest-api
@ -1108,6 +1268,8 @@ fi
%{_bindir}/ceph-fuse
%{_mandir}/man8/ceph-fuse.8*
%{_sbindir}/mount.fuse.ceph
%{_unitdir}/ceph-fuse@.service
%{_unitdir}/ceph-fuse.target
%files -n rbd-fuse
%defattr(-,root,root,-)
@ -1181,15 +1343,6 @@ fi
%{_unitdir}/ceph-radosgw@.service
%{_unitdir}/ceph-radosgw.target
%pre radosgw
%if 0%{?suse_version}
# fix ownership of log files
[ -d /var/log/ceph-radosgw ] || exit 0
[ "$(stat -c %U /var/log/ceph-radosgw)" = "ceph" ] && exit 0
find /var/log/ceph-radosgw -type f -name '*.log' -exec chown ceph.ceph {} \;
chown ceph.ceph /var/log/ceph-radosgw
%endif
%post radosgw
%if 0%{?suse_version}
if [ $1 -eq 1 ] ; then
@ -1300,7 +1453,6 @@ fi
%files resource-agents
%defattr(0755,root,root,-)
# N.B. src/ocf/Makefile.am uses $(prefix)/lib
%dir %{_prefix}/lib/ocf
%dir %{_prefix}/lib/ocf/resource.d
%dir %{_prefix}/lib/ocf/resource.d/ceph
@ -1311,6 +1463,8 @@ fi
%files -n librados2
%defattr(-,root,root,-)
%{_libdir}/librados.so.*
%dir %{_libdir}/ceph
%{_libdir}/ceph/libceph-common.so*
%if %{with lttng}
%{_libdir}/librados_tp.so.*
%endif
@ -1326,6 +1480,7 @@ fi
%{_includedir}/rados/librados.hpp
%{_includedir}/rados/buffer.h
%{_includedir}/rados/buffer_fwd.h
%{_includedir}/rados/inline_memory.h
%{_includedir}/rados/page.h
%{_includedir}/rados/crc32c.h
%{_includedir}/rados/rados_types.h
@ -1403,6 +1558,16 @@ ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
%{_includedir}/rados/rgw_file.h
%{_libdir}/librgw.so
%files -n python-rgw
%defattr(-,root,root,-)
%{python_sitearch}/rgw.so
%{python_sitearch}/rgw-*.egg-info
%files -n python%{python3_pkgversion}-rgw
%defattr(-,root,root,-)
%{python3_sitearch}/rgw.cpython*.so
%{python3_sitearch}/rgw-*.egg-info
%files -n python-rbd
%defattr(-,root,root,-)
%{python_sitearch}/rbd.so
@ -1413,18 +1578,19 @@ ln -sf %{_libdir}/librbd.so.1 /usr/lib64/qemu/librbd.so.1
%{python3_sitearch}/rbd.cpython*.so
%{python3_sitearch}/rbd-*.egg-info
%files -n libcephfs1
%files -n libcephfs2
%defattr(-,root,root,-)
%{_libdir}/libcephfs.so.*
%post -n libcephfs1 -p /sbin/ldconfig
%post -n libcephfs2 -p /sbin/ldconfig
%postun -n libcephfs1 -p /sbin/ldconfig
%postun -n libcephfs2 -p /sbin/ldconfig
%files -n libcephfs-devel
%defattr(-,root,root,-)
%dir %{_includedir}/cephfs
%{_includedir}/cephfs/libcephfs.h
%{_includedir}/cephfs/ceph_statx.h
%{_libdir}/libcephfs.so
%files -n python-cephfs
@ -1597,3 +1763,4 @@ exit 0
%changelog
# nospeccleaner

View File

@ -1,48 +0,0 @@
# Don't run this manually. It's only here to be invoked inside the
# git checkout during `osc service dr`. Here's why:
#
# - cmake, when it runs to set up the build system, in turn invokes
# git to set CEPH_GIT_VER and CEPH_GIT_NICE_VER (src/CMakeLists.txt
# line 237+).
# - Those two variables are substituted into src/ceph_ver.h.in.cmake,
# generating build/src/include/ceph_ver.h.
# - When cmake is run inside OBS, it's working off a tarball, so
# there's no git repo information, so CEPH_GIT_VER ends up set to
# GITDIR-NOTFOUND, which breaks the build.
# - cmake *really* wants to be run from a git source checkout (at
# least insofar as getting the version stuff set up goes).
#
# This script uses the old src/make_version script to generate
# src/.git_version (which has the git commit hash on the first line
# and the pretty version on the second), then sed's these two values
# into src/ceph_ver.h.in.cmake in place of @CEPH_GIT_VER@ and
# @CEPH_GIT_NICE_VER@, so when cmake later runs as part of the build,
# it ends up (effectively) just copying that file to
# build/src/include/ceph_ver.h. It doesn't matter that cmake will
# still internally set CEPH_GIT_VER and CEPH_GIT_NICE_VER to bogus
# values, because we've already done the variable substitution.
#
# This script is invoked from the _service file via:
#
# <param name="commandtorun">sh ../../../ceph_ver_hack.sh</param>
#
# It works because the cloned git source ends up three directories
# under the OBS source checkout. I had previously tried to do the
# below three commands directly inside the "comandtorun" parameter,
# as follows:
#
# <param name="commandtorun">sh -c 'src/make_version -g src/.git_version ; sed -i \"s/@CEPH_GIT_VER@/$(head -n1 src/.git_version)/\" src/ceph_ver.h.in.cmake ; sed -i \"s/@CEPH_GIT_NICE_VER@/$(tail -n1 src/.git_version)/\" src/ceph_ver.h.in.cmake'</param>
#
# ...but that doesn't work, because obs-service-tar_scm runs
# str.split() on it, which splits on whitespace and thus totally
# breaks the big long string I'm trying to pass to `sh -c`.
#
# This is the nastiest hack I've written in recent memory. I'm
# very, very sorry.
#
# -- Tim Serong <tserong@suse.com>
#
src/make_version -g src/.git_version
sed -i "s/@CEPH_GIT_VER@/$(head -n1 src/.git_version)/" src/ceph_ver.h.in.cmake
sed -i "s/@CEPH_GIT_NICE_VER@/$(tail -n1 src/.git_version)/" src/ceph_ver.h.in.cmake

View File

@ -169,8 +169,11 @@ function transform_spec_file {
"Source0:"*)
line=`echo $line | sed 's/%{name}/ceph/g'`
;;
"ExclusiveArch:"*)
line=`echo $line | sed 's/s390\S*//g'`
;;
"%autosetup -p1")
line="$line -n ceph-%version"
line="%autosetup -p1 -n ceph-%version"
;;
"Requires:"*)
if [[ $in_package == false ]]; then
@ -284,5 +287,4 @@ reqs=`get_package_requires $SPEC_FILE $PACKAGE`
transform_spec_file $SPEC_FILE $PACKAGE "$rm_files" "$summ" "$desc" "$reqs" > $PACKAGE.spec
insert_line_before "${PACKAGE}.spec" "Source99: ceph-rpmlintrc" "_insert_obs_source_lines_here"
insert_line_before "${PACKAGE}.spec" "Source98: README-ceph-test.txt" "^Source99:"
insert_line_before "${PACKAGE}.spec" "Source97: ceph_ver_hack.sh" "^Source98:"
copy_changes_file $PACKAGE