]>
Commit | Line | Data |
---|---|---|
b6163d67 | 1 | # TODO: |
bbcdc7ce JB |
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 | |
b6163d67 | 5 | # |
19c20e80 JR |
6 | # Note on versioning: http://docs.ceph.com/docs/master/releases/ |
7 | # | |
714b93ed | 8 | # Conditional build: |
7f577810 | 9 | %bcond_without java # Java binding |
bbcdc7ce | 10 | %bcond_with accelio # Accelio transport support [needs update for internal API changes] |
1b11728e JB |
11 | %bcond_with cryptopp # use cryptopp instead of NSS crypto/SSL |
12 | %bcond_with dpdk # DPDK messaging (requires cryptopp instead of nss) | |
d5cae1aa | 13 | %bcond_with fcgi # RADOS Gateway FCGI frontend |
4429ac83 | 14 | %bcond_with fio # FIO engines support |
1b11728e JB |
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 | |
d5cae1aa | 18 | %bcond_with zfs # ZFS support [not ready for zfs 0.8.x] |
7f577810 JB |
19 | %bcond_without lttng # LTTng tracing |
20 | %bcond_without babeltrace # Babeltrace traces support | |
21 | %bcond_without tcmalloc # tcmalloc allocator | |
c37aec31 | 22 | %bcond_with tests # build tests |
6fce7056 JR |
23 | |
24 | %ifarch x32 | |
25 | %undefine with_tcmalloc | |
26 | %endif | |
1b11728e JB |
27 | %ifnarch %{x8664} aarch64 |
28 | %undefine with_pmem | |
29 | %endif | |
30 | %if %{without cryptopp} && %{with dpdk} | |
31 | %error DPDK requires cryptopp | |
32 | %endif | |
714b93ed | 33 | # |
2a1a6301 | 34 | Summary: User space components of the Ceph file system |
e5fc70df | 35 | Summary(pl.UTF-8): Działające w przestrzeni użytkownika elementy systemu plików Ceph |
2a1a6301 | 36 | Name: ceph |
d5cae1aa JR |
37 | Version: 16.2.7 |
38 | Release: 0.1 | |
9e1f65de | 39 | License: LGPL v2.1 (libraries), GPL v2 (some programs) |
2a1a6301 | 40 | Group: Base |
4447516f | 41 | Source0: http://download.ceph.com/tarballs/%{name}-%{version}.tar.gz |
d5cae1aa | 42 | # Source0-md5: 3cb3d259e59920b0d7145537f338aeec |
b6163d67 | 43 | Source1: ceph.sysconfig |
bbcdc7ce | 44 | Source3: ceph.tmpfiles |
2a1a6301 | 45 | Patch0: %{name}-init-fix.patch |
1b11728e JB |
46 | Patch3: %{name}-python.patch |
47 | Patch4: %{name}-types.patch | |
48 | Patch5: %{name}-tcmalloc.patch | |
49 | Patch6: %{name}-rocksdb.patch | |
50 | Patch7: %{name}-fcgi.patch | |
79dc5cad | 51 | Patch8: %{name}-fio.patch |
101b8bdd | 52 | Patch9: %{name}-zfs.patch |
acdfce6f | 53 | Patch10: %{name}-includes.patch |
d5cae1aa | 54 | Patch11: string-includes.patch |
e3919159 | 55 | URL: https://ceph.io/ |
477a1b20 | 56 | %{?with_accelio:BuildRequires: accelio-devel} |
7f577810 | 57 | %{?with_babeltrace:BuildRequires: babeltrace-devel} |
1b11728e | 58 | BuildRequires: boost-devel >= 1.66 |
d5cae1aa JR |
59 | BuildRequires: boost-python3-devel >= 1.66 |
60 | BuildRequires: cmake >= 3.22.2 | |
1b11728e | 61 | %{?with_cryptopp:BuildRequires: cryptopp-devel} |
2a1a6301 | 62 | BuildRequires: curl-devel |
1b11728e JB |
63 | %if %{with dpdk} || %{with spdk} |
64 | BuildRequires: dpdk-devel | |
65 | %endif | |
714b93ed | 66 | BuildRequires: expat-devel >= 1.95 |
1b11728e JB |
67 | %{?with_fcgi:BuildRequires: fcgi-devel} |
68 | %{?with_fio:BuildRequires: fio-devel} | |
2a1a6301 | 69 | BuildRequires: gdbm-devel |
d5cae1aa | 70 | BuildRequires: gperftools-devel |
7db8c214 | 71 | %if %{with java} |
4f42482b | 72 | BuildRequires: jdk |
b5d07312 | 73 | BuildRequires: jre-X11 |
4f42482b | 74 | %endif |
2a1a6301 | 75 | BuildRequires: keyutils-devel |
548e0d3f | 76 | BuildRequires: leveldb-devel >= 1.2 |
714b93ed | 77 | BuildRequires: libaio-devel |
2a1a6301 | 78 | BuildRequires: libatomic_ops |
548e0d3f | 79 | BuildRequires: libblkid-devel >= 2.17 |
714b93ed | 80 | BuildRequires: libedit-devel >= 2.11 |
2a1a6301 | 81 | BuildRequires: libfuse-devel |
1b11728e | 82 | # +RDMA? |
477a1b20 | 83 | %{?with_accelio:BuildRequires: libibverbs-devel} |
2a1a6301 | 84 | BuildRequires: libltdl-devel |
d5cae1aa | 85 | BuildRequires: librdkafka-devel |
477a1b20 | 86 | %{?with_accelio:BuildRequires: librdmacm-devel} |
bbcdc7ce | 87 | BuildRequires: libstdc++-devel >= 6:4.7 |
6fce7056 | 88 | %{?with_tcmalloc:BuildRequires: libtcmalloc-devel} |
714b93ed | 89 | BuildRequires: libtool >= 2:1.5 |
2a1a6301 | 90 | BuildRequires: libuuid-devel |
bbcdc7ce | 91 | BuildRequires: libxml2-devel >= 2.0 |
7f577810 | 92 | %{?with_lttng:BuildRequires: lttng-ust-devel} |
d5cae1aa | 93 | BuildRequires: lua-devel |
1b11728e JB |
94 | BuildRequires: lz4-devel >= 1:1.7 |
95 | %{!?with_cryptopp:BuildRequires: nss-devel >= 3} | |
d5cae1aa | 96 | BuildRequires: oath-toolkit-devel |
bbcdc7ce JB |
97 | BuildRequires: openldap-devel |
98 | BuildRequires: openssl-devel | |
e5fc70df | 99 | BuildRequires: perl-base |
2a1a6301 | 100 | BuildRequires: pkgconfig |
1b11728e | 101 | %{?with_pmem:BuildRequires: pmdk-devel} |
d5cae1aa JR |
102 | BuildRequires: python3 >= 1:2.7 |
103 | BuildRequires: python3-devel >= 1:2.7 | |
104 | BuildRequires: python3-Cython | |
1b11728e | 105 | BuildRequires: python3-devel >= 1:3.2 |
a92d2e05 | 106 | BuildRequires: python3-Cython |
101b8bdd JB |
107 | # upstream uses 3.0.0, rocksdb patch adjusts for 5.6.0 API change |
108 | %{?with_system_rocksdb:BuildRequires: rocksdb-devel >= 5.6.0} | |
bef2a0ad | 109 | BuildRequires: rpmbuild(macros) >= 1.671 |
e3919159 | 110 | BuildRequires: sed >= 4.0 |
f965be58 | 111 | BuildRequires: snappy-devel |
bbcdc7ce | 112 | BuildRequires: sphinx-pdg-2 >= 1.0 |
548e0d3f | 113 | BuildRequires: udev-devel |
1b11728e | 114 | #BuildRequires: virtualenv for tests |
b1fa8ffe | 115 | %{?with_dpdk:BuildRequires: xorg-lib-libpciaccess-devel} |
fa260b6c | 116 | BuildRequires: xfsprogs-devel |
7db8c214 JB |
117 | %ifarch %{x8664} |
118 | BuildRequires: yasm | |
119 | %endif | |
101b8bdd JB |
120 | # zfs patch updates to 0.8.0 API |
121 | %{?with_zfs:BuildRequires: zfs-devel >= 0.8.0} | |
bbcdc7ce | 122 | BuildRequires: zlib-devel |
2a1a6301 JR |
123 | Requires(post,preun): /sbin/chkconfig |
124 | Requires(preun): rc-scripts | |
125 | Requires: %{name}-libs = %{version}-%{release} | |
d5cae1aa | 126 | Requires: python3-%{name} = %{version}-%{release} |
bef2a0ad | 127 | Requires: systemd-units >= 38 |
60d5543f | 128 | Obsoletes: gcephtool |
7db8c214 | 129 | Obsoletes: hadoop-cephfs |
2a1a6301 JR |
130 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
131 | ||
2d841236 | 132 | %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.* |
2a1a6301 JR |
133 | |
134 | %description | |
135 | Ceph is a distributed network file system designed to provide | |
136 | excellent performance, reliability, and scalability. | |
137 | ||
e5fc70df JB |
138 | %description -l pl.UTF-8 |
139 | Ceph to rozproszony sieciowy system plików zaprojektowany z myślą o | |
140 | dobrej wydajności, wiarygodności i skalowalności. | |
141 | ||
2a1a6301 JR |
142 | %package libs |
143 | Summary: Ceph shared libraries | |
e5fc70df | 144 | Summary(pl.UTF-8): Biblioteki współdzielone Cepha |
2a1a6301 JR |
145 | Group: Libraries |
146 | ||
147 | %description libs | |
148 | Ceph shared libraries. | |
149 | ||
e5fc70df JB |
150 | %description libs -l pl.UTF-8 |
151 | Biblioteki współdzielone Cepha. | |
2a1a6301 JR |
152 | |
153 | %package devel | |
e5fc70df JB |
154 | Summary: Ceph header files |
155 | Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Cepha | |
96c29907 | 156 | License: LGPL v2.1 |
2a1a6301 JR |
157 | Group: Development/Libraries |
158 | Requires: %{name}-libs = %{version}-%{release} | |
1b11728e | 159 | Requires: boost-devel >= 1.66 |
bbcdc7ce JB |
160 | Requires: curl-devel |
161 | Requires: expat-devel | |
162 | Requires: fcgi-devel | |
163 | Requires: nss-devel >= 3 | |
96c29907 JB |
164 | Requires: leveldb-devel |
165 | Requires: libatomic_ops | |
bbcdc7ce JB |
166 | Requires: libblkid-devel >= 2.17 |
167 | Requires: libstdc++-devel >= 6:4.7 | |
96c29907 | 168 | Requires: libuuid-devel |
bbcdc7ce JB |
169 | %{?with_lttng:Requires: lttng-ust-devel} |
170 | Requires: openldap-devel | |
1b11728e | 171 | Obsoletes: ceph-static < 12 |
2a1a6301 JR |
172 | |
173 | %description devel | |
174 | This package contains the headers needed to develop programs that use | |
175 | Ceph. | |
176 | ||
e5fc70df JB |
177 | %description devel -l pl.UTF-8 |
178 | Ten pakiet zawiera pliki nagłówkowe potrzebne do tworzenia programów | |
179 | wykorzystujących Cepha. | |
180 | ||
1b11728e JB |
181 | %package -n python3-ceph |
182 | Summary: Ceph Python 3 bindings | |
183 | Summary(pl.UTF-8): Wiązania Pythona 3 do bibliotek Cepha | |
184 | Group: Development/Languages/Python | |
185 | Requires: %{name}-libs = %{version}-%{release} | |
186 | ||
187 | %description -n python3-ceph | |
188 | Ceph Python 3 bindings. | |
189 | ||
190 | %description -n python3-ceph -l pl.UTF-8 | |
191 | Wiązania Pythona 3 do bibliotek Cepha. | |
e5fc70df | 192 | |
4f42482b JB |
193 | %package -n java-cephfs |
194 | Summary: CephFS Java bindings | |
195 | Summary(pl.UTF-8): Wiązania Javy do biblioteki CephFS | |
196 | Group: Libraries/Java | |
197 | Requires: %{name}-libs = %{version}-%{release} | |
198 | ||
199 | %description -n java-cephfs | |
200 | CephFS Java bindings. | |
201 | ||
202 | %description -n java-cephfs -l pl.UTF-8 | |
203 | Wiązania Javy do biblioteki CephFS. | |
204 | ||
e5fc70df JB |
205 | %package fuse |
206 | Summary: Ceph FUSE-based client | |
207 | Summary(pl.UTF-8): Klient Cepha oparty na FUSE | |
208 | Group: Base | |
209 | Requires: %{name} = %{version}-%{release} | |
210 | ||
211 | %description fuse | |
212 | FUSE based client for Ceph distributed network file system. | |
213 | ||
214 | %description fuse -l pl.UTF-8 | |
215 | Oparty na FUSE klient rozproszonego sieciowego systemu plików Ceph. | |
216 | ||
2a1a6301 JR |
217 | %package radosgw |
218 | Summary: rados REST gateway | |
e5fc70df JB |
219 | Summary(pl.UTF-8): Bramka REST-owa rados |
220 | Group: Applications/System | |
2a1a6301 JR |
221 | #Requires: apache-mod_fcgid |
222 | ||
223 | %description radosgw | |
224 | radosgw is an S3 HTTP REST gateway for the RADOS object store. It is | |
225 | implemented as a FastCGI module using libfcgi, and can be used in | |
226 | conjunction with any FastCGI capable web server. | |
227 | ||
e5fc70df JB |
228 | %description radosgw -l pl.UTF-8 |
229 | radosgw to REST-owa bramka HTTP S3 do przechowalni obiektów RADOS. | |
230 | Jest zaimplementowana jako moduł FastCGI wykorzystujący libfcgi i może | |
231 | być używana w połączeniu z dowolnym serwerem WWW obsługującym FastCGI. | |
232 | ||
245cb856 | 233 | %package resource-agents |
8029515d JB |
234 | Summary: OCF Resource Agents for Ceph processes |
235 | Summary(pl.UTF-8): Agenci OCF do monitorowania procesów Cepha | |
236 | Group: Applications/System | |
237 | Requires: %{name} = %{version}-%{release} | |
238 | Requires: resource-agents | |
239 | ||
245cb856 | 240 | %description resource-agents |
8029515d JB |
241 | OCF Resource Agents for Ceph processes. |
242 | ||
245cb856 | 243 | %description resource-agents -l pl.UTF-8 |
8029515d JB |
244 | Agenci OCF do monitorowania procesów Cepha. |
245 | ||
9911b50d JP |
246 | %package test |
247 | Summary: Ceph benchmarks and test tools | |
248 | Summary(pl.UTF-8): Narzędzia testowe oraz do mierzenia wydajności dla Ceph | |
249 | Group: Applications/System | |
250 | Requires: %{name} = %{version}-%{release} | |
251 | ||
252 | %description test | |
253 | Ceph benchmarks and test tools. | |
254 | ||
255 | %description test -l pl.UTF-8 | |
256 | Narzędzia testowe oraz do mierzenia wydajności dla Ceph. | |
257 | ||
79dc5cad JB |
258 | %package -n fio-ceph-objectstore |
259 | Summary: FIO engine module for Ceph ObjectStore | |
260 | Summary(pl.UTF-8): Moduł silnika FIO do używania Ceph ObjectStore | |
261 | Group: Libraries | |
262 | Requires: %{name}-libs = %{version}-%{release} | |
101b8bdd | 263 | %if %{with fio} |
79dc5cad | 264 | %requires_ge_to fio fio-devel |
101b8bdd | 265 | %endif |
79dc5cad JB |
266 | |
267 | %description -n fio-ceph-objectstore | |
268 | This FIO engine allows you to mount and use a ceph object store | |
269 | directly, without having to build a ceph cluster or start any daemons. | |
270 | ||
271 | %description -n fio-ceph-objectstore -l pl.UTF-8 | |
272 | Ten silnik FIO pozwala na bezpośrednie montowanie i używanie | |
273 | przestrzeni obiektów ceph, bez potrzeby budowania klastra ceph czy | |
274 | uruchamiania demonów. | |
275 | ||
2a1a6301 JR |
276 | %prep |
277 | %setup -q | |
278 | %patch0 -p1 | |
d5cae1aa JR |
279 | #%patch3 -p1 |
280 | #%patch4 -p1 | |
281 | #%patch5 -p1 | |
282 | #%patch6 -p1 | |
1b11728e | 283 | %patch7 -p1 |
d5cae1aa JR |
284 | #%patch8 -p1 |
285 | #%patch9 -p1 | |
286 | #%patch10 -p1 | |
287 | %patch11 -p1 | |
2a1a6301 | 288 | |
d5cae1aa JR |
289 | #%{__sed} -i -e '1s,/usr/bin/env python$,%{__python},' \ |
290 | # src/{ceph-create-keys,ceph-rest-api,mount.fuse.ceph} \ | |
291 | # src/brag/client/ceph-brag \ | |
292 | # src/ceph-disk/ceph_disk/main.py | |
e3919159 | 293 | |
2a1a6301 | 294 | %build |
1b11728e JB |
295 | install -d build |
296 | cd build | |
297 | %cmake .. \ | |
298 | -DALLOCATOR="%{?with_tcmalloc:tcmalloc}%{!?with_tcmalloc:libc}" \ | |
299 | -DFIO_INCLUDE_DIR=/usr/include/fio \ | |
d5cae1aa JR |
300 | -DWITH_PYTHON3=%{py3_ver} \ |
301 | -DPYTHON=%{__python3} \ | |
1b11728e JB |
302 | -DSPHINX_BUILD=/usr/bin/sphinx-build-2 \ |
303 | %{!?with_babeltrace:-DWITH_BABELTRACE=OFF} \ | |
304 | %{?with_java:-DWITH_CEPHFS_JAVA=ON} \ | |
b5d07312 | 305 | %{?with_java:-DJAVA_JVM_LIBRARY:PATH=%{_jvmdir}/java/lib/server/libjvm.so} \ |
1b11728e JB |
306 | %{?with_dpdk:-DWITH_DPDK=ON} \ |
307 | %{?with_fio:-DWITH_FIO=ON} \ | |
308 | %{!?with_lttng:-DWITH_LTTNG=OFF} \ | |
d5cae1aa | 309 | -DLUA_INCLUDE_DIR=%{_includedir}/lua \ |
1b11728e JB |
310 | -DWITH_LZ4=ON \ |
311 | %{?with_cryptopp:-DWITH_NSS=OFF} \ | |
312 | -DWITH_OCF=ON \ | |
313 | %{?with_pmem:-DWITH_PMEM=ON} \ | |
314 | %{?with_fcgi:-DWITH_RADOSGW_FCGI_FRONTEND=ON} \ | |
315 | %{?with_spdk:-DWITH_SPDK=ON} \ | |
316 | -DWITH_SYSTEM_BOOST=ON \ | |
317 | %{?with_system_rocksdb:-DWITH_SYSTEM_ROCKSDB=ON} \ | |
318 | -DWITH_SYSTEMD=ON \ | |
319 | %{?with_accelio:-DWITH_XIO=ON} \ | |
f73f6ee6 | 320 | %{?with_zfs:-DWITH_ZFS=ON} \ |
c37aec31 JP |
321 | -DWITH_REENTRANT_STRSIGNAL=ON \ |
322 | %{!?with_tests:-DWITH_TESTS=OFF} | |
1b11728e | 323 | |
d5cae1aa | 324 | %{__make} -k |
2a1a6301 JR |
325 | |
326 | %install | |
327 | rm -rf $RPM_BUILD_ROOT | |
1b11728e JB |
328 | 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} \ |
329 | $RPM_BUILD_ROOT%{_sysconfdir}/{ceph,bash_completion.d,logrotate.d,rc.d,sysconfig} \ | |
330 | $RPM_BUILD_ROOT{%{systemdunitdir},%{systemdtmpfilesdir},/etc/systemd/system/ceph.target.wants,/sbin} | |
4f42482b | 331 | |
1b11728e JB |
332 | %{__make} -C build install \ |
333 | DESTDIR=$RPM_BUILD_ROOT | |
2a1a6301 | 334 | |
1b11728e JB |
335 | # sanitize paths; no config options for cmake |
336 | %{__mv} $RPM_BUILD_ROOT/etc/init.d $RPM_BUILD_ROOT/etc/rc.d | |
337 | %{__mv} $RPM_BUILD_ROOT%{_libexecdir}/systemd/system/* $RPM_BUILD_ROOT%{systemdunitdir} | |
338 | %{__mv} $RPM_BUILD_ROOT%{_sbindir}/mount.* $RPM_BUILD_ROOT/sbin | |
339 | ||
340 | cp -p src/logrotate.conf $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/ceph | |
2a1a6301 | 341 | |
bbcdc7ce | 342 | cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/ceph |
b6163d67 | 343 | ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/ceph.service |
bbcdc7ce | 344 | cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/ceph.conf |
b6163d67 | 345 | |
1b11728e JB |
346 | %py_comp $RPM_BUILD_ROOT%{py_sitescriptdir} |
347 | %py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir} | |
348 | %py_postclean | |
4f42482b | 349 | |
1b11728e JB |
350 | %py3_comp $RPM_BUILD_ROOT%{py3_sitescriptdir} |
351 | %py3_ocomp $RPM_BUILD_ROOT%{py3_sitescriptdir} | |
245cb856 | 352 | |
c37aec31 | 353 | %if %{with tests} |
1b11728e JB |
354 | # tests |
355 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/ceph_test_* | |
c37aec31 | 356 | %endif |
1b11728e JB |
357 | # packaged as %doc |
358 | %{__rm} $RPM_BUILD_ROOT%{_docdir}/sample.ceph.conf | |
359 | # cleanup | |
360 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/ceph/mgr/{.gitignore,dashboard/HACKING.rst,dashboard/static/AdminLTE-2.3.7/{.gitignore,.jshintrc,README.md}} | |
2a1a6301 JR |
361 | |
362 | %clean | |
363 | rm -rf $RPM_BUILD_ROOT | |
364 | ||
365 | %post | |
366 | /sbin/chkconfig --add ceph | |
367 | %service ceph restart | |
368 | ||
bef2a0ad JK |
369 | # actual services are to be enabled on cluster deployment |
370 | %systemd_post %{name}.target | |
371 | ||
2a1a6301 JR |
372 | %preun |
373 | if [ "$1" = "0" ] ; then | |
72daa1da JR |
374 | %service ceph stop |
375 | /sbin/chkconfig --del ceph | |
2a1a6301 | 376 | fi |
bef2a0ad JK |
377 | %systemd_preun %{name}.target |
378 | ||
379 | %postun | |
380 | %systemd_reload | |
2a1a6301 | 381 | |
e5fc70df JB |
382 | %post libs -p /sbin/ldconfig |
383 | %postun libs -p /sbin/ldconfig | |
2a1a6301 | 384 | |
4f42482b JB |
385 | %post -n java-cephfs -p /sbin/ldconfig |
386 | %postun -n java-cephfs -p /sbin/ldconfig | |
387 | ||
2a1a6301 JR |
388 | %files |
389 | %defattr(644,root,root,755) | |
9e1f65de | 390 | # COPYING specifies licenses of individual parts |
1b11728e | 391 | %doc AUTHORS COPYING PendingReleaseNotes README.md src/sample.ceph.conf doc/{release-notes,releases}.rst |
2a1a6301 | 392 | %attr(754,root,root) /etc/rc.d/init.d/ceph |
bef2a0ad JK |
393 | %config(noreplace) /etc/sysconfig/ceph |
394 | %dir /etc/systemd/system/ceph.target.wants | |
bbcdc7ce JB |
395 | %{systemdunitdir}/ceph.service |
396 | %{systemdunitdir}/ceph.target | |
bbcdc7ce | 397 | %{systemdunitdir}/ceph-disk@.service |
1b11728e JB |
398 | %{systemdunitdir}/ceph-fuse.target |
399 | %{systemdunitdir}/ceph-fuse@.service | |
bbcdc7ce | 400 | %{systemdunitdir}/ceph-mds.target |
bef2a0ad | 401 | %{systemdunitdir}/ceph-mds@.service |
1b11728e JB |
402 | %{systemdunitdir}/ceph-mgr.target |
403 | %{systemdunitdir}/ceph-mgr@.service | |
bbcdc7ce | 404 | %{systemdunitdir}/ceph-mon.target |
bef2a0ad | 405 | %{systemdunitdir}/ceph-mon@.service |
bbcdc7ce | 406 | %{systemdunitdir}/ceph-osd.target |
bef2a0ad | 407 | %{systemdunitdir}/ceph-osd@.service |
bbcdc7ce JB |
408 | %{systemdunitdir}/ceph-rbd-mirror.target |
409 | %{systemdunitdir}/ceph-rbd-mirror@.service | |
1b11728e | 410 | %{systemdunitdir}/ceph-volume@.service |
bbcdc7ce | 411 | %{systemdunitdir}/rbdmap.service |
bef2a0ad | 412 | %{systemdtmpfilesdir}/ceph.conf |
2a1a6301 JR |
413 | %dir %{_sysconfdir}/ceph |
414 | %attr(755,root,root) %{_bindir}/ceph | |
8c5712e2 | 415 | %attr(755,root,root) %{_bindir}/ceph-authtool |
1b11728e | 416 | %attr(755,root,root) %{_bindir}/ceph-bluestore-tool |
fa260b6c | 417 | %attr(755,root,root) %{_bindir}/ceph-brag |
2a1a6301 | 418 | %attr(755,root,root) %{_bindir}/ceph-clsinfo |
8c5712e2 | 419 | %attr(755,root,root) %{_bindir}/ceph-conf |
d91e5335 | 420 | %attr(755,root,root) %{_bindir}/ceph-crush-location |
60d5543f | 421 | %attr(755,root,root) %{_bindir}/ceph-dencoder |
bbcdc7ce | 422 | %attr(755,root,root) %{_bindir}/ceph-detect-init |
2a1a6301 | 423 | %attr(755,root,root) %{_bindir}/ceph-mds |
1b11728e | 424 | %attr(755,root,root) %{_bindir}/ceph-mgr |
8c5712e2 | 425 | %attr(755,root,root) %{_bindir}/ceph-mon |
7f577810 | 426 | %attr(755,root,root) %{_bindir}/ceph-objectstore-tool |
2a1a6301 | 427 | %attr(755,root,root) %{_bindir}/ceph-osd |
5e39e43e | 428 | %attr(755,root,root) %{_bindir}/ceph-post-file |
2a1a6301 | 429 | %attr(755,root,root) %{_bindir}/ceph-rbdnamer |
4f411dc5 | 430 | %attr(755,root,root) %{_bindir}/ceph-rest-api |
8c5712e2 JB |
431 | %attr(755,root,root) %{_bindir}/ceph-run |
432 | %attr(755,root,root) %{_bindir}/ceph-syn | |
bbcdc7ce | 433 | %attr(755,root,root) %{_bindir}/cephfs-data-scan |
ae4b5127 | 434 | %attr(755,root,root) %{_bindir}/cephfs-journal-tool |
b431df60 | 435 | %attr(755,root,root) %{_bindir}/cephfs-table-tool |
8c5712e2 | 436 | %attr(755,root,root) %{_bindir}/crushtool |
2a1a6301 | 437 | %attr(755,root,root) %{_bindir}/librados-config |
8c5712e2 JB |
438 | %attr(755,root,root) %{_bindir}/monmaptool |
439 | %attr(755,root,root) %{_bindir}/osdmaptool | |
2a1a6301 JR |
440 | %attr(755,root,root) %{_bindir}/rados |
441 | %attr(755,root,root) %{_bindir}/rbd | |
8c5712e2 | 442 | %attr(755,root,root) %{_bindir}/rbd-fuse |
bbcdc7ce JB |
443 | %attr(755,root,root) %{_bindir}/rbd-mirror |
444 | %attr(755,root,root) %{_bindir}/rbd-nbd | |
9a1a508c | 445 | %attr(755,root,root) %{_bindir}/rbd-replay |
7f577810 | 446 | %attr(755,root,root) %{_bindir}/rbd-replay-many |
9a1a508c | 447 | %attr(755,root,root) %{_bindir}/rbd-replay-prep |
bbcdc7ce | 448 | %attr(755,root,root) %{_bindir}/rbdmap |
1b11728e | 449 | %attr(755,root,root) %{_sbindir}/ceph-create-keys |
bbcdc7ce | 450 | %attr(755,root,root) %{_sbindir}/ceph-disk |
1b11728e JB |
451 | %attr(755,root,root) %{_sbindir}/ceph-volume |
452 | %attr(755,root,root) %{_sbindir}/ceph-volume-systemd | |
4f42482b JB |
453 | %attr(755,root,root) /sbin/mount.ceph |
454 | %attr(755,root,root) /sbin/mount.fuse.ceph | |
e3919159 | 455 | %if "%{_libexecdir}" != "%{_libdir}" |
c1965bc2 | 456 | %dir %{_libexecdir}/ceph |
e3919159 | 457 | %endif |
a92d2e05 | 458 | %{_libexecdir}/ceph/ceph_common.sh |
c1965bc2 | 459 | %attr(755,root,root) %{_libexecdir}/ceph/ceph-osd-prestart.sh |
1b11728e | 460 | %{_libdir}/ceph/mgr |
bbcdc7ce | 461 | %dir %{_libdir}/ceph/compressor |
1b11728e | 462 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_lz4.so* |
bbcdc7ce JB |
463 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_snappy.so* |
464 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zlib.so* | |
1b11728e | 465 | %attr(755,root,root) %{_libdir}/ceph/compressor/libceph_zstd.so* |
d65c5c24 JB |
466 | %ifarch %{x8664} |
467 | %dir %{_libdir}/ceph/crypto | |
468 | %attr(755,root,root) %{_libdir}/ceph/crypto/libceph_crypto_isal.so* | |
469 | %endif | |
c408d7b3 | 470 | %dir %{_libdir}/ceph/erasure-code |
58dc957f | 471 | %ifarch %{x8664} |
066d8601 | 472 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_isa.so* |
6fce7056 | 473 | %endif |
c408d7b3 | 474 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure.so* |
0509a77e | 475 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_generic.so* |
bbcdc7ce | 476 | %ifarch %{arm} |
7f577810 JB |
477 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_neon.so* |
478 | %endif | |
479 | %ifarch %{ix86} %{x8664} x32 | |
0509a77e JB |
480 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse3.so* |
481 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_jerasure_sse4.so* | |
7f577810 | 482 | %endif |
9a1a508c | 483 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_lrc.so* |
b431df60 | 484 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec.so* |
bbcdc7ce JB |
485 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_generic.so* |
486 | %ifarch %{ix86} %{x8664} x32 | |
487 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse3.so* | |
1b11728e | 488 | %attr(755,root,root) %{_libdir}/ceph/erasure-code/libec_shec_sse4.so* |
bbcdc7ce | 489 | %endif |
2a1a6301 | 490 | %dir %{_libdir}/rados-classes |
1b11728e JB |
491 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_cephfs.so* |
492 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_hello.so* | |
493 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_journal.so* | |
494 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_kvs.so* | |
495 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_lock.so* | |
496 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_log.so* | |
497 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_lua.so* | |
498 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_numops.so* | |
499 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_rbd.so* | |
500 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_refcount.so* | |
501 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_replica_log.so* | |
502 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_rgw.so* | |
503 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_sdk.so* | |
504 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_statelog.so* | |
505 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_timeindex.so* | |
506 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_user.so* | |
507 | %attr(755,root,root) %{_libdir}/rados-classes/libcls_version.so* | |
5e39e43e | 508 | %{_datadir}/ceph |
2a1a6301 JR |
509 | %config(noreplace) /etc/logrotate.d/ceph |
510 | %config(noreplace) %{_sysconfdir}/bash_completion.d/rados | |
511 | %config(noreplace) %{_sysconfdir}/bash_completion.d/ceph | |
512 | %config(noreplace) %{_sysconfdir}/bash_completion.d/rbd | |
513 | %{_mandir}/man8/ceph.8* | |
514 | %{_mandir}/man8/ceph-authtool.8* | |
1b11728e | 515 | %{_mandir}/man8/ceph-bluestore-tool.8* |
2a1a6301 JR |
516 | %{_mandir}/man8/ceph-clsinfo.8* |
517 | %{_mandir}/man8/ceph-conf.8* | |
63709ae0 | 518 | %{_mandir}/man8/ceph-create-keys.8* |
60d5543f | 519 | %{_mandir}/man8/ceph-dencoder.8* |
7f577810 | 520 | %{_mandir}/man8/ceph-deploy.8* |
bbcdc7ce | 521 | %{_mandir}/man8/ceph-detect-init.8* |
7f577810 | 522 | %{_mandir}/man8/ceph-disk.8* |
2a1a6301 JR |
523 | %{_mandir}/man8/ceph-mds.8* |
524 | %{_mandir}/man8/ceph-mon.8* | |
525 | %{_mandir}/man8/ceph-osd.8* | |
5e39e43e | 526 | %{_mandir}/man8/ceph-post-file.8* |
60d5543f | 527 | %{_mandir}/man8/ceph-rbdnamer.8* |
4f411dc5 | 528 | %{_mandir}/man8/ceph-rest-api.8* |
2a1a6301 JR |
529 | %{_mandir}/man8/ceph-run.8* |
530 | %{_mandir}/man8/ceph-syn.8* | |
1b11728e JB |
531 | %{_mandir}/man8/ceph-volume.8* |
532 | %{_mandir}/man8/ceph-volume-systemd.8* | |
2a1a6301 JR |
533 | %{_mandir}/man8/crushtool.8* |
534 | %{_mandir}/man8/librados-config.8* | |
2a1a6301 JR |
535 | %{_mandir}/man8/monmaptool.8* |
536 | %{_mandir}/man8/mount.ceph.8* | |
537 | %{_mandir}/man8/osdmaptool.8* | |
538 | %{_mandir}/man8/rados.8* | |
2a1a6301 | 539 | %{_mandir}/man8/rbd.8* |
8c5712e2 | 540 | %{_mandir}/man8/rbd-fuse.8* |
bbcdc7ce JB |
541 | %{_mandir}/man8/rbd-mirror.8* |
542 | %{_mandir}/man8/rbd-nbd.8* | |
9a1a508c | 543 | %{_mandir}/man8/rbd-replay.8* |
7f577810 | 544 | %{_mandir}/man8/rbd-replay-many.8* |
9a1a508c | 545 | %{_mandir}/man8/rbd-replay-prep.8* |
bbcdc7ce | 546 | %{_mandir}/man8/rbdmap.8* |
60d5543f | 547 | |
2a1a6301 | 548 | %dir %{_localstatedir}/lib/ceph |
1b11728e JB |
549 | %dir %{_localstatedir}/lib/ceph/bootstrap-mds |
550 | %dir %{_localstatedir}/lib/ceph/bootstrap-mgr | |
551 | %dir %{_localstatedir}/lib/ceph/bootstrap-osd | |
552 | %dir %{_localstatedir}/lib/ceph/bootstrap-rbd | |
553 | %dir %{_localstatedir}/lib/ceph/bootstrap-rgw | |
b6163d67 | 554 | %dir %{_localstatedir}/lib/ceph/mds |
1b11728e | 555 | %dir %{_localstatedir}/lib/ceph/mgr |
b6163d67 JK |
556 | %dir %{_localstatedir}/lib/ceph/mon |
557 | %dir %{_localstatedir}/lib/ceph/osd | |
2a1a6301 JR |
558 | %dir %{_localstatedir}/lib/ceph/tmp |
559 | %dir %{_localstatedir}/log/ceph | |
bef2a0ad | 560 | %dir %{_localstatedir}/run/ceph |
2a1a6301 JR |
561 | |
562 | %files libs | |
563 | %defattr(644,root,root,755) | |
564 | %attr(755,root,root) %{_libdir}/libcephfs.so.*.*.* | |
1b11728e | 565 | %attr(755,root,root) %ghost %{_libdir}/libcephfs.so.2 |
4447516f JB |
566 | %attr(755,root,root) %{_libdir}/libos_tp.so.*.*.* |
567 | %attr(755,root,root) %ghost %{_libdir}/libos_tp.so.1 | |
568 | %attr(755,root,root) %{_libdir}/libosd_tp.so.*.*.* | |
569 | %attr(755,root,root) %ghost %{_libdir}/libosd_tp.so.1 | |
2a1a6301 JR |
570 | %attr(755,root,root) %{_libdir}/librados.so.*.*.* |
571 | %attr(755,root,root) %ghost %{_libdir}/librados.so.2 | |
4447516f JB |
572 | %attr(755,root,root) %{_libdir}/librados_tp.so.*.*.* |
573 | %attr(755,root,root) %ghost %{_libdir}/librados_tp.so.2 | |
548e0d3f JB |
574 | %attr(755,root,root) %{_libdir}/libradosstriper.so.*.*.* |
575 | %attr(755,root,root) %ghost %{_libdir}/libradosstriper.so.1 | |
2a1a6301 JR |
576 | %attr(755,root,root) %{_libdir}/librbd.so.*.*.* |
577 | %attr(755,root,root) %ghost %{_libdir}/librbd.so.1 | |
4447516f JB |
578 | %attr(755,root,root) %{_libdir}/librbd_tp.so.*.*.* |
579 | %attr(755,root,root) %ghost %{_libdir}/librbd_tp.so.1 | |
bbcdc7ce JB |
580 | %attr(755,root,root) %{_libdir}/librgw.so.*.*.* |
581 | %attr(755,root,root) %ghost %{_libdir}/librgw.so.2 | |
5b8dadc9 JB |
582 | %dir %{_libdir}/ceph |
583 | %attr(755,root,root) %{_libdir}/ceph/libceph-common.so.0 | |
2a1a6301 | 584 | |
2a1a6301 JR |
585 | %files devel |
586 | %defattr(644,root,root,755) | |
2a1a6301 | 587 | %attr(755,root,root) %{_libdir}/libcephfs.so |
4447516f JB |
588 | %attr(755,root,root) %{_libdir}/libos_tp.so |
589 | %attr(755,root,root) %{_libdir}/libosd_tp.so | |
2a1a6301 | 590 | %attr(755,root,root) %{_libdir}/librados.so |
4447516f | 591 | %attr(755,root,root) %{_libdir}/librados_tp.so |
548e0d3f | 592 | %attr(755,root,root) %{_libdir}/libradosstriper.so |
2a1a6301 | 593 | %attr(755,root,root) %{_libdir}/librbd.so |
4447516f | 594 | %attr(755,root,root) %{_libdir}/librbd_tp.so |
bbcdc7ce | 595 | %attr(755,root,root) %{_libdir}/librgw.so |
5b8dadc9 | 596 | %attr(755,root,root) %{_libdir}/ceph/libceph-common.so |
e5fc70df JB |
597 | %{_includedir}/cephfs |
598 | %{_includedir}/rados | |
548e0d3f | 599 | %{_includedir}/radosstriper |
e5fc70df | 600 | %{_includedir}/rbd |
2a1a6301 | 601 | |
1b11728e JB |
602 | %files -n python3-ceph |
603 | %defattr(644,root,root,755) | |
604 | %attr(755,root,root) %{py3_sitedir}/cephfs.cpython-*.so | |
605 | %attr(755,root,root) %{py3_sitedir}/rados.cpython-*.so | |
606 | %attr(755,root,root) %{py3_sitedir}/rbd.cpython-*.so | |
607 | %attr(755,root,root) %{py3_sitedir}/rgw.cpython-*.so | |
608 | %{py3_sitedir}/cephfs-2.0.0-py*.egg-info | |
609 | %{py3_sitedir}/rados-2.0.0-py*.egg-info | |
610 | %{py3_sitedir}/rbd-2.0.0-py*.egg-info | |
611 | %{py3_sitedir}/rgw-2.0.0-py*.egg-info | |
612 | %{py3_sitescriptdir}/ceph_argparse.py | |
613 | %{py3_sitescriptdir}/ceph_daemon.py | |
614 | %{py3_sitescriptdir}/ceph_volume_client.py | |
615 | %{py3_sitescriptdir}/__pycache__/ceph_argparse.cpython-*.py[co] | |
616 | %{py3_sitescriptdir}/__pycache__/ceph_daemon.cpython-*.py[co] | |
617 | %{py3_sitescriptdir}/__pycache__/ceph_volume_client.cpython-*.py[co] | |
618 | ||
4f42482b JB |
619 | %if %{with java} |
620 | %files -n java-cephfs | |
621 | %defattr(644,root,root,755) | |
622 | %attr(755,root,root) %{_libdir}/libcephfs_jni.so.*.*.* | |
623 | %attr(755,root,root) %ghost %{_libdir}/libcephfs_jni.so.1 | |
624 | %attr(755,root,root) %{_libdir}/libcephfs_jni.so | |
625 | %{_javadir}/libcephfs.jar | |
626 | %endif | |
627 | ||
e5fc70df JB |
628 | %files fuse |
629 | %defattr(644,root,root,755) | |
e5fc70df JB |
630 | %attr(755,root,root) %{_bindir}/ceph-fuse |
631 | %{_mandir}/man8/ceph-fuse.8* | |
632 | ||
2a1a6301 JR |
633 | %files radosgw |
634 | %defattr(644,root,root,755) | |
635 | %attr(755,root,root) %{_bindir}/radosgw | |
636 | %attr(755,root,root) %{_bindir}/radosgw-admin | |
1b11728e | 637 | %attr(755,root,root) %{_bindir}/radosgw-es |
bbcdc7ce JB |
638 | %attr(755,root,root) %{_bindir}/radosgw-object-expirer |
639 | %attr(755,root,root) %{_bindir}/radosgw-token | |
640 | %{systemdunitdir}/ceph-radosgw.target | |
641 | %{systemdunitdir}/ceph-radosgw@.service | |
2a1a6301 | 642 | %{_sysconfdir}/bash_completion.d/radosgw-admin |
1b11728e JB |
643 | %dir %{_localstatedir}/lib/ceph/radosgw |
644 | %{_mandir}/man8/radosgw.8* | |
645 | %{_mandir}/man8/radosgw-admin.8* | |
2a1a6301 | 646 | |
245cb856 | 647 | %files resource-agents |
8029515d JB |
648 | %defattr(644,root,root,755) |
649 | %dir %{_prefix}/lib/ocf/resource.d/ceph | |
8029515d | 650 | %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/ceph/rbd |
79dc5cad | 651 | |
9911b50d JP |
652 | %if %{with test} |
653 | %files test | |
654 | %defattr(644,root,root,755) | |
655 | %attr(755,root,root) %{_bindir}/ceph-client-debug | |
656 | %attr(755,root,root) %{_bindir}/ceph-coverage | |
657 | %attr(755,root,root) %{_bindir}/ceph-debugpack | |
658 | %attr(755,root,root) %{_bindir}/ceph-kvstore-tool | |
659 | %attr(755,root,root) %{_bindir}/ceph-monstore-tool | |
660 | %attr(755,root,root) %{_bindir}/ceph-osdomap-tool | |
661 | %attr(755,root,root) %{_bindir}/ceph_bench_log | |
662 | %attr(755,root,root) %{_bindir}/ceph_erasure_code | |
663 | %attr(755,root,root) %{_bindir}/ceph_erasure_code_benchmark | |
664 | %attr(755,root,root) %{_bindir}/ceph_kvstorebench | |
665 | %attr(755,root,root) %{_bindir}/ceph_multi_stress_watch | |
666 | %attr(755,root,root) %{_bindir}/ceph_objectstore_bench | |
667 | %attr(755,root,root) %{_bindir}/ceph_omapbench | |
668 | %attr(755,root,root) %{_bindir}/ceph_perf_local | |
669 | %attr(755,root,root) %{_bindir}/ceph_perf_msgr_client | |
670 | %attr(755,root,root) %{_bindir}/ceph_perf_msgr_server | |
671 | %attr(755,root,root) %{_bindir}/ceph_perf_objectstore | |
672 | %attr(755,root,root) %{_bindir}/ceph_psim | |
673 | %attr(755,root,root) %{_bindir}/ceph_radosacl | |
674 | %attr(755,root,root) %{_bindir}/ceph_rgw_jsonparser | |
675 | %attr(755,root,root) %{_bindir}/ceph_rgw_multiparser | |
676 | %attr(755,root,root) %{_bindir}/ceph_scratchtool | |
677 | %attr(755,root,root) %{_bindir}/ceph_scratchtoolpp | |
678 | %attr(755,root,root) %{_bindir}/ceph_smalliobench | |
679 | %attr(755,root,root) %{_bindir}/ceph_smalliobenchdumb | |
680 | %attr(755,root,root) %{_bindir}/ceph_smalliobenchfs | |
681 | %attr(755,root,root) %{_bindir}/ceph_smalliobenchrbd | |
682 | %attr(755,root,root) %{_bindir}/ceph_test_* | |
683 | %attr(755,root,root) %{_bindir}/ceph_tpbench | |
684 | %attr(755,root,root) %{_bindir}/ceph_xattr_bench | |
685 | %attr(755,root,root) %{_libdir}/ceph/ceph-monstore-update-crush.sh | |
686 | %{_mandir}/man8/ceph-debugpack.8* | |
687 | %{_mandir}/man8/ceph-kvstore-tool.8* | |
688 | %endif | |
689 | ||
79dc5cad JB |
690 | %if %{with fio} |
691 | %files -n fio-ceph-objectstore | |
692 | %defattr(644,root,root,755) | |
693 | %doc src/test/fio/{README.md,ceph-*.conf,ceph-*.fio} | |
694 | %attr(755,root,root) %{_libdir}/libfio_ceph_objectstore.so | |
695 | %endif |