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