2 # - proper init scripts if non-systemd boot is too be supported
3 # (upstream scripts seem overcomplicated and hardly useful)
4 # - run as non-root user
6 # Note on versioning: http://docs.ceph.com/docs/master/releases/
9 %bcond_without java # Java binding
10 %bcond_with accelio # Accelio transport support [needs update for internal API changes]
11 %bcond_with cryptopp # use cryptopp instead of NSS crypto/SSL
12 %bcond_with dpdk # DPDK messaging (requires cryptopp instead of nss)
13 %bcond_with fcgi # RADOS Gateway FCGI frontend
14 %bcond_with fio # FIO engines support
15 %bcond_without pmem # PMDK (persistent memory) support
16 %bcond_with spdk # Ceph SPDK support (DPDK based)
17 %bcond_without system_rocksdb # system RocksDB storage support
18 %bcond_with zfs # ZFS support [not ready for zfs 0.8.x]
19 %bcond_without lttng # LTTng tracing
20 %bcond_without babeltrace # Babeltrace traces support
21 %bcond_without tcmalloc # tcmalloc allocator
22 %bcond_with tests # build tests
25 %undefine with_tcmalloc
27 %ifnarch %{x8664} aarch64
30 %if %{without cryptopp} && %{with dpdk}
31 %error DPDK requires cryptopp
34 Summary: User space components of the Ceph file system
35 Summary(pl.UTF-8): Działające w przestrzeni użytkownika elementy systemu plików Ceph
39 License: LGPL v2.1 (libraries), GPL v2 (some programs)
41 Source0: http://download.ceph.com/tarballs/%{name}-%{version}.tar.gz
42 # Source0-md5: 3cb3d259e59920b0d7145537f338aeec
43 Source1: ceph.sysconfig
44 Source3: ceph.tmpfiles
45 Patch0: %{name}-python.patch
46 Patch1: %{name}-tcmalloc.patch
47 Patch2: %{name}-fcgi.patch
48 Patch3: string-includes.patch
49 Patch4: no-virtualenvs.patch
50 Patch5: system-zstd.patch
52 Patch7: use-provided-cpu-flag-values.patch
53 Patch8: ix86-no-asm.patch
54 Patch9: long-int-time_t.patch
55 Patch10: fuse3-api.patch
57 %{?with_accelio:BuildRequires: accelio-devel}
58 %{?with_babeltrace:BuildRequires: babeltrace-devel}
59 BuildRequires: boost-devel >= 1.66
60 BuildRequires: boost-python3-devel >= 1.66
61 BuildRequires: cmake >= 3.22.2
62 %{?with_cryptopp:BuildRequires: cryptopp-devel}
63 BuildRequires: curl-devel
64 %if %{with dpdk} || %{with spdk}
65 BuildRequires: dpdk-devel
67 BuildRequires: expat-devel >= 1.95
68 %{?with_fcgi:BuildRequires: fcgi-devel}
69 %{?with_fio:BuildRequires: fio-devel}
70 BuildRequires: gdbm-devel
71 BuildRequires: gperftools-devel
74 BuildRequires: jre-X11
76 BuildRequires: keyutils-devel
77 BuildRequires: leveldb-devel >= 1.2
78 BuildRequires: libaio-devel
79 BuildRequires: libatomic_ops
80 BuildRequires: libblkid-devel >= 2.17
81 BuildRequires: libedit-devel >= 2.11
82 BuildRequires: libfuse3-devel
84 %{?with_accelio:BuildRequires: libibverbs-devel}
85 BuildRequires: libltdl-devel
86 BuildRequires: librdkafka-devel
87 %{?with_accelio:BuildRequires: librdmacm-devel}
88 BuildRequires: libstdc++-devel >= 6:4.7
89 %{?with_tcmalloc:BuildRequires: libtcmalloc-devel}
90 BuildRequires: libtool >= 2:1.5
91 BuildRequires: libuuid-devel
92 BuildRequires: libxml2-devel >= 2.0
93 %{?with_lttng:BuildRequires: lttng-ust-devel}
94 BuildRequires: lua-devel
95 BuildRequires: lz4-devel >= 1:1.7
96 %{!?with_cryptopp:BuildRequires: nss-devel >= 3}
97 BuildRequires: oath-toolkit-devel
98 BuildRequires: openldap-devel
99 BuildRequires: openssl-devel
100 BuildRequires: perl-base
101 BuildRequires: pkgconfig
102 %{?with_pmem:BuildRequires: pmdk-devel}
103 BuildRequires: python3 >= 1:3.2
104 BuildRequires: python3-devel >= 1:3.2
105 BuildRequires: python3-tox >= 2.9.1
106 BuildRequires: python3-Cython
107 %{?with_system_rocksdb:BuildRequires: rocksdb-devel >= 5.6.0}
108 BuildRequires: rpmbuild(macros) >= 1.671
109 BuildRequires: sed >= 4.0
110 BuildRequires: snappy-devel
111 BuildRequires: sphinx-pdg >= 3.0
112 BuildRequires: udev-devel
113 %{?with_dpdk:BuildRequires: xorg-lib-libpciaccess-devel}
114 BuildRequires: xfsprogs-devel
118 %{?with_zfs:BuildRequires: zfs-devel >= 0.8.0}
119 BuildRequires: zlib-devel
120 Requires(post,preun): /sbin/chkconfig
121 Requires(preun): rc-scripts
122 Requires: %{name}-libs = %{version}-%{release}
123 Requires: python3-%{name} = %{version}-%{release}
124 Requires: systemd-units >= 38
126 Obsoletes: hadoop-cephfs
127 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
129 %define skip_post_check_so libceph_crypto_isal.so.* libceph_lz4.so.* libceph_snappy.so.* libceph_zlib.so.* libceph_zstd.so.* libcls_.*.so.* libec_.*.so.*
132 Ceph is a distributed network file system designed to provide
133 excellent performance, reliability, and scalability.
135 %description -l pl.UTF-8
136 Ceph to rozproszony sieciowy system plików zaprojektowany z myślą o
137 dobrej wydajności, wiarygodności i skalowalności.
140 Summary: Ceph shared libraries
141 Summary(pl.UTF-8): Biblioteki współdzielone Cepha
145 Ceph shared libraries.
147 %description libs -l pl.UTF-8
148 Biblioteki współdzielone Cepha.
151 Summary: Ceph header files
152 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Cepha
154 Group: Development/Libraries
155 Requires: %{name}-libs = %{version}-%{release}
156 Requires: boost-devel >= 1.66
158 Requires: expat-devel
160 Requires: nss-devel >= 3
161 Requires: leveldb-devel
162 Requires: libatomic_ops
163 Requires: libblkid-devel >= 2.17
164 Requires: libstdc++-devel >= 6:4.7
165 Requires: libuuid-devel
166 %{?with_lttng:Requires: lttng-ust-devel}
167 Requires: openldap-devel
168 Obsoletes: ceph-static < 12
171 This package contains the headers needed to develop programs that use
174 %description devel -l pl.UTF-8
175 Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów
176 wykorzystujących Cepha.
178 %package -n python3-ceph
179 Summary: Ceph Python 3 bindings
180 Summary(pl.UTF-8): Wiązania Pythona 3 do bibliotek Cepha
181 Group: Development/Languages/Python
182 Requires: %{name}-libs = %{version}-%{release}
184 %description -n python3-ceph
185 Ceph Python 3 bindings.
187 %description -n python3-ceph -l pl.UTF-8
188 Wiązania Pythona 3 do bibliotek Cepha.
190 %package -n java-cephfs
191 Summary: CephFS Java bindings
192 Summary(pl.UTF-8): Wiązania Javy do biblioteki CephFS
193 Group: Libraries/Java
194 Requires: %{name}-libs = %{version}-%{release}
196 %description -n java-cephfs
197 CephFS Java bindings.
199 %description -n java-cephfs -l pl.UTF-8
200 Wiązania Javy do biblioteki CephFS.
203 Summary: Ceph FUSE-based client
204 Summary(pl.UTF-8): Klient Cepha oparty na FUSE
206 Requires: %{name} = %{version}-%{release}
209 FUSE based client for Ceph distributed network file system.
211 %description fuse -l pl.UTF-8
212 Oparty na FUSE klient rozproszonego sieciowego systemu plików Ceph.
215 Summary: rados REST gateway
216 Summary(pl.UTF-8): Bramka REST-owa rados
217 Group: Applications/System
218 #Requires: apache-mod_fcgid
221 radosgw is an S3 HTTP REST gateway for the RADOS object store. It is
222 implemented as a FastCGI module using libfcgi, and can be used in
223 conjunction with any FastCGI capable web server.
225 %description radosgw -l pl.UTF-8
226 radosgw to REST-owa bramka HTTP S3 do przechowalni obiektów RADOS.
227 Jest zaimplementowana jako moduł FastCGI wykorzystujący libfcgi i może
228 być używana w połączeniu z dowolnym serwerem WWW obsługującym FastCGI.
230 %package resource-agents
231 Summary: OCF Resource Agents for Ceph processes
232 Summary(pl.UTF-8): Agenci OCF do monitorowania procesów Cepha
233 Group: Applications/System
234 Requires: %{name} = %{version}-%{release}
235 Requires: resource-agents
237 %description resource-agents
238 OCF Resource Agents for Ceph processes.
240 %description resource-agents -l pl.UTF-8
241 Agenci OCF do monitorowania procesów Cepha.
244 Summary: Ceph benchmarks and test tools
245 Summary(pl.UTF-8): Narzędzia testowe oraz do mierzenia wydajności dla Ceph
246 Group: Applications/System
247 Requires: %{name} = %{version}-%{release}
250 Ceph benchmarks and test tools.
252 %description test -l pl.UTF-8
253 Narzędzia testowe oraz do mierzenia wydajności dla Ceph.
255 %package -n fio-ceph-objectstore
256 Summary: FIO engine module for Ceph ObjectStore
257 Summary(pl.UTF-8): Moduł silnika FIO do używania Ceph ObjectStore
259 Requires: %{name}-libs = %{version}-%{release}
261 %requires_ge_to fio fio-devel
264 %description -n fio-ceph-objectstore
265 This FIO engine allows you to mount and use a ceph object store
266 directly, without having to build a ceph cluster or start any daemons.
268 %description -n fio-ceph-objectstore -l pl.UTF-8
269 Ten silnik FIO pozwala na bezpośrednie montowanie i używanie
270 przestrzeni obiektów ceph, bez potrzeby budowania klastra ceph czy
271 uruchamiania demonów.
293 %ifarch %{x8664} %{ix86} x32
297 -DHAVE_INTEL_SSE2=1 \
298 -DHAVE_INTEL_SSE3=1 \
299 -DHAVE_INTEL_SSSE3=1 \
300 -DHAVE_INTEL_PCLMUL=1 \
301 -DHAVE_INTEL_SSE4_1=1 \
302 -DHAVE_INTEL_SSE4_2=1 \
304 -DALLOCATOR="%{?with_tcmalloc:tcmalloc}%{!?with_tcmalloc:libc}" \
305 -DFIO_INCLUDE_DIR=/usr/include/fio \
306 -DWITH_PYTHON3=%{py3_ver} \
307 -DPYTHON=%{__python3} \
308 -DSPHINX_BUILD=/usr/bin/sphinx-build \
309 %{!?with_babeltrace:-DWITH_BABELTRACE=OFF} \
310 %{?with_java:-DWITH_CEPHFS_JAVA=ON} \
311 %{?with_java:-DJAVA_JVM_LIBRARY:PATH=%{_jvmdir}/java/lib/server/libjvm.so} \
312 %{?with_dpdk:-DWITH_DPDK=ON} \
313 %{?with_fio:-DWITH_FIO=ON} \
314 %{!?with_lttng:-DWITH_LTTNG=OFF} \
315 -DLUA_INCLUDE_DIR=%{_includedir}/lua \
317 %{?with_cryptopp:-DWITH_NSS=OFF} \
319 %{?with_pmem:-DWITH_PMEM=ON} \
320 %{?with_fcgi:-DWITH_RADOSGW_FCGI_FRONTEND=ON} \
321 -DWITH_MGR_DASHBOARD_FRONTEND=OFF \
322 %{?with_spdk:-DWITH_SPDK=ON} \
323 -DWITH_SYSTEM_BOOST=ON \
324 %{?with_system_rocksdb:-DWITH_SYSTEM_ROCKSDB=ON} \
326 %{?with_accelio:-DWITH_XIO=ON} \
327 %{?with_zfs:-DWITH_ZFS=ON} \
328 -DWITH_REENTRANT_STRSIGNAL=ON \
329 %{!?with_tests:-DWITH_TESTS=OFF}
334 rm -rf $RPM_BUILD_ROOT
335 install -d $RPM_BUILD_ROOT%{_localstatedir}/{lib/ceph/{tmp,mon,osd,mds,mgr,radosgw,bootstrap-{osd,mds,rgw,mgr,rbd}},log/ceph/stat,run/ceph} \
336 $RPM_BUILD_ROOT%{_sysconfdir}/{ceph,bash_completion.d,logrotate.d,rc.d,sysconfig} \
337 $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},/etc/systemd/system/ceph.target.wants,/sbin}
339 %{__make} -C build install \
340 DESTDIR=$RPM_BUILD_ROOT
342 # sanitize paths; no config options for cmake
343 %{__mv} $RPM_BUILD_ROOT/etc/init.d $RPM_BUILD_ROOT/etc/rc.d
344 %{__mv} $RPM_BUILD_ROOT%{_libexecdir}/systemd/system/* $RPM_BUILD_ROOT%{systemdunitdir}
345 %{__mv} $RPM_BUILD_ROOT%{_sbindir}/mount.* $RPM_BUILD_ROOT/sbin
347 cp -p src/logrotate.conf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/ceph
349 cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/ceph
350 ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/ceph.service
351 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/ceph.conf
353 %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir}
354 %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir}
357 %{__rm} $RPM_BUILD_ROOT%{_docdir}/sample.ceph.conf
359 %{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+bash(\s|$),#!/bin/bash\1,' \
360 $RPM_BUILD_ROOT%{_bindir}/{ceph-post-file,rbd-replay-many,rbdmap,rgw-gap-list,rgw-orphan-list}
363 rm -rf $RPM_BUILD_ROOT
366 /sbin/chkconfig --add ceph
367 %service ceph restart
369 # actual services are to be enabled on cluster deployment
370 %systemd_post %{name}.target
373 if [ "$1" = "0" ] ; then
375 /sbin/chkconfig --del ceph
377 %systemd_preun %{name}.target
382 %post libs -p /sbin/ldconfig
383 %postun libs -p /sbin/ldconfig
385 %post -n java-cephfs -p /sbin/ldconfig
386 %postun -n java-cephfs -p /sbin/ldconfig
389 %defattr(644,root,root,755)
390 # COPYING specifies licenses of individual parts
391 %doc AUTHORS COPYING PendingReleaseNotes README.md src/sample.ceph.conf
392 %attr(754,root,root) /etc/rc.d/init.d/ceph
393 %config(noreplace) /etc/sysconfig/ceph
394 %dir /etc/systemd/system/ceph.target.wants
395 %{systemdunitdir}/ceph.service
396 %{systemdunitdir}/ceph.target
397 %{systemdunitdir}/ceph-crash.service
398 %{systemdunitdir}/cephfs-mirror.target
399 %{systemdunitdir}/cephfs-mirror@.service
400 %{systemdunitdir}/ceph-fuse.target
401 %{systemdunitdir}/ceph-fuse@.service
402 %{systemdunitdir}/ceph-immutable-object-cache.target
403 %{systemdunitdir}/ceph-immutable-object-cache@.service
404 %{systemdunitdir}/ceph-mds.target
405 %{systemdunitdir}/ceph-mds@.service
406 %{systemdunitdir}/ceph-mgr.target
407 %{systemdunitdir}/ceph-mgr@.service
408 %{systemdunitdir}/ceph-mon.target
409 %{systemdunitdir}/ceph-mon@.service
410 %{systemdunitdir}/ceph-osd.target
411 %{systemdunitdir}/ceph-osd@.service
412 %{systemdunitdir}/ceph-rbd-mirror.target
413 %{systemdunitdir}/ceph-rbd-mirror@.service
414 %{systemdunitdir}/ceph-volume@.service
415 %{systemdunitdir}/rbdmap.service
416 %{systemdtmpfilesdir}/ceph.conf
417 %dir %{_sysconfdir}/ceph
418 %attr(755,root,root) %{_bindir}/ceph
419 %attr(755,root,root) %{_bindir}/ceph-authtool
420 %attr(755,root,root) %{_bindir}/ceph-bluestore-tool
421 %attr(755,root,root) %{_bindir}/ceph-clsinfo
422 %attr(755,root,root) %{_bindir}/ceph-conf
423 %attr(755,root,root) %{_bindir}/ceph-crash
424 %attr(755,root,root) %{_bindir}/ceph-dencoder
425 %attr(755,root,root) %{_bindir}/ceph-diff-sorted
426 %attr(755,root,root) %{_bindir}/ceph-erasure-code-tool
427 %attr(755,root,root) %{_bindir}/cephfs-data-scan
428 %attr(755,root,root) %{_bindir}/cephfs-journal-tool
429 %attr(755,root,root) %{_bindir}/cephfs-mirror
430 %attr(755,root,root) %{_bindir}/cephfs-table-tool
431 %attr(755,root,root) %{_bindir}/cephfs-top
432 %attr(755,root,root) %{_bindir}/ceph-immutable-object-cache
433 %attr(755,root,root) %{_bindir}/ceph-kvstore-tool
434 %attr(755,root,root) %{_bindir}/ceph-mds
435 %attr(755,root,root) %{_bindir}/ceph-mgr
436 %attr(755,root,root) %{_bindir}/ceph-mon
437 %attr(755,root,root) %{_bindir}/ceph-monstore-tool
438 %attr(755,root,root) %{_bindir}/ceph-objectstore-tool
439 %attr(755,root,root) %{_bindir}/ceph-osd
440 %attr(755,root,root) %{_bindir}/ceph-osdomap-tool
441 %attr(755,root,root) %{_bindir}/ceph-post-file
442 %attr(755,root,root) %{_bindir}/ceph-rbdnamer
443 %attr(755,root,root) %{_bindir}/ceph-run
444 %attr(755,root,root) %{_bindir}/ceph-syn
445 %attr(755,root,root) %{_bindir}/crushtool
446 %attr(755,root,root) %{_bindir}/librados-config
447 %attr(755,root,root) %{_bindir}/monmaptool
448 %attr(755,root,root) %{_bindir}/osdmaptool
449 %attr(755,root,root) %{_bindir}/rados
450 %attr(755,root,root) %{_bindir}/rbd
451 %attr(755,root,root) %{_bindir}/rbd-fuse
452 %attr(755,root,root) %{_bindir}/rbdmap
453 %attr(755,root,root) %{_bindir}/rbd-mirror
454 %attr(755,root,root) %{_bindir}/rbd-nbd
455 %attr(755,root,root) %{_bindir}/rbd-replay
456 %attr(755,root,root) %{_bindir}/rbd-replay-many
457 %attr(755,root,root) %{_bindir}/rbd-replay-prep
458 %attr(755,root,root) %{_bindir}/rgw-gap-list
459 %attr(755,root,root) %{_bindir}/rgw-gap-list-comparator
460 %attr(755,root,root) %{_bindir}/rgw-orphan-list
461 %attr(755,root,root) %{_sbindir}/ceph-create-keys
462 %attr(755,root,root) %{_sbindir}/ceph-volume
463 %attr(755,root,root) %{_sbindir}/ceph-volume-systemd
464 %attr(755,root,root) /sbin/mount.ceph
465 %attr(755,root,root) /sbin/mount.fuse.ceph
466 %if "%{_libexecdir}" != "%{_libdir}"
467 %dir %{_libexecdir}/ceph
469 %{_libexecdir}/ceph/ceph_common.sh
470 %attr(755,root,root) %{_libexecdir}/ceph/ceph-osd-prestart.sh
471 %dir %{_libdir}/ceph/compressor
472 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_lz4.so*
473 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_snappy.so*
474 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zlib.so*
475 %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zstd.so*
476 %dir %{_libdir}/ceph/crypto
477 %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_openssl.so*
479 %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_isal.so*
481 %dir %{_libdir}/ceph/erasure-code
482 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_clay.so*
484 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_isa.so*
486 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure.so*
487 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_generic.so*
489 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_neon.so*
491 %ifarch %{ix86} %{x8664} x32
492 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse3.so*
493 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse4.so*
494 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse3.so*
495 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse4.so*
497 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_lrc.so*
498 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec.so*
499 %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_generic.so*
500 %dir %{_libdir}/ceph/librbd
501 %attr(755,root,root) %{_libdir}/ceph/librbd/libceph_librbd_parent_cache.so*
502 %dir %{_libdir}/rados-classes
503 %attr(755,root,root) %{_libdir}/rados-classes/libcls_2pc_queue.so*
504 %attr(755,root,root) %{_libdir}/rados-classes/libcls_cas.so*
505 %attr(755,root,root) %{_libdir}/rados-classes/libcls_cephfs.so*
506 %attr(755,root,root) %{_libdir}/rados-classes/libcls_cmpomap.so*
507 %attr(755,root,root) %{_libdir}/rados-classes/libcls_fifo.so*
508 %attr(755,root,root) %{_libdir}/rados-classes/libcls_hello.so*
509 %attr(755,root,root) %{_libdir}/rados-classes/libcls_journal.so*
510 %attr(755,root,root) %{_libdir}/rados-classes/libcls_kvs.so*
511 %attr(755,root,root) %{_libdir}/rados-classes/libcls_lock.so*
512 %attr(755,root,root) %{_libdir}/rados-classes/libcls_log.so*
513 %attr(755,root,root) %{_libdir}/rados-classes/libcls_lua.so*
514 %attr(755,root,root) %{_libdir}/rados-classes/libcls_numops.so*
515 %attr(755,root,root) %{_libdir}/rados-classes/libcls_otp.so*
516 %attr(755,root,root) %{_libdir}/rados-classes/libcls_queue.so*
517 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rbd.so*
518 %attr(755,root,root) %{_libdir}/rados-classes/libcls_refcount.so*
519 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw_gc.so*
520 %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw.so*
521 %attr(755,root,root) %{_libdir}/rados-classes/libcls_sdk.so*
522 %attr(755,root,root) %{_libdir}/rados-classes/libcls_timeindex.so*
523 %attr(755,root,root) %{_libdir}/rados-classes/libcls_user.so*
524 %attr(755,root,root) %{_libdir}/rados-classes/libcls_version.so*
526 %config(noreplace) /etc/logrotate.d/ceph
527 %config(noreplace) %{_sysconfdir}/bash_completion.d/rados
528 %config(noreplace) %{_sysconfdir}/bash_completion.d/ceph
529 %config(noreplace) %{_sysconfdir}/bash_completion.d/rbd
530 %{_mandir}/man8/ceph.8*
531 %{_mandir}/man8/cephadm.8*
532 %{_mandir}/man8/ceph-authtool.8*
533 %{_mandir}/man8/ceph-bluestore-tool.8*
534 %{_mandir}/man8/ceph-clsinfo.8*
535 %{_mandir}/man8/ceph-conf.8*
536 %{_mandir}/man8/ceph-create-keys.8*
537 %{_mandir}/man8/ceph-dencoder.8*
538 %{_mandir}/man8/ceph-deploy.8*
539 %{_mandir}/man8/ceph-diff-sorted.8*
540 %{_mandir}/man8/cephfs-mirror.8*
541 %{_mandir}/man8/cephfs-top.8*
542 %{_mandir}/man8/ceph-immutable-object-cache.8*
543 %{_mandir}/man8/ceph-kvstore-tool.8*
544 %{_mandir}/man8/ceph-mds.8*
545 %{_mandir}/man8/ceph-mon.8*
546 %{_mandir}/man8/ceph-osd.8*
547 %{_mandir}/man8/ceph-post-file.8*
548 %{_mandir}/man8/ceph-rbdnamer.8*
549 %{_mandir}/man8/ceph-run.8*
550 %{_mandir}/man8/ceph-syn.8*
551 %{_mandir}/man8/ceph-volume.8*
552 %{_mandir}/man8/ceph-volume-systemd.8*
553 %{_mandir}/man8/crushtool.8*
554 %{_mandir}/man8/librados-config.8*
555 %{_mandir}/man8/monmaptool.8*
556 %{_mandir}/man8/mount.ceph.8*
557 %{_mandir}/man8/mount.fuse.ceph.8*
558 %{_mandir}/man8/osdmaptool.8*
559 %{_mandir}/man8/rados.8*
560 %{_mandir}/man8/rbd.8*
561 %{_mandir}/man8/rbd-fuse.8*
562 %{_mandir}/man8/rbdmap.8*
563 %{_mandir}/man8/rbd-mirror.8*
564 %{_mandir}/man8/rbd-nbd.8*
565 %{_mandir}/man8/rbd-replay.8*
566 %{_mandir}/man8/rbd-replay-many.8*
567 %{_mandir}/man8/rbd-replay-prep.8*
568 %{_mandir}/man8/rgw-orphan-list.8*
570 %dir %{_localstatedir}/lib/ceph
571 %dir %{_localstatedir}/lib/ceph/bootstrap-mds
572 %dir %{_localstatedir}/lib/ceph/bootstrap-mgr
573 %dir %{_localstatedir}/lib/ceph/bootstrap-osd
574 %dir %{_localstatedir}/lib/ceph/bootstrap-rbd
575 %dir %{_localstatedir}/lib/ceph/bootstrap-rgw
576 %dir %{_localstatedir}/lib/ceph/mds
577 %dir %{_localstatedir}/lib/ceph/mgr
578 %dir %{_localstatedir}/lib/ceph/mon
579 %dir %{_localstatedir}/lib/ceph/osd
580 %dir %{_localstatedir}/lib/ceph/tmp
581 %dir %{_localstatedir}/log/ceph
582 %dir %{_localstatedir}/run/ceph
585 %defattr(644,root,root,755)
586 %attr(755,root,root) %{_libdir}/libcephfs.so.*.*.*
587 %attr(755,root,root) %ghost %{_libdir}/libcephfs.so.2
588 %attr(755,root,root) %{_libdir}/libos_tp.so.*.*.*
589 %attr(755,root,root) %ghost %{_libdir}/libos_tp.so.1
590 %attr(755,root,root) %{_libdir}/libosd_tp.so.*.*.*
591 %attr(755,root,root) %ghost %{_libdir}/libosd_tp.so.1
592 %attr(755,root,root) %{_libdir}/librados.so.*.*.*
593 %attr(755,root,root) %ghost %{_libdir}/librados.so.2
594 %attr(755,root,root) %{_libdir}/librados_tp.so.*.*.*
595 %attr(755,root,root) %ghost %{_libdir}/librados_tp.so.2
596 %attr(755,root,root) %{_libdir}/libradosgw.so.*.*.*
597 %attr(755,root,root) %ghost %{_libdir}/libradosgw.so.2
598 %attr(755,root,root) %{_libdir}/libradosstriper.so.*.*.*
599 %attr(755,root,root) %ghost %{_libdir}/libradosstriper.so.1
600 %attr(755,root,root) %{_libdir}/librbd.so.*.*.*
601 %attr(755,root,root) %ghost %{_libdir}/librbd.so.1
602 %attr(755,root,root) %{_libdir}/librbd_tp.so.*.*.*
603 %attr(755,root,root) %ghost %{_libdir}/librbd_tp.so.1
604 %attr(755,root,root) %{_libdir}/librgw.so.*.*.*
605 %attr(755,root,root) %ghost %{_libdir}/librgw.so.2
606 %attr(755,root,root) %{_libdir}/librgw_op_tp.so.*.*.*
607 %attr(755,root,root) %ghost %{_libdir}/librgw_op_tp.so.2
608 %attr(755,root,root) %{_libdir}/librgw_rados_tp.so.*.*.*
609 %attr(755,root,root) %ghost %{_libdir}/librgw_rados_tp.so.2
610 %attr(755,root,root) %{_libdir}/libcephsqlite.so
612 %attr(755,root,root) %{_libdir}/ceph/libceph-common.so.2
615 %defattr(644,root,root,755)
616 %attr(755,root,root) %{_libdir}/libcephfs.so
617 %attr(755,root,root) %{_libdir}/libos_tp.so
618 %attr(755,root,root) %{_libdir}/libosd_tp.so
619 %attr(755,root,root) %{_libdir}/librados.so
620 %attr(755,root,root) %{_libdir}/librados_tp.so
621 %attr(755,root,root) %{_libdir}/libradosgw.so
622 %attr(755,root,root) %{_libdir}/libradosstriper.so
623 %attr(755,root,root) %{_libdir}/librbd.so
624 %attr(755,root,root) %{_libdir}/librbd_tp.so
625 %attr(755,root,root) %{_libdir}/librgw.so
626 %attr(755,root,root) %{_libdir}/librgw_op_tp.so
627 %attr(755,root,root) %{_libdir}/librgw_rados_tp.so
628 %{_includedir}/cephfs
630 %{_includedir}/radosstriper
632 %{_includedir}/libcephsqlite.h
634 %files -n python3-ceph
635 %defattr(644,root,root,755)
637 %{py3_sitedir}/ceph-1.0.0-py*.egg-info
638 %attr(755,root,root) %{py3_sitedir}/cephfs.cpython-*.so
639 %{py3_sitedir}/cephfs-2.0.0-py*.egg-info
640 %{py3_sitedir}/cephfs_top-0.0.1-py*.egg-info
641 %{py3_sitedir}/ceph_volume
642 %{py3_sitedir}/ceph_volume-1.0.0-py*.egg-info
643 %attr(755,root,root) %{py3_sitedir}/rados.cpython-*.so
644 %{py3_sitedir}/rados-2.0.0-py*.egg-info
645 %attr(755,root,root) %{py3_sitedir}/rbd.cpython-*.so
646 %{py3_sitedir}/rbd-2.0.0-py*.egg-info
647 %attr(755,root,root) %{py3_sitedir}/rgw.cpython-*.so
648 %{py3_sitedir}/rgw-2.0.0-py*.egg-info
649 %{py3_sitescriptdir}/ceph_argparse.py
650 %{py3_sitescriptdir}/ceph_daemon.py
651 %{py3_sitescriptdir}/ceph_volume_client.py
652 %{py3_sitescriptdir}/__pycache__/ceph_argparse.cpython-*.py[co]
653 %{py3_sitescriptdir}/__pycache__/ceph_daemon.cpython-*.py[co]
654 %{py3_sitescriptdir}/__pycache__/ceph_volume_client.cpython-*.py[co]
656 %exclude %{py3_sitedir}/ceph/tests
657 %exclude %{py3_sitedir}/ceph_volume/tests
661 %files -n java-cephfs
662 %defattr(644,root,root,755)
663 %attr(755,root,root) %{_libdir}/libcephfs_jni.so.*.*.*
664 %attr(755,root,root) %ghost %{_libdir}/libcephfs_jni.so.1
665 %attr(755,root,root) %{_libdir}/libcephfs_jni.so
666 %{_javadir}/libcephfs.jar
670 %defattr(644,root,root,755)
671 %attr(755,root,root) %{_bindir}/ceph-fuse
672 %{_mandir}/man8/ceph-fuse.8*
675 %defattr(644,root,root,755)
676 %attr(755,root,root) %{_bindir}/radosgw
677 %attr(755,root,root) %{_bindir}/radosgw-admin
678 %attr(755,root,root) %{_bindir}/radosgw-es
679 %attr(755,root,root) %{_bindir}/radosgw-object-expirer
680 %attr(755,root,root) %{_bindir}/radosgw-token
681 %{systemdunitdir}/ceph-radosgw.target
682 %{systemdunitdir}/ceph-radosgw@.service
683 %{_sysconfdir}/bash_completion.d/radosgw-admin
684 %dir %{_localstatedir}/lib/ceph/radosgw
685 %{_mandir}/man8/radosgw.8*
686 %{_mandir}/man8/radosgw-admin.8*
688 %files resource-agents
689 %defattr(644,root,root,755)
690 %dir %{_prefix}/lib/ocf/resource.d/ceph
691 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/ceph/rbd
695 %defattr(644,root,root,755)
696 %attr(755,root,root) %{_bindir}/ceph-client-debug
697 %attr(755,root,root) %{_bindir}/ceph-coverage
698 %attr(755,root,root) %{_bindir}/ceph-debugpack
699 %attr(755,root,root) %{_bindir}/ceph-kvstore-tool
700 %attr(755,root,root) %{_bindir}/ceph-monstore-tool
701 %attr(755,root,root) %{_bindir}/ceph-osdomap-tool
702 %attr(755,root,root) %{_bindir}/ceph_bench_log
703 %attr(755,root,root) %{_bindir}/ceph_erasure_code
704 %attr(755,root,root) %{_bindir}/ceph_erasure_code_benchmark
705 %attr(755,root,root) %{_bindir}/ceph_kvstorebench
706 %attr(755,root,root) %{_bindir}/ceph_multi_stress_watch
707 %attr(755,root,root) %{_bindir}/ceph_objectstore_bench
708 %attr(755,root,root) %{_bindir}/ceph_omapbench
709 %attr(755,root,root) %{_bindir}/ceph_perf_local
710 %attr(755,root,root) %{_bindir}/ceph_perf_msgr_client
711 %attr(755,root,root) %{_bindir}/ceph_perf_msgr_server
712 %attr(755,root,root) %{_bindir}/ceph_perf_objectstore
713 %attr(755,root,root) %{_bindir}/ceph_psim
714 %attr(755,root,root) %{_bindir}/ceph_radosacl
715 %attr(755,root,root) %{_bindir}/ceph_rgw_jsonparser
716 %attr(755,root,root) %{_bindir}/ceph_rgw_multiparser
717 %attr(755,root,root) %{_bindir}/ceph_scratchtool
718 %attr(755,root,root) %{_bindir}/ceph_scratchtoolpp
719 %attr(755,root,root) %{_bindir}/ceph_smalliobench
720 %attr(755,root,root) %{_bindir}/ceph_smalliobenchdumb
721 %attr(755,root,root) %{_bindir}/ceph_smalliobenchfs
722 %attr(755,root,root) %{_bindir}/ceph_smalliobenchrbd
723 %attr(755,root,root) %{_bindir}/ceph_test_*
724 %attr(755,root,root) %{_bindir}/ceph_tpbench
725 %attr(755,root,root) %{_bindir}/ceph_xattr_bench
726 %attr(755,root,root) %{_libdir}/ceph/ceph-monstore-update-crush.sh
727 %{_mandir}/man8/ceph-debugpack.8*
728 %{_mandir}/man8/ceph-kvstore-tool.8*
732 %files -n fio-ceph-objectstore
733 %defattr(644,root,root,755)
734 %doc src/test/fio/{README.md,ceph-*.conf,ceph-*.fio}
735 %attr(755,root,root) %{_libdir}/libfio_ceph_objectstore.so