2 # - package ganesha specific files? (no ganesha in PLD yet)
3 # - Find pidfiles killproc --pidfile ${PIDFILE} -TERM instead of kill -TERM ${PID}
4 # - Check transport-ibverbs package and ibverbs bcond
5 # - Add passing options from /etc/sysconfig/glusterfsd to glusterfsd
6 # - package /etc/glusterfs/glusterfs-logrotate as logrotate config
9 %bcond_without ibverbs # ib-verbs transport
10 %bcond_without systemtap # systemtap/dtrace support
12 Summary: Clustered File Storage that can scale to peta bytes
13 Summary(pl.UTF-8): Klastrowy system przechowywania plików skalujący się do petabajtów
17 License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs)
18 Group: Applications/System
19 Source0: http://download.gluster.org/pub/gluster/glusterfs/3.7/LATEST/glusterfs-%{version}.tar.gz
20 # Source0-md5: 174ebbca909e77f933cc6d58d02efa94
21 Source1: glusterfsd.init
22 Patch0: %{name}-link.patch
23 Patch1: %{name}-noquiet.patch
24 Patch2: %{name}-python.patch
25 URL: http://www.gluster.org/
26 BuildRequires: acl-devel
27 BuildRequires: autoconf >= 2.50
28 BuildRequires: automake
30 # cmocka >= 1.0.1 for unittest
31 BuildRequires: device-mapper-devel >= 2.02.79
33 BuildRequires: glib2-devel >= 2.0
34 BuildRequires: libaio-devel
35 BuildRequires: libfuse-devel >= 2.6
36 %{?with_ibverbs:BuildRequires: libibverbs-devel >= 1.0.4}
37 %{?with_ibverbs:BuildRequires: librdmacm-devel >= 1.0.4}
38 BuildRequires: libtool
39 BuildRequires: libuuid-devel
40 BuildRequires: libxml2-devel >= 1:2.6.19
41 BuildRequires: openssl-devel
42 BuildRequires: pkgconfig
43 BuildRequires: python >= 1:2.4
44 BuildRequires: python-devel >= 1:2.4
45 BuildRequires: readline-devel
46 BuildRequires: rpm-pythonprov
47 BuildRequires: rpmbuild(macros) >= 1.228
48 BuildRequires: sqlite3-devel >= 3
49 %{?with_systemtap:BuildRequires: systemtap-sdt-devel}
50 BuildRequires: userspace-rcu-devel >= 0.8
51 BuildRequires: zlib-devel >= 1.2.0
52 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55 GlusterFS is a clustered file-system capable of scaling to several
56 peta-bytes. It aggregates various storage bricks over Infiniband RDMA
57 or TCP/IP interconnect into one large parallel network file system.
58 GlusterFS is one of the most sophisticated file system in terms of
59 features and extensibility. It borrows a powerful concept called
60 Translators from GNU Hurd kernel. Much of the code in GlusterFS is in
61 userspace and easily manageable.
63 %description -l pl.UTF-8
64 GlusterFS to klastrowy system plików skalujący się do petabajtów.
65 Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w
66 jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z
67 najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i
68 rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra
69 GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i
70 jest łatwo zarządzalna.
73 Summary: GlusterFS common files including Translators
74 Summary(pl.UTF-8): Wspólne pliki GlusterFS-a, w tym translatory
76 Requires: libxml2 >= 1:2.6.19
77 Requires: zlib >= 1.2.0
80 GlusterFS is a clustered file-system capable of scaling to several
81 peta-bytes. It aggregates various storage bricks over Infiniband RDMA
82 or TCP/IP interconnect into one large parallel network file system.
83 GlusterFS is one of the most sophisticated file system in terms of
84 features and extensibility. It borrows a powerful concept called
85 Translators from GNU Hurd kernel. Much of the code in GlusterFS is in
86 userspace and easily manageable.
88 This package includes libglusterfs and glusterfs translator modules
89 common to both GlusterFS server and client framework.
91 %description common -l pl.UTF-8
92 GlusterFS to klastrowy system plików skalujący się do petabajtów.
93 Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w
94 jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z
95 najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i
96 rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra
97 GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i
98 jest łatwo zarządzalna.
100 Ten pakiet zawiera libglusterfs i moduły translatorów glusterfs
101 wspólne dla klienta jak i serwera GlusterFS-a.
104 Summary: GlusterFS libraries
105 Summary(pl.UTF-8): Biblioteki GlusterFS-a
107 Conflicts: glusterfs-common < 3.4.0
112 %description libs -l pl.UTF-8
113 Biblioteki GlusterFS-a.
116 Summary: GlusterFS development files
117 Summary(pl.UTF-8): Pliki programistyczne GlusterFS-a
118 Group: Development/Libraries
119 Requires: %{name}-libs = %{version}-%{release}
122 Requires: openssl-devel
123 Obsoletes: glusterfs-static
126 This package provides the development files for GlusterFS library.
128 %description devel -l pl.UTF-8
129 Ten pakiet udostępnia pliki programistyczne biblioteki GlusterFS-a.
131 %package -n python-gluster
132 Summary: Python interface to GlusterFS libraries
133 Summary(pl.UTF-8): Interfejs Pythona do bibliotek GlusterFS
134 Group: Libraries/Python
135 Requires: %{name}-libs = %{version}-%{release}
137 %description -n python-gluster
138 Python interface to GlusterFS libraries.
140 %description -n python-gluster -l pl.UTF-8
141 Interfejs Pythona do bibliotek GlusterFS.
143 %package transport-ibverbs
144 Summary: InfiniBand "verbs" transport plugins for GlusterFS
145 Summary(pl.UTF-8): Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a
147 Requires: %{name}-common = %{version}-%{release}
148 Requires: libibverbs >= 1.0.4
150 %description transport-ibverbs
151 InfiniBand "verbs" transport plugins for GlusterFS.
153 %description transport-ibverbs -l pl.UTF-8
154 Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a.
157 Summary: GlusterFS Server
158 Summary(pl.UTF-8): Serwer GlusterFS-a
160 Requires: %{name}-client = %{version}-%{release}
161 Requires: %{name}-common = %{version}-%{release}
162 Requires(post,preun): /sbin/chkconfig
166 This package provides the glusterfs server daemon.
168 %description server -l pl.UTF-8
169 Ten pakiet zawiera część serwerową GlusterFS-a.
172 Summary: GlusterFS Client
173 Summary(pl.UTF-8): Klient GlusterFS
174 Group: Applications/System
175 Requires: %{name}-common = %{version}-%{release}
176 Requires: libfuse >= 2.6
179 This package provides the FUSE based GlusterFS client.
181 %description client -l pl.UTF-8
182 Ten pakiet udostępnia opartego na FUSE klienta GlusterFS-a.
184 %package resource-agents
185 Summary: OCF Resource Agents for GlusterFS processes
186 Summary(pl.UTF-8): Agenci OCF do monitorowania procesów GlusterFS-a
187 Group: Applications/System
188 Requires: %{name}-server = %{version}-%{release}
189 Requires: resource-agents
191 %description resource-agents
192 OCF Resource Agents for GlusterFS processes.
194 %description resource-agents -l pl.UTF-8
195 Agenci OCF do monitorowania procesów GlusterFS-a.
197 %package -n emacs-glusterfs-mode
198 Summary: Emacs mode to edit GlusterFS configuration
199 Summary(pl.UTF-8): Tryb Emacsa do edycji konfiguracji GlusterFS-a
200 Group: Applications/Editors
201 Requires: %{name} = %{version}-%{release}
202 Requires: emacs-common
204 %description -n emacs-glusterfs-mode
205 Emacs mode to edit GlusterFS configuration.
207 %description -n emacs-glusterfs-mode -l pl.UTF-8
208 Tryb Emacsa do edycji konfiguracji GlusterFS-a.
210 %package -n vim-syntax-glusterfs
211 Summary: Vim syntax file to edit GlusterFS configuration
212 Summary(pl.UTF-8): Plik składni Vima do edycji konfiguracji GlusterFS-a
213 Group: Applications/Editors
214 Requires: %{name} = %{version}-%{release}
215 Requires: vim-rt >= 4:7.2.170
217 %description -n vim-syntax-glusterfs
218 Vim syntax file to edit GlusterFS configuration.
220 %description -n vim-syntax-glusterfs -l pl.UTF-8
221 Plik składni Vima do edycji konfiguracji GlusterFS-a.
236 --disable-silent-rules \
237 --enable-fusermount \
238 %{!?with_ibverbs:--disable-ibverbs} \
239 --enable-systemtap%{!?with_systemtap:=no} \
240 --with-initdir=/etc/rc.d/init.d
245 rm -rf $RPM_BUILD_ROOT
246 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d
248 %{__make} -j1 install \
249 DESTDIR=$RPM_BUILD_ROOT
251 # No idea why installs elsewhere than later expects to be
252 %{__mv} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol
254 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/glusterfsd
255 install -d $RPM_BUILD_ROOT%{systemdtmpfilesdir}
256 cat >>$RPM_BUILD_ROOT%{systemdtmpfilesdir}/gluster.conf <<EOF
257 d /var/run/gluster 0755 root root -
260 install -d $RPM_BUILD_ROOT%{_datadir}/{emacs/site-lisp,vim/syntax}
261 %{__mv} $RPM_BUILD_ROOT%{_docdir}/glusterfs/glusterfs.vim $RPM_BUILD_ROOT%{_datadir}/vim/syntax
262 %{__mv} $RPM_BUILD_ROOT%{_docdir}/glusterfs/glusterfs-mode.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp
264 %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*.la
265 %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*.la
266 %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*/*.la
268 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/glusterfs/benchmarking
269 %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/python/syncdaemon/README.md
270 # example, installed as /var/lib/glusterd/groups/virt
271 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/glusterfs/group-virt.example
276 rm -rf $RPM_BUILD_ROOT
278 %post libs -p /sbin/ldconfig
279 %postun libs -p /sbin/ldconfig
282 %defattr(644,root,root,755)
283 %doc ChangeLog NEWS README.md THANKS
284 %dir %{_sysconfdir}/%{name}
285 %attr(755,root,root) %{_bindir}/glusterfind
286 %attr(755,root,root) %{_sbindir}/glfsheal
287 # NOTE: glusterfs is link to glusterfsd and is needed by client mount
288 %attr(755,root,root) %{_sbindir}/glusterfs
289 %attr(755,root,root) %{_sbindir}/glusterfsd
291 #%attr(755,root,root) %{_libdir}/ganesha/create-export-ganesha.sh
292 #%attr(755,root,root) %{_libdir}/ganesha/dbus-send.sh
293 #%attr(755,root,root) %{_libdir}/ganesha/ganesha-ha.sh
294 #%attr(755,root,root) %{_libdir}/ganesha/generate-epoch.py
296 %dir %{_libdir}/glusterfs
298 %dir %{_libdir}/glusterfs/%{version}
299 %dir %{_libdir}/glusterfs/%{version}/auth
300 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/addr.so
301 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/login.so
303 %dir %{_libdir}/glusterfs/%{version}/rpc-transport
304 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/socket.so
306 %dir %{_libdir}/glusterfs/%{version}/xlator
307 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/meta.so
308 %dir %{_libdir}/glusterfs/%{version}/xlator/cluster
309 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/cluster/*.so
310 %dir %{_libdir}/glusterfs/%{version}/xlator/debug
311 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/debug/*.so
312 %dir %{_libdir}/glusterfs/%{version}/xlator/encryption
313 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/encryption/*.so*
314 %dir %{_libdir}/glusterfs/%{version}/xlator/features
315 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/features/*.so*
316 %dir %{_libdir}/glusterfs/%{version}/xlator/features/glupy
317 %{_libdir}/glusterfs/%{version}/xlator/features/glupy/*.py*
318 %dir %{_libdir}/glusterfs/%{version}/xlator/mgmt
319 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mgmt/glusterd.so
320 %dir %{_libdir}/glusterfs/%{version}/xlator/mount
321 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/api.so
322 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/fuse.so
323 %dir %{_libdir}/glusterfs/%{version}/xlator/nfs
324 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/nfs/server.so
325 %dir %{_libdir}/glusterfs/%{version}/xlator/performance
326 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/performance/*.so*
327 %dir %{_libdir}/glusterfs/%{version}/xlator/protocol
328 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/protocol/*.so
329 %dir %{_libdir}/glusterfs/%{version}/xlator/storage
330 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/storage/*.so
331 %dir %{_libdir}/glusterfs/%{version}/xlator/system
332 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/system/posix-acl.so
333 %dir %{_libdir}/glusterfs/%{version}/xlator/testing
334 %dir %{_libdir}/glusterfs/%{version}/xlator/testing/features
335 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/features/*.so
336 %dir %{_libdir}/glusterfs/%{version}/xlator/testing/performance
337 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/performance/*.so
339 %attr(755,root,root) %{_libdir}/glusterfs/gsyncd
340 %attr(755,root,root) %{_libdir}/glusterfs/gverify.sh
341 %attr(755,root,root) %{_libdir}/glusterfs/peer_add_secret_pub
342 %attr(755,root,root) %{_libdir}/glusterfs/peer_gsec_create
344 %dir %{_libdir}/glusterfs/gfind_missing_files
345 %attr(755,root,root) %{_libdir}/glusterfs/gfind_missing_files/*
347 %{_libdir}/glusterfs/glusterfind
349 %dir %{_libdir}/glusterfs/python
350 %dir %{_libdir}/glusterfs/python/syncdaemon
351 # gsyncd.py is a script, the rest probably don't require *.py
352 %{_libdir}/glusterfs/python/syncdaemon/*.py*
354 %attr(755,root,root) %{_libdir}/glusterfs/peer_mountbroker
355 %attr(755,root,root) %{_libdir}/glusterfs/set_geo_rep_pem_keys.sh
357 %dir %{_datadir}/glusterfs
358 %dir %{_datadir}/glusterfs/scripts
359 %attr(755,root,root) %{_datadir}/glusterfs/scripts/generate-gfid-file.sh
360 %attr(755,root,root) %{_datadir}/glusterfs/scripts/get-gfid.sh
361 %attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-sync-gfid
362 %attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-upgrade.sh
363 %attr(755,root,root) %{_datadir}/glusterfs/scripts/post-upgrade-script-for-quota.sh
364 %attr(755,root,root) %{_datadir}/glusterfs/scripts/pre-upgrade-script-for-quota.sh
365 %attr(755,root,root) %{_datadir}/glusterfs/scripts/schedule_georep.py
366 %attr(755,root,root) %{_datadir}/glusterfs/scripts/slave-upgrade.sh
367 %attr(755,root,root) %{_datadir}/glusterfs/scripts/stop-all-gluster-processes.sh
369 %{_mandir}/man8/glusterfs.8*
370 %{_mandir}/man8/glusterfsd.8*
371 %dir %{_var}/log/glusterfs
374 %defattr(644,root,root,755)
375 %attr(755,root,root) %{_libdir}/libgfapi.so.*.*.*
376 %attr(755,root,root) %ghost %{_libdir}/libgfapi.so.0
377 %attr(755,root,root) %{_libdir}/libgfchangelog.so.*.*.*
378 %attr(755,root,root) %ghost %{_libdir}/libgfchangelog.so.0
379 %attr(755,root,root) %{_libdir}/libgfdb.so.*.*.*
380 %attr(755,root,root) %ghost %{_libdir}/libgfdb.so.0
381 %attr(755,root,root) %{_libdir}/libgfrpc.so.*.*.*
382 %attr(755,root,root) %ghost %{_libdir}/libgfrpc.so.0
383 %attr(755,root,root) %{_libdir}/libgfxdr.so.*.*.*
384 %attr(755,root,root) %ghost %{_libdir}/libgfxdr.so.0
385 %attr(755,root,root) %{_libdir}/libglusterfs.so.*.*.*
386 %attr(755,root,root) %ghost %{_libdir}/libglusterfs.so.0
389 %defattr(644,root,root,755)
390 %attr(755,root,root) %{_libdir}/libgfapi.so
391 %attr(755,root,root) %{_libdir}/libgfchangelog.so
392 %attr(755,root,root) %{_libdir}/libgfdb.so
393 %attr(755,root,root) %{_libdir}/libgfrpc.so
394 %attr(755,root,root) %{_libdir}/libgfxdr.so
395 %attr(755,root,root) %{_libdir}/libglusterfs.so
396 %{_libdir}/libgfapi.la
397 %{_libdir}/libgfchangelog.la
398 %{_libdir}/libgfdb.la
399 %{_libdir}/libgfrpc.la
400 %{_libdir}/libgfxdr.la
401 %{_libdir}/libglusterfs.la
402 %dir %{_includedir}/glusterfs
403 %{_includedir}/glusterfs/api
404 %{_includedir}/glusterfs/gfchangelog
405 %{_includedir}/glusterfs/gfdb
406 %{_pkgconfigdir}/glusterfs-api.pc
407 %{_pkgconfigdir}/libgfchangelog.pc
408 %{_pkgconfigdir}/libgfdb.pc
410 %files -n python-gluster
411 %defattr(644,root,root,755)
412 %dir %{py_sitescriptdir}/gluster
413 %{py_sitescriptdir}/gluster/*.py[co]
414 %{py_sitescriptdir}/gluster/glupy
415 # created only when using py_build/py_install in xlators/features/glupy/src
416 #%{py_sitescriptdir}/glusterfs_glupy-%{version}-py*.egg-info
419 %files transport-ibverbs
420 %defattr(644,root,root,755)
421 %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/rdma.so
425 %defattr(644,root,root,755)
426 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/glusterfsd.vol
427 %attr(754,root,root) /etc/rc.d/init.d/glusterfsd
428 %attr(755,root,root) %{_sbindir}/gcron.py
429 %attr(755,root,root) %{_sbindir}/gfind_missing_files
430 %attr(755,root,root) %{_sbindir}/glusterd
431 %attr(755,root,root) %{_sbindir}/snap_scheduler.py
432 %{systemdtmpfilesdir}/gluster.conf
433 %{_mandir}/man8/glusterd.8*
434 %dir %{_var}/lib/glusterd
435 %dir %{_var}/lib/glusterd/groups
436 %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/groups/virt
437 %dir %{_var}/lib/glusterd/hooks
438 %dir %{_var}/lib/glusterd/hooks/1
439 %dir %{_var}/lib/glusterd/hooks/1/add-brick
440 %dir %{_var}/lib/glusterd/hooks/1/add-brick/post
441 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/add-brick/post/disabled-quota-root-xattr-heal.sh
442 %dir %{_var}/lib/glusterd/hooks/1/add-brick/pre
443 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/add-brick/pre/S28Quota-enable-root-xattr-heal.sh
444 %dir %{_var}/lib/glusterd/hooks/1/delete
445 %dir %{_var}/lib/glusterd/hooks/1/delete/post
446 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/delete/post/S57glusterfind-delete-post.py
447 %dir %{_var}/lib/glusterd/hooks/1/gsync-create
448 %dir %{_var}/lib/glusterd/hooks/1/gsync-create/post
449 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/gsync-create/post/S56glusterd-geo-rep-create-post.sh
450 %dir %{_var}/lib/glusterd/hooks/1/reset
451 %dir %{_var}/lib/glusterd/hooks/1/reset/post
452 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/reset/post/S31ganesha-reset.sh
453 %dir %{_var}/lib/glusterd/hooks/1/set
454 %dir %{_var}/lib/glusterd/hooks/1/set/post
455 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/set/post/S30samba-set.sh
456 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/set/post/S32gluster_enable_shared_storage.sh
457 %dir %{_var}/lib/glusterd/hooks/1/start
458 %dir %{_var}/lib/glusterd/hooks/1/start/post
459 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/start/post/S29CTDBsetup.sh
460 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/start/post/S30samba-start.sh
461 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/start/post/S31ganesha-start.sh
462 %dir %{_var}/lib/glusterd/hooks/1/stop
463 %dir %{_var}/lib/glusterd/hooks/1/stop/pre
464 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/stop/pre/S29CTDB-teardown.sh
465 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/stop/pre/S30samba-stop.sh
466 %dir %{_var}/run/gluster
469 %defattr(644,root,root,755)
470 %attr(755,root,root) %{_bindir}/fusermount-glusterfs
471 %attr(755,root,root) /sbin/mount.glusterfs
472 %attr(755,root,root) %{_sbindir}/gluster
473 %{_mandir}/man8/gluster.8*
474 %{_mandir}/man8/mount.glusterfs.8*
476 %files resource-agents
477 %defattr(644,root,root,755)
478 %dir %{_prefix}/lib/ocf/resource.d/glusterfs
479 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/glusterd
480 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/volume
481 #%{_prefix}/lib/ocf/resource.d/heartbeat/ganesha_grace
482 #%{_prefix}/lib/ocf/resource.d/heartbeat/ganesha_mon
483 #%{_prefix}/lib/ocf/resource.d/heartbeat/ganesha_nfsd
485 %files -n emacs-glusterfs-mode
486 %defattr(644,root,root,755)
487 %{_datadir}/emacs/site-lisp/glusterfs-mode.el
489 %files -n vim-syntax-glusterfs
490 %defattr(644,root,root,755)
491 %{_datadir}/vim/syntax/glusterfs.vim