]>
Commit | Line | Data |
---|---|---|
b6163d67 | 1 | # TODO: |
32e4d0ff | 2 | # - QATZIP? (WITH_QATZIP=ON, BR: QATzip-devel) |
682d6dd5 | 3 | # - brotli? (WITH_BROTLI=ON, uses internal brotli as downloaded subproject) |
6b8625f1 | 4 | # - seastar (WITH_SEASTAR=ON, BR: c-ares-devel >= 1.13.0) |
737284c4 | 5 | # - proper init scripts if non-systemd boot is to be supported |
bbcdc7ce JB |
6 | # (upstream scripts seem overcomplicated and hardly useful) |
7 | # - run as non-root user | |
f7926bf0 JB |
8 | # - build selinux policy (-DWITH_SELINUX=ON) |
9 | # - package sphinx docs (from doc/) | |
b6163d67 | 10 | # |
19c20e80 JR |
11 | # Note on versioning: http://docs.ceph.com/docs/master/releases/ |
12 | # | |
714b93ed | 13 | # Conditional build: |
7f577810 | 14 | %bcond_without java # Java binding |
f7926bf0 | 15 | %bcond_with angular # Angular-based mgr/dashboard frontend (built using npm, too outdated currently) |
32e4d0ff | 16 | %bcond_without bluefs # BlueFS library |
d8321c07 | 17 | %bcond_with dpdk # DPDK messaging |
737284c4 JB |
18 | # 15.2.x/16.2.x build fails with: |
19 | # src/rgw/rgw_fcgi_process.cc:92:53: error: 'class rgw::sal::RGWRadosStore' has no member named 'get_new_req_id' | |
d5cae1aa | 20 | %bcond_with fcgi # RADOS Gateway FCGI frontend |
737284c4 | 21 | %bcond_with fio # FIO engines support (16.x: downloads fio as internal subproject) |
682d6dd5 | 22 | %bcond_with kerberos # GSSAPI/KRB5 support |
1b11728e | 23 | %bcond_without pmem # PMDK (persistent memory) support |
32e4d0ff JB |
24 | %bcond_without qat # QAT driver |
25 | %bcond_without qatzip # QATZIP | |
682d6dd5 | 26 | %bcond_without rdma # RDMA transport support |
6d7dd22f | 27 | %bcond_with seastar # seastar components (64-bit pointers required) |
1b11728e JB |
28 | %bcond_with spdk # Ceph SPDK support (DPDK based) |
29 | %bcond_without system_rocksdb # system RocksDB storage support | |
32e4d0ff | 30 | %bcond_without zbd # ZBD bluestore backend |
737284c4 | 31 | # 15.2.x/16.2.x: "fallthrough" define from OpenZFS's spl breaks "[[fallthrough]]" in src/include/blobhash.h |
d5cae1aa | 32 | %bcond_with zfs # ZFS support [not ready for zfs 0.8.x] |
7f577810 JB |
33 | %bcond_without lttng # LTTng tracing |
34 | %bcond_without babeltrace # Babeltrace traces support | |
35 | %bcond_without tcmalloc # tcmalloc allocator | |
c37aec31 | 36 | %bcond_with tests # build tests |
6fce7056 JR |
37 | |
38 | %ifarch x32 | |
39 | %undefine with_tcmalloc | |
40 | %endif | |
1b11728e JB |
41 | %ifnarch %{x8664} aarch64 |
42 | %undefine with_pmem | |
43 | %endif | |
32e4d0ff JB |
44 | %ifnarch %{x8664} aarch64 mips64 ppc64 sparc64 s390x |
45 | %undefine with_seastar | |
46 | %endif | |
714b93ed | 47 | # |
2a1a6301 | 48 | Summary: User space components of the Ceph file system |
e5fc70df | 49 | Summary(pl.UTF-8): Działające w przestrzeni użytkownika elementy systemu plików Ceph |
2a1a6301 | 50 | Name: ceph |
dc8b799e | 51 | Version: 17.2.3 |
2b3ddb3f | 52 | Release: 1 |
9e1f65de | 53 | License: LGPL v2.1 (libraries), GPL v2 (some programs) |
2a1a6301 | 54 | Group: Base |
4447516f | 55 | Source0: http://download.ceph.com/tarballs/%{name}-%{version}.tar.gz |
dc8b799e | 56 | # Source0-md5: 96f10fa942ec0db4008993cddaec88ec |
b6163d67 | 57 | Source1: ceph.sysconfig |
bbcdc7ce | 58 | Source3: ceph.tmpfiles |
f8bb146f | 59 | Patch0: %{name}-python.patch |
737284c4 | 60 | Patch1: %{name}-fio.patch |
f8f6a16f JB |
61 | Patch2: %{name}-cmake-static.patch |
62 | Patch3: %{name}-arrow-pld.patch | |
f8bb146f | 63 | Patch4: no-virtualenvs.patch |
32e4d0ff | 64 | Patch5: %{name}-libdir.patch |
c8d4a223 | 65 | Patch6: types.patch |
bbe36688 JR |
66 | Patch7: use-provided-cpu-flag-values.patch |
67 | Patch8: ix86-no-asm.patch | |
68 | Patch9: long-int-time_t.patch | |
32e4d0ff | 69 | Patch10: %{name}-qat.patch |
682d6dd5 | 70 | Patch11: %{name}-liburing.patch |
cc053f74 JB |
71 | Patch12: %{name}-glibc.patch |
72 | Patch13: %{name}-libfmt.patch | |
c5b31b08 | 73 | Patch14: %{name}-system-rocksdb.patch |
a74f78a4 JB |
74 | # https://src.fedoraproject.org/rpms/ceph/blob/rawhide/f/0017-gcc-12-omnibus.patch |
75 | Patch15: %{name}-gcc12.patch | |
e3919159 | 76 | URL: https://ceph.io/ |
32e4d0ff | 77 | %{?with_qatzip:BuildRequires: QATzip-devel} |
7f577810 | 78 | %{?with_babeltrace:BuildRequires: babeltrace-devel} |
682d6dd5 JB |
79 | BuildRequires: boost-devel >= 1.72 |
80 | BuildRequires: boost-python3-devel >= 1.72 | |
32e4d0ff | 81 | %{?with_seastar:BuildRequires: c-ares-devel >= 1.13.0} |
d5cae1aa | 82 | BuildRequires: cmake >= 3.22.2 |
32e4d0ff | 83 | %{?with_seastar:BuildRequires: cryptopp-devel >= 5.6.5} |
682d6dd5 | 84 | BuildRequires: cryptsetup-devel >= 2.0.5 |
2a1a6301 | 85 | BuildRequires: curl-devel |
cc053f74 JB |
86 | %if %{with dpdk} || %{with spdk} |
87 | # also seastar with dpdk support | |
1b11728e JB |
88 | BuildRequires: dpdk-devel |
89 | %endif | |
682d6dd5 | 90 | BuildRequires: doxygen |
714b93ed | 91 | BuildRequires: expat-devel >= 1.95 |
1b11728e | 92 | %{?with_fcgi:BuildRequires: fcgi-devel} |
682d6dd5 | 93 | %{?with_fio:BuildRequires: fio-devel >= 3.15} |
2a1a6301 | 94 | BuildRequires: gdbm-devel |
32e4d0ff | 95 | %{?with_seastar:BuildRequires: gnutls-devel >= 3.3.26} |
d8321c07 | 96 | BuildRequires: gperf |
682d6dd5 JB |
97 | %{?with_tcmalloc:BuildRequires: gperftools-devel >= 2.6.2} |
98 | %{?with_kerberos:BuildRequires: heimdal-devel} | |
32e4d0ff | 99 | %{?with_seastar:BuildRequires: hwloc-devel >= 1.11.2} |
7db8c214 | 100 | %if %{with java} |
4f42482b | 101 | BuildRequires: jdk |
b5d07312 | 102 | BuildRequires: jre-X11 |
4f42482b | 103 | %endif |
2a1a6301 | 104 | BuildRequires: keyutils-devel |
b44a3efd | 105 | BuildRequires: leveldb-devel >= 1.23-2 |
714b93ed | 106 | BuildRequires: libaio-devel |
2a1a6301 | 107 | BuildRequires: libatomic_ops |
548e0d3f | 108 | BuildRequires: libblkid-devel >= 2.17 |
682d6dd5 | 109 | BuildRequires: libcap-ng-devel |
714b93ed | 110 | BuildRequires: libedit-devel >= 2.11 |
682d6dd5 JB |
111 | BuildRequires: libfmt-devel >= 6.0.0 |
112 | BuildRequires: libfuse3-devel >= 3 | |
113 | %{?with_rdma:BuildRequires: libibverbs-devel} | |
114 | BuildRequires: libicu-devel >= 52.0 | |
2a1a6301 | 115 | BuildRequires: libltdl-devel |
682d6dd5 JB |
116 | BuildRequires: libnl-devel >= 3.2 |
117 | BuildRequires: librdkafka-devel >= 0.9.2 | |
118 | %{?with_rdma:BuildRequires: librdmacm-devel} | |
32e4d0ff | 119 | %{?with_seastar:BuildRequires: libsctp-devel} |
682d6dd5 JB |
120 | BuildRequires: libstdc++-devel >= 6:7 |
121 | %{?with_tcmalloc:BuildRequires: libtcmalloc-devel >= 2.6.2} | |
714b93ed | 122 | BuildRequires: libtool >= 2:1.5 |
682d6dd5 | 123 | BuildRequires: liburing-devel |
2a1a6301 | 124 | BuildRequires: libuuid-devel |
bbcdc7ce | 125 | BuildRequires: libxml2-devel >= 2.0 |
32e4d0ff | 126 | %{?with_zbd:BuildRequires: libzbd-devel} |
7f577810 | 127 | %{?with_lttng:BuildRequires: lttng-ust-devel} |
682d6dd5 | 128 | BuildRequires: lua-devel >= 5.3 |
32e4d0ff | 129 | BuildRequires: lz4-devel >= 1:1.7.3 |
682d6dd5 | 130 | BuildRequires: ncurses-devel |
f7926bf0 | 131 | %{?with_angular:BuildRequires: npm} |
d8321c07 JB |
132 | BuildRequires: nspr-devel >= 4 |
133 | BuildRequires: nss-devel >= 3 | |
32e4d0ff | 134 | %{?with_seastar:BuildRequires: numactl-devel} |
d5cae1aa | 135 | BuildRequires: oath-toolkit-devel |
bbcdc7ce | 136 | BuildRequires: openldap-devel |
682d6dd5 | 137 | BuildRequires: openssl-devel >= 1.1 |
e5fc70df | 138 | BuildRequires: perl-base |
2a1a6301 | 139 | BuildRequires: pkgconfig |
f8f6a16f | 140 | %{?with_pmem:BuildRequires: pmdk-devel >= 1.10.0} |
62624566 | 141 | BuildRequires: python3 >= 1:3.2 |
dc8b799e JB |
142 | BuildRequires: python3-Cython |
143 | BuildRequires: python3-PyYAML | |
62624566 | 144 | BuildRequires: python3-devel >= 1:3.2 |
682d6dd5 | 145 | %{?with_tests:BuildRequires: python3-tox >= 2.9.1} |
682d6dd5 | 146 | BuildRequires: rabbitmq-c-devel |
32e4d0ff | 147 | %{?with_seastar:BuildRequires: ragel >= 6.10} |
6b8625f1 | 148 | %{?with_system_rocksdb:BuildRequires: rocksdb-devel >= 5.14} |
bef2a0ad | 149 | BuildRequires: rpmbuild(macros) >= 1.671 |
32e4d0ff | 150 | %{?with_qat:BuildRequires: qatlib-devel} |
e3919159 | 151 | BuildRequires: sed >= 4.0 |
f965be58 | 152 | BuildRequires: snappy-devel |
2b3ddb3f | 153 | BuildRequires: sphinx-pdg >= 4.4.0 |
682d6dd5 | 154 | BuildRequires: sqlite3-devel >= 3 |
dc8b799e JB |
155 | # >= 0.13.0 wanted, but seems to build with 0.11.0 |
156 | BuildRequires: thrift-devel | |
548e0d3f | 157 | BuildRequires: udev-devel |
b1fa8ffe | 158 | %{?with_dpdk:BuildRequires: xorg-lib-libpciaccess-devel} |
fa260b6c | 159 | BuildRequires: xfsprogs-devel |
32e4d0ff | 160 | %{?with_seastar:BuildRequires: yaml-cpp-devel >= 0.5.1} |
7db8c214 JB |
161 | %ifarch %{x8664} |
162 | BuildRequires: yasm | |
163 | %endif | |
101b8bdd | 164 | %{?with_zfs:BuildRequires: zfs-devel >= 0.8.0} |
bbcdc7ce | 165 | BuildRequires: zlib-devel |
d8321c07 | 166 | BuildRequires: zstd-devel >= 1.4.4 |
2a1a6301 JR |
167 | Requires(post,preun): /sbin/chkconfig |
168 | Requires(preun): rc-scripts | |
169 | Requires: %{name}-libs = %{version}-%{release} | |
32e4d0ff | 170 | Requires: lz4 >= 1:1.7.3 |
d5cae1aa | 171 | Requires: python3-%{name} = %{version}-%{release} |
6b8625f1 | 172 | %{?with_system_rocksdb:Requires: rocksdb >= 5.14} |
bef2a0ad | 173 | Requires: systemd-units >= 38 |
d8321c07 | 174 | Requires: zstd >= 1.4.4 |
c89c1ad8 JB |
175 | Obsoletes: gcephtool < 0.51 |
176 | Obsoletes: hadoop-cephfs < 0.71 | |
2a1a6301 JR |
177 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
178 | ||
cc053f74 | 179 | %define skip_post_check_so libceph_crypto_isal.so.* libceph_crypto_qat.so.* libceph_lz4.so.* libceph_snappy.so.* libceph_zlib.so.* libceph_zstd.so.* libcls_.*.so.* libec_.*.so.* |
2a1a6301 JR |
180 | |
181 | %description | |
182 | Ceph is a distributed network file system designed to provide | |
183 | excellent performance, reliability, and scalability. | |
184 | ||
e5fc70df JB |
185 | %description -l pl.UTF-8 |
186 | Ceph to rozproszony sieciowy system plików zaprojektowany z myślą o | |
187 | dobrej wydajności, wiarygodności i skalowalności. | |
188 | ||
2a1a6301 JR |
189 | %package libs |
190 | Summary: Ceph shared libraries | |
e5fc70df | 191 | Summary(pl.UTF-8): Biblioteki współdzielone Cepha |
2a1a6301 | 192 | Group: Libraries |
737284c4 | 193 | Requires: libfmt >= 6.0.0 |
6b8625f1 | 194 | Requires: librdkafka >= 0.9.2 |
d8321c07 | 195 | Requires: openssl >= 1.1 |
2a1a6301 JR |
196 | |
197 | %description libs | |
198 | Ceph shared libraries. | |
199 | ||
e5fc70df JB |
200 | %description libs -l pl.UTF-8 |
201 | Biblioteki współdzielone Cepha. | |
2a1a6301 JR |
202 | |
203 | %package devel | |
e5fc70df JB |
204 | Summary: Ceph header files |
205 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Cepha | |
96c29907 | 206 | License: LGPL v2.1 |
2a1a6301 JR |
207 | Group: Development/Libraries |
208 | Requires: %{name}-libs = %{version}-%{release} | |
682d6dd5 | 209 | Requires: boost-devel >= 1.72 |
bbcdc7ce | 210 | Requires: curl-devel |
6b8625f1 | 211 | Requires: expat-devel >= 1.95 |
bbcdc7ce JB |
212 | Requires: fcgi-devel |
213 | Requires: nss-devel >= 3 | |
b44a3efd | 214 | Requires: leveldb-devel >= 1.23-2 |
96c29907 | 215 | Requires: libatomic_ops |
bbcdc7ce | 216 | Requires: libblkid-devel >= 2.17 |
682d6dd5 | 217 | Requires: libstdc++-devel >= 6:7 |
96c29907 | 218 | Requires: libuuid-devel |
bbcdc7ce JB |
219 | %{?with_lttng:Requires: lttng-ust-devel} |
220 | Requires: openldap-devel | |
1b11728e | 221 | Obsoletes: ceph-static < 12 |
2a1a6301 JR |
222 | |
223 | %description devel | |
224 | This package contains the headers needed to develop programs that use | |
225 | Ceph. | |
226 | ||
e5fc70df JB |
227 | %description devel -l pl.UTF-8 |
228 | Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów | |
229 | wykorzystujących Cepha. | |
230 | ||
1b11728e JB |
231 | %package -n python3-ceph |
232 | Summary: Ceph Python 3 bindings | |
233 | Summary(pl.UTF-8): Wiązania Pythona 3 do bibliotek Cepha | |
234 | Group: Development/Languages/Python | |
235 | Requires: %{name}-libs = %{version}-%{release} | |
6b8625f1 | 236 | Obsoletes: python-ceph < 15 |
1b11728e JB |
237 | |
238 | %description -n python3-ceph | |
239 | Ceph Python 3 bindings. | |
240 | ||
241 | %description -n python3-ceph -l pl.UTF-8 | |
242 | Wiązania Pythona 3 do bibliotek Cepha. | |
e5fc70df | 243 | |
4f42482b JB |
244 | %package -n java-cephfs |
245 | Summary: CephFS Java bindings | |
246 | Summary(pl.UTF-8): Wiązania Javy do biblioteki CephFS | |
247 | Group: Libraries/Java | |
248 | Requires: %{name}-libs = %{version}-%{release} | |
249 | ||
250 | %description -n java-cephfs | |
251 | CephFS Java bindings. | |
252 | ||
253 | %description -n java-cephfs -l pl.UTF-8 | |
254 | Wiązania Javy do biblioteki CephFS. | |
255 | ||
e5fc70df JB |
256 | %package fuse |
257 | Summary: Ceph FUSE-based client | |
258 | Summary(pl.UTF-8): Klient Cepha oparty na FUSE | |
259 | Group: Base | |
260 | Requires: %{name} = %{version}-%{release} | |
261 | ||
262 | %description fuse | |
263 | FUSE based client for Ceph distributed network file system. | |
264 | ||
265 | %description fuse -l pl.UTF-8 | |
266 | Oparty na FUSE klient rozproszonego sieciowego systemu plików Ceph. | |
267 | ||
2a1a6301 JR |
268 | %package radosgw |
269 | Summary: rados REST gateway | |
e5fc70df JB |
270 | Summary(pl.UTF-8): Bramka REST-owa rados |
271 | Group: Applications/System | |
2a1a6301 JR |
272 | #Requires: apache-mod_fcgid |
273 | ||
274 | %description radosgw | |
275 | radosgw is an S3 HTTP REST gateway for the RADOS object store. It is | |
276 | implemented as a FastCGI module using libfcgi, and can be used in | |
277 | conjunction with any FastCGI capable web server. | |
278 | ||
e5fc70df JB |
279 | %description radosgw -l pl.UTF-8 |
280 | radosgw to REST-owa bramka HTTP S3 do przechowalni obiektów RADOS. | |
281 | Jest zaimplementowana jako moduł FastCGI wykorzystujący libfcgi i może | |
282 | być używana w połączeniu z dowolnym serwerem WWW obsługującym FastCGI. | |
283 | ||
245cb856 | 284 | %package resource-agents |
8029515d JB |
285 | Summary: OCF Resource Agents for Ceph processes |
286 | Summary(pl.UTF-8): Agenci OCF do monitorowania procesów Cepha | |
287 | Group: Applications/System | |
288 | Requires: %{name} = %{version}-%{release} | |
289 | Requires: resource-agents | |
290 | ||
245cb856 | 291 | %description resource-agents |
8029515d JB |
292 | OCF Resource Agents for Ceph processes. |
293 | ||
245cb856 | 294 | %description resource-agents -l pl.UTF-8 |
8029515d JB |
295 | Agenci OCF do monitorowania procesów Cepha. |
296 | ||
9911b50d JP |
297 | %package test |
298 | Summary: Ceph benchmarks and test tools | |
299 | Summary(pl.UTF-8): Narzędzia testowe oraz do mierzenia wydajności dla Ceph | |
300 | Group: Applications/System | |
301 | Requires: %{name} = %{version}-%{release} | |
302 | ||
303 | %description test | |
304 | Ceph benchmarks and test tools. | |
305 | ||
306 | %description test -l pl.UTF-8 | |
307 | Narzędzia testowe oraz do mierzenia wydajności dla Ceph. | |
308 | ||
79dc5cad JB |
309 | %package -n fio-ceph-objectstore |
310 | Summary: FIO engine module for Ceph ObjectStore | |
311 | Summary(pl.UTF-8): Moduł silnika FIO do używania Ceph ObjectStore | |
312 | Group: Libraries | |
313 | Requires: %{name}-libs = %{version}-%{release} | |
101b8bdd | 314 | %if %{with fio} |
79dc5cad | 315 | %requires_ge_to fio fio-devel |
101b8bdd | 316 | %endif |
79dc5cad JB |
317 | |
318 | %description -n fio-ceph-objectstore | |
319 | This FIO engine allows you to mount and use a ceph object store | |
320 | directly, without having to build a ceph cluster or start any daemons. | |
321 | ||
322 | %description -n fio-ceph-objectstore -l pl.UTF-8 | |
323 | Ten silnik FIO pozwala na bezpośrednie montowanie i używanie | |
324 | przestrzeni obiektów ceph, bez potrzeby budowania klastra ceph czy | |
325 | uruchamiania demonów. | |
326 | ||
2a1a6301 JR |
327 | %prep |
328 | %setup -q | |
329 | %patch0 -p1 | |
737284c4 | 330 | %patch1 -p1 |
f8bb146f JR |
331 | %patch2 -p1 |
332 | %patch3 -p1 | |
333 | %patch4 -p1 | |
32e4d0ff | 334 | %patch5 -p1 |
c8d4a223 | 335 | %patch6 -p1 |
c8d4a223 | 336 | %patch7 -p1 |
bbe36688 | 337 | %patch8 -p1 |
9d79249d | 338 | %ifarch %{ix86} |
bbe36688 | 339 | %patch9 -p1 |
9d79249d | 340 | %endif |
32e4d0ff | 341 | %patch10 -p1 |
682d6dd5 | 342 | %patch11 -p1 |
cc053f74 JB |
343 | %patch12 -p1 |
344 | %patch13 -p1 | |
c5b31b08 | 345 | %patch14 -p1 |
a74f78a4 | 346 | %patch15 -p1 |
e3919159 | 347 | |
f7926bf0 | 348 | %{__sed} -i -e '1s,/usr/bin/env bash,/bin/bash,' \ |
d8321c07 JB |
349 | src/{ceph-post-file.in,rbd-replay-many,rbdmap} \ |
350 | src/rgw/rgw-{gap,orphan}-list | |
f7926bf0 | 351 | |
737284c4 | 352 | %{__sed} -i -e '1s,/usr/bin/awk,/bin/awk,' \ |
370f7446 JR |
353 | src/rgw/rgw-gap-list-comparator |
354 | ||
f7926bf0 JB |
355 | %if %{with angular} |
356 | # stub virtualenv with npm for src/pybind/mgr/dashboard bootstrapping | |
357 | install -d build/src/pybind/mgr/dashboard/node-env/bin | |
358 | ln -sf /usr/bin/npm build/src/pybind/mgr/dashboard/node-env/bin/npm | |
359 | cat >build/src/pybind/mgr/dashboard/node-env/bin/activate <<EOF | |
360 | deactivate() { | |
361 | unset -f deactivate | |
362 | } | |
363 | EOF | |
f7926bf0 JB |
364 | %endif |
365 | ||
2a1a6301 | 366 | %build |
1b11728e JB |
367 | install -d build |
368 | cd build | |
369 | %cmake .. \ | |
bbe36688 JR |
370 | %ifarch %{x8664} %{ix86} x32 |
371 | -DHAVE_INTEL_SSE=1 \ | |
372 | %endif | |
373 | %ifarch %{x8664} x32 | |
374 | -DHAVE_INTEL_SSE2=1 \ | |
375 | -DHAVE_INTEL_SSE3=1 \ | |
376 | -DHAVE_INTEL_SSSE3=1 \ | |
377 | -DHAVE_INTEL_PCLMUL=1 \ | |
378 | -DHAVE_INTEL_SSE4_1=1 \ | |
379 | -DHAVE_INTEL_SSE4_2=1 \ | |
380 | %endif | |
1b11728e JB |
381 | -DALLOCATOR="%{?with_tcmalloc:tcmalloc}%{!?with_tcmalloc:libc}" \ |
382 | -DFIO_INCLUDE_DIR=/usr/include/fio \ | |
737284c4 | 383 | %{?with_java:-DJAVA_HOME:PATH=%{java_home}} \ |
d9328226 | 384 | -DLUA_INCLUDE_DIR=%{_includedir}/lua \ |
d5cae1aa | 385 | -DPYTHON=%{__python3} \ |
f8bb146f | 386 | -DSPHINX_BUILD=/usr/bin/sphinx-build \ |
1b11728e | 387 | %{!?with_babeltrace:-DWITH_BABELTRACE=OFF} \ |
32e4d0ff | 388 | %{?with_bluefs:-DWITH_BLUEFS=ON} \ |
720615cf JR |
389 | %if %{with pmem} |
390 | -DWITH_BLUESTORE_PMEM=ON \ | |
391 | -DWITH_SYSTEM_PMDK:BOOL=ON \ | |
392 | %endif | |
1b11728e JB |
393 | %{?with_java:-DWITH_CEPHFS_JAVA=ON} \ |
394 | %{?with_dpdk:-DWITH_DPDK=ON} \ | |
395 | %{?with_fio:-DWITH_FIO=ON} \ | |
682d6dd5 | 396 | %{?with_kerberos:-DWITH_GSSAPI=ON} \ |
1b11728e JB |
397 | %{!?with_lttng:-DWITH_LTTNG=OFF} \ |
398 | -DWITH_LZ4=ON \ | |
f7926bf0 | 399 | %{!?with_angular:-DWITH_MGR_DASHBOARD_FRONTEND=OFF} \ |
1b11728e | 400 | -DWITH_OCF=ON \ |
737284c4 | 401 | -DWITH_PYTHON3=%{py3_ver} \ |
1b11728e | 402 | %{?with_fcgi:-DWITH_RADOSGW_FCGI_FRONTEND=ON} \ |
682d6dd5 | 403 | %{!?with_rdma:-DWITH_RDMA=OFF} \ |
737284c4 | 404 | -DWITH_REENTRANT_STRSIGNAL=ON \ |
32e4d0ff JB |
405 | %{?with_qat:-DWITH_QAT=ON} \ |
406 | %{?with_qatzip:-DWITH_QATZIP=ON} \ | |
407 | %{?with_seastar:-DWITH_SEASTAR=ON} \ | |
1b11728e JB |
408 | %{?with_spdk:-DWITH_SPDK=ON} \ |
409 | -DWITH_SYSTEM_BOOST=ON \ | |
682d6dd5 | 410 | -DWITH_SYSTEM_LIBURING=ON \ |
d8321c07 | 411 | %{?with_angular:-DWITH_SYSTEM_NPM=ON} \ |
1b11728e | 412 | %{?with_system_rocksdb:-DWITH_SYSTEM_ROCKSDB=ON} \ |
d8321c07 | 413 | -DWITH_SYSTEM_ZSTD=ON \ |
1b11728e | 414 | -DWITH_SYSTEMD=ON \ |
737284c4 | 415 | %{!?with_tests:-DWITH_TESTS=OFF} \ |
32e4d0ff | 416 | %{?with_zbd:-DWITH_ZBD=ON} \ |
737284c4 | 417 | %{?with_zfs:-DWITH_ZFS=ON} |
1b11728e | 418 | |
dc8b799e JB |
419 | # some object files have missing dependencies on these, pregenerate to avoid global -j1 |
420 | %{__make} legacy-option-headers | |
421 | ||
f8bb146f | 422 | %{__make} |
2a1a6301 JR |
423 | |
424 | %install | |
425 | rm -rf $RPM_BUILD_ROOT | |
1b11728e JB |
426 | 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} \ |
427 | $RPM_BUILD_ROOT%{_sysconfdir}/{ceph,bash_completion.d,logrotate.d,rc.d,sysconfig} \ | |
428 | $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},/etc/systemd/system/ceph.target.wants,/sbin} | |
4f42482b | 429 | |
1b11728e JB |
430 | %{__make} -C build install \ |
431 | DESTDIR=$RPM_BUILD_ROOT | |
2a1a6301 | 432 | |
1b11728e JB |
433 | # sanitize paths; no config options for cmake |
434 | %{__mv} $RPM_BUILD_ROOT/etc/init.d $RPM_BUILD_ROOT/etc/rc.d | |
1b11728e JB |
435 | %{__mv} $RPM_BUILD_ROOT%{_sbindir}/mount.* $RPM_BUILD_ROOT/sbin |
436 | ||
437 | cp -p src/logrotate.conf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/ceph | |
2a1a6301 | 438 | |
bbcdc7ce | 439 | cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/ceph |
b6163d67 | 440 | ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/ceph.service |
bbcdc7ce | 441 | cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/ceph.conf |
b6163d67 | 442 | |
682d6dd5 JB |
443 | %if %{without tests} |
444 | %{__rm} $RPM_BUILD_ROOT%{_javadir}/libcephfs-test.jar | |
2df85c68 | 445 | %{__rm} -r $RPM_BUILD_ROOT%{py3_sitescriptdir}/{ceph,ceph_volume}/tests |
682d6dd5 JB |
446 | %endif |
447 | ||
1b11728e JB |
448 | %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir} |
449 | %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir} | |
245cb856 | 450 | |
1b11728e JB |
451 | # packaged as %doc |
452 | %{__rm} $RPM_BUILD_ROOT%{_docdir}/sample.ceph.conf | |
bb30e67a | 453 | |
f7926bf0 | 454 | %if %{with angular} |
d8321c07 | 455 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/ceph/mgr/dashboard/HACKING.rst |
f7926bf0 JB |
456 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/ceph/mgr/{.gitignore,dashboard/static/AdminLTE-2.3.7/{.gitignore,.jshintrc,README.md}} |
457 | %endif | |
2a1a6301 JR |
458 | |
459 | %clean | |
460 | rm -rf $RPM_BUILD_ROOT | |
461 | ||
462 | %post | |
463 | /sbin/chkconfig --add ceph | |
464 | %service ceph restart | |
465 | ||
bef2a0ad JK |
466 | # actual services are to be enabled on cluster deployment |
467 | %systemd_post %{name}.target | |
468 | ||
2a1a6301 JR |
469 | %preun |
470 | if [ "$1" = "0" ] ; then | |
72daa1da JR |
471 | %service ceph stop |
472 | /sbin/chkconfig --del ceph | |
2a1a6301 | 473 | fi |
bef2a0ad JK |
474 | %systemd_preun %{name}.target |
475 | ||
476 | %postun | |
477 | %systemd_reload | |
2a1a6301 | 478 | |
e5fc70df JB |
479 | %post libs -p /sbin/ldconfig |
480 | %postun libs -p /sbin/ldconfig | |
2a1a6301 | 481 | |
4f42482b JB |
482 | %post -n java-cephfs -p /sbin/ldconfig |
483 | %postun -n java-cephfs -p /sbin/ldconfig | |
484 | ||
2a1a6301 JR |
485 | %files |
486 | %defattr(644,root,root,755) | |
9e1f65de | 487 | # COPYING specifies licenses of individual parts |
f7926bf0 | 488 | %doc AUTHORS COPYING PendingReleaseNotes README.md src/sample.ceph.conf doc/releases |
2a1a6301 | 489 | %attr(754,root,root) /etc/rc.d/init.d/ceph |
bef2a0ad JK |
490 | %config(noreplace) /etc/sysconfig/ceph |
491 | %dir /etc/systemd/system/ceph.target.wants | |
bbcdc7ce JB |
492 | %{systemdunitdir}/ceph.service |
493 | %{systemdunitdir}/ceph.target | |
bb30e67a | 494 | %{systemdunitdir}/ceph-crash.service |
1b11728e JB |
495 | %{systemdunitdir}/ceph-fuse.target |
496 | %{systemdunitdir}/ceph-fuse@.service | |
bb30e67a JR |
497 | %{systemdunitdir}/ceph-immutable-object-cache.target |
498 | %{systemdunitdir}/ceph-immutable-object-cache@.service | |
bbcdc7ce | 499 | %{systemdunitdir}/ceph-mds.target |
bef2a0ad | 500 | %{systemdunitdir}/ceph-mds@.service |
1b11728e JB |
501 | %{systemdunitdir}/ceph-mgr.target |
502 | %{systemdunitdir}/ceph-mgr@.service | |
bbcdc7ce | 503 | %{systemdunitdir}/ceph-mon.target |
bef2a0ad | 504 | %{systemdunitdir}/ceph-mon@.service |
bbcdc7ce | 505 | %{systemdunitdir}/ceph-osd.target |
bef2a0ad | 506 | %{systemdunitdir}/ceph-osd@.service |
bbcdc7ce JB |
507 | %{systemdunitdir}/ceph-rbd-mirror.target |
508 | %{systemdunitdir}/ceph-rbd-mirror@.service | |
1b11728e | 509 | %{systemdunitdir}/ceph-volume@.service |
737284c4 JB |
510 | %{systemdunitdir}/cephfs-mirror.target |
511 | %{systemdunitdir}/cephfs-mirror@.service | |
bbcdc7ce | 512 | %{systemdunitdir}/rbdmap.service |
bef2a0ad | 513 | %{systemdtmpfilesdir}/ceph.conf |
2a1a6301 JR |
514 | %dir %{_sysconfdir}/ceph |
515 | %attr(755,root,root) %{_bindir}/ceph | |
8c5712e2 | 516 | %attr(755,root,root) %{_bindir}/ceph-authtool |
1b11728e | 517 | %attr(755,root,root) %{_bindir}/ceph-bluestore-tool |
2a1a6301 | 518 | %attr(755,root,root) %{_bindir}/ceph-clsinfo |
8c5712e2 | 519 | %attr(755,root,root) %{_bindir}/ceph-conf |
bb30e67a | 520 | %attr(755,root,root) %{_bindir}/ceph-crash |
60d5543f | 521 | %attr(755,root,root) %{_bindir}/ceph-dencoder |
bb30e67a JR |
522 | %attr(755,root,root) %{_bindir}/ceph-diff-sorted |
523 | %attr(755,root,root) %{_bindir}/ceph-erasure-code-tool | |
bb30e67a JR |
524 | %attr(755,root,root) %{_bindir}/ceph-immutable-object-cache |
525 | %attr(755,root,root) %{_bindir}/ceph-kvstore-tool | |
2a1a6301 | 526 | %attr(755,root,root) %{_bindir}/ceph-mds |
1b11728e | 527 | %attr(755,root,root) %{_bindir}/ceph-mgr |
8c5712e2 | 528 | %attr(755,root,root) %{_bindir}/ceph-mon |
bb30e67a | 529 | %attr(755,root,root) %{_bindir}/ceph-monstore-tool |
7f577810 | 530 | %attr(755,root,root) %{_bindir}/ceph-objectstore-tool |
2a1a6301 | 531 | %attr(755,root,root) %{_bindir}/ceph-osd |
bb30e67a | 532 | %attr(755,root,root) %{_bindir}/ceph-osdomap-tool |
5e39e43e | 533 | %attr(755,root,root) %{_bindir}/ceph-post-file |
2a1a6301 | 534 | %attr(755,root,root) %{_bindir}/ceph-rbdnamer |
8c5712e2 JB |
535 | %attr(755,root,root) %{_bindir}/ceph-run |
536 | %attr(755,root,root) %{_bindir}/ceph-syn | |
bbcdc7ce | 537 | %attr(755,root,root) %{_bindir}/cephfs-data-scan |
ae4b5127 | 538 | %attr(755,root,root) %{_bindir}/cephfs-journal-tool |
737284c4 | 539 | %attr(755,root,root) %{_bindir}/cephfs-mirror |
b431df60 | 540 | %attr(755,root,root) %{_bindir}/cephfs-table-tool |
737284c4 | 541 | %attr(755,root,root) %{_bindir}/cephfs-top |
ee3ab38d JB |
542 | %if %{with seastore} |
543 | %attr(755,root,root) %{_bindir}/crimson-osd | |
544 | %attr(755,root,root) %{_bindir}/crimson-store-nbd | |
545 | %endif | |
f8f6a16f | 546 | %attr(755,root,root) %{_bindir}/crushdiff |
8c5712e2 | 547 | %attr(755,root,root) %{_bindir}/crushtool |
2a1a6301 | 548 | %attr(755,root,root) %{_bindir}/librados-config |
8c5712e2 JB |
549 | %attr(755,root,root) %{_bindir}/monmaptool |
550 | %attr(755,root,root) %{_bindir}/osdmaptool | |
2a1a6301 JR |
551 | %attr(755,root,root) %{_bindir}/rados |
552 | %attr(755,root,root) %{_bindir}/rbd | |
8c5712e2 | 553 | %attr(755,root,root) %{_bindir}/rbd-fuse |
bbcdc7ce JB |
554 | %attr(755,root,root) %{_bindir}/rbd-mirror |
555 | %attr(755,root,root) %{_bindir}/rbd-nbd | |
9a1a508c | 556 | %attr(755,root,root) %{_bindir}/rbd-replay |
7f577810 | 557 | %attr(755,root,root) %{_bindir}/rbd-replay-many |
9a1a508c | 558 | %attr(755,root,root) %{_bindir}/rbd-replay-prep |
bbcdc7ce | 559 | %attr(755,root,root) %{_bindir}/rbdmap |
bb30e67a JR |
560 | %attr(755,root,root) %{_bindir}/rgw-gap-list |
561 | %attr(755,root,root) %{_bindir}/rgw-gap-list-comparator | |
562 | %attr(755,root,root) %{_bindir}/rgw-orphan-list | |
1b11728e | 563 | %attr(755,root,root) %{_sbindir}/ceph-create-keys |
1b11728e JB |
564 | %attr(755,root,root) %{_sbindir}/ceph-volume |
565 | %attr(755,root,root) %{_sbindir}/ceph-volume-systemd | |
4f42482b JB |
566 | %attr(755,root,root) /sbin/mount.ceph |
567 | %attr(755,root,root) /sbin/mount.fuse.ceph | |
e3919159 | 568 | %if "%{_libexecdir}" != "%{_libdir}" |
c1965bc2 | 569 | %dir %{_libexecdir}/ceph |
e3919159 | 570 | %endif |
a92d2e05 | 571 | %{_libexecdir}/ceph/ceph_common.sh |
c1965bc2 | 572 | %attr(755,root,root) %{_libexecdir}/ceph/ceph-osd-prestart.sh |
bbcdc7ce | 573 | %dir %{_libdir}/ceph/compressor |
1b11728e | 574 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_lz4.so* |
bbcdc7ce JB |
575 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_snappy.so* |
576 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zlib.so* | |
1b11728e | 577 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zstd.so* |
d65c5c24 | 578 | %dir %{_libdir}/ceph/crypto |
bb30e67a | 579 | %ifarch %{x8664} |
d65c5c24 JB |
580 | %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_isal.so* |
581 | %endif | |
737284c4 | 582 | %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_openssl.so* |
cc053f74 JB |
583 | %if %{with qat} |
584 | %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_qat.so* | |
585 | %endif | |
f8f6a16f JB |
586 | %dir %{_libdir}/ceph/denc |
587 | %attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-cephfs.so | |
588 | %attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-common.so | |
589 | %attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-osd.so | |
590 | %attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-rbd.so | |
591 | %attr(755,root,root) %{_libdir}/ceph/denc/denc-mod-rgw.so | |
c408d7b3 | 592 | %dir %{_libdir}/ceph/erasure-code |
bb30e67a | 593 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_clay.so* |
58dc957f | 594 | %ifarch %{x8664} |
066d8601 | 595 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_isa.so* |
6fce7056 | 596 | %endif |
c408d7b3 | 597 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure.so* |
0509a77e | 598 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_generic.so* |
bbcdc7ce | 599 | %ifarch %{arm} |
7f577810 JB |
600 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_neon.so* |
601 | %endif | |
602 | %ifarch %{ix86} %{x8664} x32 | |
0509a77e JB |
603 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse3.so* |
604 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse4.so* | |
bb30e67a JR |
605 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse3.so* |
606 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse4.so* | |
7f577810 | 607 | %endif |
9a1a508c | 608 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_lrc.so* |
b431df60 | 609 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec.so* |
bbcdc7ce | 610 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_generic.so* |
bb30e67a JR |
611 | %dir %{_libdir}/ceph/librbd |
612 | %attr(755,root,root) %{_libdir}/ceph/librbd/libceph_librbd_parent_cache.so* | |
2a1a6301 | 613 | %dir %{_libdir}/rados-classes |
bb30e67a JR |
614 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_2pc_queue.so* |
615 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_cas.so* | |
1b11728e | 616 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_cephfs.so* |
bb30e67a JR |
617 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_cmpomap.so* |
618 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_fifo.so* | |
1b11728e JB |
619 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_hello.so* |
620 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_journal.so* | |
1b11728e JB |
621 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_lock.so* |
622 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_log.so* | |
623 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_lua.so* | |
624 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_numops.so* | |
bb30e67a JR |
625 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_otp.so* |
626 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_queue.so* | |
1b11728e JB |
627 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_rbd.so* |
628 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_refcount.so* | |
1b11728e | 629 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw.so* |
6b8625f1 | 630 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw_gc.so* |
1b11728e | 631 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_sdk.so* |
f8f6a16f | 632 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_test_remote_reads.so* |
1b11728e JB |
633 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_timeindex.so* |
634 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_user.so* | |
635 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_version.so* | |
5e39e43e | 636 | %{_datadir}/ceph |
2a1a6301 JR |
637 | %config(noreplace) /etc/logrotate.d/ceph |
638 | %config(noreplace) %{_sysconfdir}/bash_completion.d/rados | |
639 | %config(noreplace) %{_sysconfdir}/bash_completion.d/ceph | |
640 | %config(noreplace) %{_sysconfdir}/bash_completion.d/rbd | |
641 | %{_mandir}/man8/ceph.8* | |
642 | %{_mandir}/man8/ceph-authtool.8* | |
1b11728e | 643 | %{_mandir}/man8/ceph-bluestore-tool.8* |
2a1a6301 JR |
644 | %{_mandir}/man8/ceph-clsinfo.8* |
645 | %{_mandir}/man8/ceph-conf.8* | |
63709ae0 | 646 | %{_mandir}/man8/ceph-create-keys.8* |
60d5543f | 647 | %{_mandir}/man8/ceph-dencoder.8* |
bb30e67a | 648 | %{_mandir}/man8/ceph-diff-sorted.8* |
bb30e67a JR |
649 | %{_mandir}/man8/ceph-immutable-object-cache.8* |
650 | %{_mandir}/man8/ceph-kvstore-tool.8* | |
2a1a6301 JR |
651 | %{_mandir}/man8/ceph-mds.8* |
652 | %{_mandir}/man8/ceph-mon.8* | |
653 | %{_mandir}/man8/ceph-osd.8* | |
5e39e43e | 654 | %{_mandir}/man8/ceph-post-file.8* |
60d5543f | 655 | %{_mandir}/man8/ceph-rbdnamer.8* |
2a1a6301 JR |
656 | %{_mandir}/man8/ceph-run.8* |
657 | %{_mandir}/man8/ceph-syn.8* | |
1b11728e JB |
658 | %{_mandir}/man8/ceph-volume.8* |
659 | %{_mandir}/man8/ceph-volume-systemd.8* | |
6b8625f1 | 660 | %{_mandir}/man8/cephadm.8* |
737284c4 JB |
661 | %{_mandir}/man8/cephfs-mirror.8* |
662 | %{_mandir}/man8/cephfs-top.8* | |
f8f6a16f | 663 | %{_mandir}/man8/crushdiff.8* |
2a1a6301 JR |
664 | %{_mandir}/man8/crushtool.8* |
665 | %{_mandir}/man8/librados-config.8* | |
2a1a6301 JR |
666 | %{_mandir}/man8/monmaptool.8* |
667 | %{_mandir}/man8/mount.ceph.8* | |
bb30e67a | 668 | %{_mandir}/man8/mount.fuse.ceph.8* |
2a1a6301 JR |
669 | %{_mandir}/man8/osdmaptool.8* |
670 | %{_mandir}/man8/rados.8* | |
2a1a6301 | 671 | %{_mandir}/man8/rbd.8* |
8c5712e2 | 672 | %{_mandir}/man8/rbd-fuse.8* |
bbcdc7ce JB |
673 | %{_mandir}/man8/rbd-mirror.8* |
674 | %{_mandir}/man8/rbd-nbd.8* | |
9a1a508c | 675 | %{_mandir}/man8/rbd-replay.8* |
7f577810 | 676 | %{_mandir}/man8/rbd-replay-many.8* |
9a1a508c | 677 | %{_mandir}/man8/rbd-replay-prep.8* |
bbcdc7ce | 678 | %{_mandir}/man8/rbdmap.8* |
bb30e67a | 679 | %{_mandir}/man8/rgw-orphan-list.8* |
60d5543f | 680 | |
2a1a6301 | 681 | %dir %{_localstatedir}/lib/ceph |
1b11728e JB |
682 | %dir %{_localstatedir}/lib/ceph/bootstrap-mds |
683 | %dir %{_localstatedir}/lib/ceph/bootstrap-mgr | |
684 | %dir %{_localstatedir}/lib/ceph/bootstrap-osd | |
685 | %dir %{_localstatedir}/lib/ceph/bootstrap-rbd | |
686 | %dir %{_localstatedir}/lib/ceph/bootstrap-rgw | |
b6163d67 | 687 | %dir %{_localstatedir}/lib/ceph/mds |
1b11728e | 688 | %dir %{_localstatedir}/lib/ceph/mgr |
b6163d67 JK |
689 | %dir %{_localstatedir}/lib/ceph/mon |
690 | %dir %{_localstatedir}/lib/ceph/osd | |
2a1a6301 JR |
691 | %dir %{_localstatedir}/lib/ceph/tmp |
692 | %dir %{_localstatedir}/log/ceph | |
bef2a0ad | 693 | %dir %{_localstatedir}/run/ceph |
2a1a6301 JR |
694 | |
695 | %files libs | |
696 | %defattr(644,root,root,755) | |
32e4d0ff JB |
697 | %if %{with bluefs} |
698 | %attr(755,root,root) %{_libdir}/libbluefs.so | |
699 | %endif | |
2a1a6301 | 700 | %attr(755,root,root) %{_libdir}/libcephfs.so.*.*.* |
1b11728e | 701 | %attr(755,root,root) %ghost %{_libdir}/libcephfs.so.2 |
4447516f JB |
702 | %attr(755,root,root) %{_libdir}/libos_tp.so.*.*.* |
703 | %attr(755,root,root) %ghost %{_libdir}/libos_tp.so.1 | |
704 | %attr(755,root,root) %{_libdir}/libosd_tp.so.*.*.* | |
705 | %attr(755,root,root) %ghost %{_libdir}/libosd_tp.so.1 | |
2a1a6301 JR |
706 | %attr(755,root,root) %{_libdir}/librados.so.*.*.* |
707 | %attr(755,root,root) %ghost %{_libdir}/librados.so.2 | |
4447516f JB |
708 | %attr(755,root,root) %{_libdir}/librados_tp.so.*.*.* |
709 | %attr(755,root,root) %ghost %{_libdir}/librados_tp.so.2 | |
bb30e67a JR |
710 | %attr(755,root,root) %{_libdir}/libradosgw.so.*.*.* |
711 | %attr(755,root,root) %ghost %{_libdir}/libradosgw.so.2 | |
548e0d3f JB |
712 | %attr(755,root,root) %{_libdir}/libradosstriper.so.*.*.* |
713 | %attr(755,root,root) %ghost %{_libdir}/libradosstriper.so.1 | |
2a1a6301 JR |
714 | %attr(755,root,root) %{_libdir}/librbd.so.*.*.* |
715 | %attr(755,root,root) %ghost %{_libdir}/librbd.so.1 | |
4447516f JB |
716 | %attr(755,root,root) %{_libdir}/librbd_tp.so.*.*.* |
717 | %attr(755,root,root) %ghost %{_libdir}/librbd_tp.so.1 | |
bbcdc7ce JB |
718 | %attr(755,root,root) %{_libdir}/librgw.so.*.*.* |
719 | %attr(755,root,root) %ghost %{_libdir}/librgw.so.2 | |
bb30e67a JR |
720 | %attr(755,root,root) %{_libdir}/librgw_op_tp.so.*.*.* |
721 | %attr(755,root,root) %ghost %{_libdir}/librgw_op_tp.so.2 | |
722 | %attr(755,root,root) %{_libdir}/librgw_rados_tp.so.*.*.* | |
723 | %attr(755,root,root) %ghost %{_libdir}/librgw_rados_tp.so.2 | |
724 | %attr(755,root,root) %{_libdir}/libcephsqlite.so | |
5b8dadc9 | 725 | %dir %{_libdir}/ceph |
bb30e67a | 726 | %attr(755,root,root) %{_libdir}/ceph/libceph-common.so.2 |
2a1a6301 | 727 | |
2a1a6301 JR |
728 | %files devel |
729 | %defattr(644,root,root,755) | |
2a1a6301 | 730 | %attr(755,root,root) %{_libdir}/libcephfs.so |
4447516f JB |
731 | %attr(755,root,root) %{_libdir}/libos_tp.so |
732 | %attr(755,root,root) %{_libdir}/libosd_tp.so | |
2a1a6301 | 733 | %attr(755,root,root) %{_libdir}/librados.so |
4447516f | 734 | %attr(755,root,root) %{_libdir}/librados_tp.so |
bb30e67a | 735 | %attr(755,root,root) %{_libdir}/libradosgw.so |
548e0d3f | 736 | %attr(755,root,root) %{_libdir}/libradosstriper.so |
2a1a6301 | 737 | %attr(755,root,root) %{_libdir}/librbd.so |
4447516f | 738 | %attr(755,root,root) %{_libdir}/librbd_tp.so |
bbcdc7ce | 739 | %attr(755,root,root) %{_libdir}/librgw.so |
bb30e67a JR |
740 | %attr(755,root,root) %{_libdir}/librgw_op_tp.so |
741 | %attr(755,root,root) %{_libdir}/librgw_rados_tp.so | |
e5fc70df JB |
742 | %{_includedir}/cephfs |
743 | %{_includedir}/rados | |
548e0d3f | 744 | %{_includedir}/radosstriper |
e5fc70df | 745 | %{_includedir}/rbd |
bb30e67a | 746 | %{_includedir}/libcephsqlite.h |
2a1a6301 | 747 | |
1b11728e JB |
748 | %files -n python3-ceph |
749 | %defattr(644,root,root,755) | |
750 | %attr(755,root,root) %{py3_sitedir}/cephfs.cpython-*.so | |
bb30e67a | 751 | %attr(755,root,root) %{py3_sitedir}/rados.cpython-*.so |
bb30e67a | 752 | %attr(755,root,root) %{py3_sitedir}/rbd.cpython-*.so |
bb30e67a | 753 | %attr(755,root,root) %{py3_sitedir}/rgw.cpython-*.so |
2df85c68 JR |
754 | %{py3_sitedir}/cephfs-2.0.0-py*.egg-info |
755 | %{py3_sitedir}/rados-2.0.0-py*.egg-info | |
756 | %{py3_sitedir}/rbd-2.0.0-py*.egg-info | |
1b11728e | 757 | %{py3_sitedir}/rgw-2.0.0-py*.egg-info |
2b3ddb3f JB |
758 | %{py3_sitescriptdir}/ceph_*.py |
759 | %{py3_sitescriptdir}/__pycache__/ceph_*.py* | |
760 | %{py3_sitescriptdir}/ceph | |
761 | %{py3_sitescriptdir}/ceph_volume | |
2df85c68 JR |
762 | %{py3_sitescriptdir}/ceph-1.0.0-py*.egg-info |
763 | %{py3_sitescriptdir}/ceph_volume-1.0.0-py*.egg-info | |
764 | %{py3_sitescriptdir}/cephfs_top-0.0.1-py*.egg-info | |
1b11728e | 765 | |
4f42482b JB |
766 | %if %{with java} |
767 | %files -n java-cephfs | |
768 | %defattr(644,root,root,755) | |
769 | %attr(755,root,root) %{_libdir}/libcephfs_jni.so.*.*.* | |
770 | %attr(755,root,root) %ghost %{_libdir}/libcephfs_jni.so.1 | |
771 | %attr(755,root,root) %{_libdir}/libcephfs_jni.so | |
772 | %{_javadir}/libcephfs.jar | |
773 | %endif | |
774 | ||
e5fc70df JB |
775 | %files fuse |
776 | %defattr(644,root,root,755) | |
e5fc70df JB |
777 | %attr(755,root,root) %{_bindir}/ceph-fuse |
778 | %{_mandir}/man8/ceph-fuse.8* | |
779 | ||
2a1a6301 JR |
780 | %files radosgw |
781 | %defattr(644,root,root,755) | |
782 | %attr(755,root,root) %{_bindir}/radosgw | |
783 | %attr(755,root,root) %{_bindir}/radosgw-admin | |
1b11728e | 784 | %attr(755,root,root) %{_bindir}/radosgw-es |
bbcdc7ce JB |
785 | %attr(755,root,root) %{_bindir}/radosgw-object-expirer |
786 | %attr(755,root,root) %{_bindir}/radosgw-token | |
787 | %{systemdunitdir}/ceph-radosgw.target | |
788 | %{systemdunitdir}/ceph-radosgw@.service | |
2a1a6301 | 789 | %{_sysconfdir}/bash_completion.d/radosgw-admin |
1b11728e JB |
790 | %dir %{_localstatedir}/lib/ceph/radosgw |
791 | %{_mandir}/man8/radosgw.8* | |
792 | %{_mandir}/man8/radosgw-admin.8* | |
2a1a6301 | 793 | |
245cb856 | 794 | %files resource-agents |
8029515d JB |
795 | %defattr(644,root,root,755) |
796 | %dir %{_prefix}/lib/ocf/resource.d/ceph | |
8029515d | 797 | %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/ceph/rbd |
79dc5cad | 798 | |
bb30e67a | 799 | %if %{with tests} |
9911b50d JP |
800 | %files test |
801 | %defattr(644,root,root,755) | |
802 | %attr(755,root,root) %{_bindir}/ceph-client-debug | |
803 | %attr(755,root,root) %{_bindir}/ceph-coverage | |
804 | %attr(755,root,root) %{_bindir}/ceph-debugpack | |
805 | %attr(755,root,root) %{_bindir}/ceph-kvstore-tool | |
806 | %attr(755,root,root) %{_bindir}/ceph-monstore-tool | |
807 | %attr(755,root,root) %{_bindir}/ceph-osdomap-tool | |
808 | %attr(755,root,root) %{_bindir}/ceph_bench_log | |
809 | %attr(755,root,root) %{_bindir}/ceph_erasure_code | |
810 | %attr(755,root,root) %{_bindir}/ceph_erasure_code_benchmark | |
811 | %attr(755,root,root) %{_bindir}/ceph_kvstorebench | |
812 | %attr(755,root,root) %{_bindir}/ceph_multi_stress_watch | |
813 | %attr(755,root,root) %{_bindir}/ceph_objectstore_bench | |
814 | %attr(755,root,root) %{_bindir}/ceph_omapbench | |
815 | %attr(755,root,root) %{_bindir}/ceph_perf_local | |
816 | %attr(755,root,root) %{_bindir}/ceph_perf_msgr_client | |
817 | %attr(755,root,root) %{_bindir}/ceph_perf_msgr_server | |
818 | %attr(755,root,root) %{_bindir}/ceph_perf_objectstore | |
819 | %attr(755,root,root) %{_bindir}/ceph_psim | |
820 | %attr(755,root,root) %{_bindir}/ceph_radosacl | |
821 | %attr(755,root,root) %{_bindir}/ceph_rgw_jsonparser | |
822 | %attr(755,root,root) %{_bindir}/ceph_rgw_multiparser | |
823 | %attr(755,root,root) %{_bindir}/ceph_scratchtool | |
824 | %attr(755,root,root) %{_bindir}/ceph_scratchtoolpp | |
825 | %attr(755,root,root) %{_bindir}/ceph_smalliobench | |
826 | %attr(755,root,root) %{_bindir}/ceph_smalliobenchdumb | |
827 | %attr(755,root,root) %{_bindir}/ceph_smalliobenchfs | |
828 | %attr(755,root,root) %{_bindir}/ceph_smalliobenchrbd | |
829 | %attr(755,root,root) %{_bindir}/ceph_test_* | |
830 | %attr(755,root,root) %{_bindir}/ceph_tpbench | |
831 | %attr(755,root,root) %{_bindir}/ceph_xattr_bench | |
832 | %attr(755,root,root) %{_libdir}/ceph/ceph-monstore-update-crush.sh | |
682d6dd5 JB |
833 | %{py3_sitedir}/ceph/tests |
834 | %{py3_sitedir}/ceph_volume/tests | |
835 | %if %{with java} | |
836 | %{_javadir}/libcephfs-test.jar | |
837 | %endif | |
9911b50d JP |
838 | %{_mandir}/man8/ceph-debugpack.8* |
839 | %{_mandir}/man8/ceph-kvstore-tool.8* | |
840 | %endif | |
841 | ||
79dc5cad JB |
842 | %if %{with fio} |
843 | %files -n fio-ceph-objectstore | |
844 | %defattr(644,root,root,755) | |
845 | %doc src/test/fio/{README.md,ceph-*.conf,ceph-*.fio} | |
846 | %attr(755,root,root) %{_libdir}/libfio_ceph_objectstore.so | |
847 | %endif |