X-Git-Url: https://git.tld-linux.org/?a=blobdiff_plain;f=glusterfs.spec;h=514bdd35401d117351232dbe8f834f662f950ff4;hb=66b0f3bb9ebbd3310fbf25e6e229f96876388ac2;hp=67deccd35ea680b2689b082a08c0c2d835db910c;hpb=95cb9db34b17be6463e59fa57fe5776d258c60a9;p=packages%2Fglusterfs.git diff --git a/glusterfs.spec b/glusterfs.spec index 67deccd..514bdd3 100644 --- a/glusterfs.spec +++ b/glusterfs.spec @@ -3,46 +3,54 @@ # - Check transport-ibverbs package and ibverbs bcond # - Add passing options from /etc/sysconfig/glusterfsd to glusterfsd # - package /etc/glusterfs/glusterfs-logrotate as logrotate config -# - package in proper emacs/vim locations: -# /usr/share/doc/glusterfs/glusterfs-mode.el -# /usr/share/doc/glusterfs/glusterfs.vim +# - Fix/provide working systemd service files. +# As for 3.7.11, package provided seems be non-working. +# - configuration for firewalld? (--enable-firewalld, but checks for firewalld executable) # # Conditional build: %bcond_without ibverbs # ib-verbs transport %bcond_without systemtap # systemtap/dtrace support +%bcond_without system_fuse # system fusermount # Summary: Clustered File Storage that can scale to peta bytes Summary(pl.UTF-8): Klastrowy system przechowywania plików skalujący się do petabajtów Name: glusterfs -Version: 3.5.5 -Release: 1 +Version: 3.12.9 +Release: 3 License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs) Group: Applications/System -Source0: http://download.gluster.org/pub/gluster/glusterfs/3.5/%{version}/glusterfs-%{version}.tar.gz -# Source0-md5: ed339ec1b8b0cdf62f4eef36e415778a +Source0: https://download.gluster.org/pub/gluster/glusterfs/3.12/%{version}/glusterfs-%{version}.tar.gz +# Source0-md5: 18f639e98e4c130365b48576cbf01aae Source1: glusterfsd.init -Patch0: %{name}-link.patch -Patch1: %{name}-noquiet.patch -Patch2: no-sysctl-on-linux.patch -URL: http://www.gluster.org/ +Patch0: %{name}-noquiet.patch +Patch1: %{name}-python.patch +Patch3: interpreters.patch +URL: https://www.gluster.org/ +BuildRequires: acl-devel BuildRequires: autoconf >= 2.50 BuildRequires: automake BuildRequires: bison +#BuildRequires: cmocka-devel >= 1.0.1 for unittest +# for bd-xlator BuildRequires: device-mapper-devel >= 2.02.79 BuildRequires: flex -BuildRequires: glib2-devel >= 2.0 BuildRequires: libaio-devel -BuildRequires: libfuse-devel >= 2.6 %{?with_ibverbs:BuildRequires: libibverbs-devel >= 1.0.4} +%{?with_ibverbs:BuildRequires: librdmacm-devel >= 1.0.15} BuildRequires: libtool +BuildRequires: libuuid-devel BuildRequires: libxml2-devel >= 1:2.6.19 BuildRequires: openssl-devel BuildRequires: pkgconfig BuildRequires: python >= 1:2.4 +BuildRequires: python-devel >= 1:2.4 BuildRequires: readline-devel BuildRequires: rpm-pythonprov BuildRequires: rpmbuild(macros) >= 1.228 +BuildRequires: sed >= 4.0 +BuildRequires: sqlite3-devel >= 3 %{?with_systemtap:BuildRequires: systemtap-sdt-devel} +BuildRequires: userspace-rcu-devel >= 0.8 BuildRequires: zlib-devel >= 1.2.0 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -141,6 +149,7 @@ Summary(pl.UTF-8): Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a Group: Libraries Requires: %{name}-common = %{version}-%{release} Requires: libibverbs >= 1.0.4 +Requires: librdmacm >= 1.0.15 %description transport-ibverbs InfiniBand "verbs" transport plugins for GlusterFS. @@ -156,6 +165,7 @@ Requires: %{name}-client = %{version}-%{release} Requires: %{name}-common = %{version}-%{release} Requires(post,preun): /sbin/chkconfig Requires: rc-scripts +Requires: python-modules %description server This package provides the glusterfs server daemon. @@ -168,7 +178,7 @@ Summary: GlusterFS Client Summary(pl.UTF-8): Klient GlusterFS Group: Applications/System Requires: %{name}-common = %{version}-%{release} -Requires: libfuse >= 2.6 +%{?with_system_fuse:Requires: libfuse >= 2.6} %description client This package provides the FUSE based GlusterFS client. @@ -189,11 +199,67 @@ OCF Resource Agents for GlusterFS processes. %description resource-agents -l pl.UTF-8 Agenci OCF do monitorowania procesów GlusterFS-a. +%package events +Summary: GlusterFS Events +Summary(pl.UTF-8): Obsługa zdarzeń dla GlusterFS-a +Group: Applications/File +Requires: %{name}-server = %{version}-%{release} +Requires: python-gluster = %{version}-%{release} +Requires: python-prettytable +Requires: python-requests + +%description events +GlusterFS Events. + +%description events -l pl.UTF-8 +Obsługa zdarzeń dla GlusterFS-a. + +%package geo-replication +Summary: GlusterFS Geo-replication +Summary(pl.UTF-8): Geo-replikacja dla GlusterFS-a +Group: Applications/File +Requires: %{name}-server = %{version}-%{release} +Requires: python-gluster = %{version}-%{release} +Requires: python-prettytable +Requires: rsync + +%description geo-replication +GlusterFS support for geo-replication. + +%description geo-replication -l pl.UTF-8 +Obsługa geo-replikacji dla GlusterFS-a. + +%package -n emacs-glusterfs-mode +Summary: Emacs mode to edit GlusterFS configuration +Summary(pl.UTF-8): Tryb Emacsa do edycji konfiguracji GlusterFS-a +Group: Applications/Editors +Requires: %{name}-common = %{version}-%{release} +Requires: emacs-common + +%description -n emacs-glusterfs-mode +Emacs mode to edit GlusterFS configuration. + +%description -n emacs-glusterfs-mode -l pl.UTF-8 +Tryb Emacsa do edycji konfiguracji GlusterFS-a. + +%package -n vim-syntax-glusterfs +Summary: Vim syntax file to edit GlusterFS configuration +Summary(pl.UTF-8): Plik składni Vima do edycji konfiguracji GlusterFS-a +Group: Applications/Editors +Requires: %{name}-common = %{version}-%{release} +Requires: vim-rt >= 4:7.2.170 + +%description -n vim-syntax-glusterfs +Vim syntax file to edit GlusterFS configuration. + +%description -n vim-syntax-glusterfs -l pl.UTF-8 +Plik składni Vima do edycji konfiguracji GlusterFS-a. + %prep %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 +%patch3 -p1 %build %{__libtoolize} @@ -201,11 +267,9 @@ Agenci OCF do monitorowania procesów GlusterFS-a. %{__autoconf} %{__autoheader} %{__automake} -#%{__python} gen-headers.py -#%{__mv} gf-error-codes.h libglusterfs/src %configure \ + %{?with_system_fuse:--disable-fusermount} \ --disable-silent-rules \ - --enable-fusermount \ %{!?with_ibverbs:--disable-ibverbs} \ --enable-systemtap%{!?with_systemtap:=no} \ --with-initdir=/etc/rc.d/init.d @@ -214,22 +278,28 @@ Agenci OCF do monitorowania procesów GlusterFS-a. %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/lib/glusterd} +install -d $RPM_BUILD_ROOT/etc/rc.d/init.d %{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT # No idea why installs elsewhere than later expects to be -mv $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol +%{__mv} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/glusterfsd +install -d $RPM_BUILD_ROOT%{_datadir}/{emacs/site-lisp,vim/syntax} +%{__mv} $RPM_BUILD_ROOT%{_docdir}/glusterfs/glusterfs.vim $RPM_BUILD_ROOT%{_datadir}/vim/syntax +%{__mv} $RPM_BUILD_ROOT%{_docdir}/glusterfs/glusterfs-mode.el $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp + %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*.la %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*.la %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*/*.la %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/glusterfs/benchmarking -%{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/python/syncdaemon/README.md +%{__rm} $RPM_BUILD_ROOT%{_libexecdir}/glusterfs/python/syncdaemon/README.md +# example, installed as /var/lib/glusterd/groups/virt +%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/glusterfs/group-virt.example %py_postclean @@ -239,14 +309,34 @@ rm -rf $RPM_BUILD_ROOT %post libs -p /sbin/ldconfig %postun libs -p /sbin/ldconfig +%if 0 +# TODO: verify these scripts (see also included glusterfs.spec) +%post server +# note: glusterfsd.init vs glusterd.service +/sbin/chkconfig --add glusterfsd +%service glusterfsd restart +# TODO? +#glusterd --xlator-option *.upgrade=on -N + +%preun server +if [ "$1" = "0" ]; then + %service -q glusterfsd stop + /sbin/chkconfig --del glusterfsd +fi + +%post geo-replication +%service glusterd restart +%endif + %files common %defattr(644,root,root,755) -%doc ChangeLog NEWS README THANKS -%dir %{_sysconfdir}/%{name} +%doc ChangeLog NEWS README.md THANKS +%attr(755,root,root) %{_bindir}/glusterfind %attr(755,root,root) %{_sbindir}/glfsheal # NOTE: glusterfs is link to glusterfsd and is needed by client mount %attr(755,root,root) %{_sbindir}/glusterfs %attr(755,root,root) %{_sbindir}/glusterfsd +%dir %{_sysconfdir}/%{name} %dir %{_libdir}/glusterfs @@ -259,6 +349,7 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/socket.so %dir %{_libdir}/glusterfs/%{version}/xlator +%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/meta.so %dir %{_libdir}/glusterfs/%{version}/xlator/cluster %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/cluster/*.so %dir %{_libdir}/glusterfs/%{version}/xlator/debug @@ -274,8 +365,8 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/glusterfs/%{version}/xlator/mount %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/api.so %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/fuse.so -%dir %{_libdir}/glusterfs/%{version}/xlator/nfs -%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/nfs/server.so +#%dir %{_libdir}/glusterfs/%{version}/xlator/nfs +#%attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/nfs/server.so %dir %{_libdir}/glusterfs/%{version}/xlator/performance %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/performance/*.so* %dir %{_libdir}/glusterfs/%{version}/xlator/protocol @@ -290,25 +381,31 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/glusterfs/%{version}/xlator/testing/performance %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/performance/*.so -%attr(755,root,root) %{_libdir}/glusterfs/gsyncd -%attr(755,root,root) %{_libdir}/glusterfs/gverify.sh -%attr(755,root,root) %{_libdir}/glusterfs/peer_add_secret_pub -%attr(755,root,root) %{_libdir}/glusterfs/peer_gsec_create - -%dir %{_libdir}/glusterfs/python -%dir %{_libdir}/glusterfs/python/syncdaemon -# gsyncd.py is a script, the rest probably don't require *.py -%{_libdir}/glusterfs/python/syncdaemon/*.py* +%if "%{_libexecdir}" != "%{_libdir}" +%dir %{_libexecdir}/glusterfs +%endif +%attr(755,root,root) %{_libexecdir}/glusterfs/peer_add_secret_pub + +%dir %{_libexecdir}/glusterfs/glusterfind +%attr(755,root,root) %{_libexecdir}/glusterfs/glusterfind/S57glusterfind-delete-post.py +%attr(755,root,root) %{_libexecdir}/glusterfs/glusterfind/brickfind.py +%attr(755,root,root) %{_libexecdir}/glusterfs/glusterfind/changelog.py +%attr(755,root,root) %{_libexecdir}/glusterfs/glusterfind/nodeagent.py +%{_libexecdir}/glusterfs/glusterfind/__init__.py* +%{_libexecdir}/glusterfs/glusterfind/changelogdata.py* +%{_libexecdir}/glusterfs/glusterfind/conf.py* +%{_libexecdir}/glusterfs/glusterfind/libgfchangelog.py* +%{_libexecdir}/glusterfs/glusterfind/main.py* +%{_libexecdir}/glusterfs/glusterfind/utils.py* +%{_libexecdir}/glusterfs/glusterfind/tool.conf + +%dir %{_libexecdir}/glusterfs/python %dir %{_datadir}/glusterfs %dir %{_datadir}/glusterfs/scripts -%attr(755,root,root) %{_datadir}/glusterfs/scripts/generate-gfid-file.sh -%attr(755,root,root) %{_datadir}/glusterfs/scripts/get-gfid.sh -%attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-sync-gfid -%attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-upgrade.sh %attr(755,root,root) %{_datadir}/glusterfs/scripts/post-upgrade-script-for-quota.sh %attr(755,root,root) %{_datadir}/glusterfs/scripts/pre-upgrade-script-for-quota.sh -%attr(755,root,root) %{_datadir}/glusterfs/scripts/slave-upgrade.sh +%attr(755,root,root) %{_datadir}/glusterfs/scripts/stop-all-gluster-processes.sh %{_mandir}/man8/glusterfs.8* %{_mandir}/man8/glusterfsd.8* @@ -320,6 +417,8 @@ rm -rf $RPM_BUILD_ROOT %attr(755,root,root) %ghost %{_libdir}/libgfapi.so.0 %attr(755,root,root) %{_libdir}/libgfchangelog.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libgfchangelog.so.0 +%attr(755,root,root) %{_libdir}/libgfdb.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgfdb.so.0 %attr(755,root,root) %{_libdir}/libgfrpc.so.*.*.* %attr(755,root,root) %ghost %{_libdir}/libgfrpc.so.0 %attr(755,root,root) %{_libdir}/libgfxdr.so.*.*.* @@ -331,24 +430,35 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libgfapi.so %attr(755,root,root) %{_libdir}/libgfchangelog.so +%attr(755,root,root) %{_libdir}/libgfdb.so %attr(755,root,root) %{_libdir}/libgfrpc.so %attr(755,root,root) %{_libdir}/libgfxdr.so %attr(755,root,root) %{_libdir}/libglusterfs.so %{_libdir}/libgfapi.la %{_libdir}/libgfchangelog.la +%{_libdir}/libgfdb.la %{_libdir}/libgfrpc.la %{_libdir}/libgfxdr.la %{_libdir}/libglusterfs.la %dir %{_includedir}/glusterfs %{_includedir}/glusterfs/api %{_includedir}/glusterfs/gfchangelog +%{_includedir}/glusterfs/gfdb +%{_includedir}/glusterfs/rpc +%{_includedir}/glusterfs/server +%{_includedir}/glusterfs/*.h %{_pkgconfigdir}/glusterfs-api.pc %{_pkgconfigdir}/libgfchangelog.pc +%{_pkgconfigdir}/libgfdb.pc %files -n python-gluster %defattr(644,root,root,755) %dir %{py_sitescriptdir}/gluster %{py_sitescriptdir}/gluster/*.py[co] +%{py_sitescriptdir}/gluster/cliutils +%{py_sitescriptdir}/gluster/glupy +# created only when using py_build/py_install in xlators/features/glupy/src +#%{py_sitescriptdir}/glusterfs_glupy-%{version}-py*.egg-info %if %{with ibverbs} %files transport-ibverbs @@ -359,15 +469,57 @@ rm -rf $RPM_BUILD_ROOT %files server %defattr(644,root,root,755) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/glusterfsd.vol +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/group-gluster-block +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/group-metadata-cache +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/group-nl-cache %attr(754,root,root) /etc/rc.d/init.d/glusterfsd +%attr(755,root,root) %{_sbindir}/conf.py +%attr(755,root,root) %{_sbindir}/gcron.py +%attr(755,root,root) %{_sbindir}/gf_attach +%attr(755,root,root) %{_sbindir}/gluster-setgfid2path %attr(755,root,root) %{_sbindir}/glusterd +%attr(755,root,root) %{_sbindir}/snap_scheduler.py + +%{_mandir}/man8/gluster-setgfid2path.8* %{_mandir}/man8/glusterd.8* %dir %{_var}/lib/glusterd +%dir %{_var}/lib/glusterd/groups +%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/groups/gluster-block +%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/groups/metadata-cache +%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/groups/nl-cache +%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/groups/virt +%dir %{_var}/lib/glusterd/hooks +%dir %{_var}/lib/glusterd/hooks/1 +%dir %{_var}/lib/glusterd/hooks/1/add-brick +%dir %{_var}/lib/glusterd/hooks/1/add-brick/post +%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 +%dir %{_var}/lib/glusterd/hooks/1/add-brick/pre +%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 +%dir %{_var}/lib/glusterd/hooks/1/create +%dir %{_var}/lib/glusterd/hooks/1/create/post +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/create/post/S10selinux-label-brick.sh +%dir %{_var}/lib/glusterd/hooks/1/delete +%dir %{_var}/lib/glusterd/hooks/1/delete/post +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/delete/post/S57glusterfind-delete-post +%dir %{_var}/lib/glusterd/hooks/1/delete/pre +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/delete/pre/S10selinux-del-fcontext.sh +%dir %{_var}/lib/glusterd/hooks/1/set +%dir %{_var}/lib/glusterd/hooks/1/set/post +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/set/post/S30samba-set.sh +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/set/post/S32gluster_enable_shared_storage.sh +%dir %{_var}/lib/glusterd/hooks/1/start +%dir %{_var}/lib/glusterd/hooks/1/start/post +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/start/post/S29CTDBsetup.sh +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/start/post/S30samba-start.sh +%dir %{_var}/lib/glusterd/hooks/1/stop +%dir %{_var}/lib/glusterd/hooks/1/stop/pre +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/stop/pre/S29CTDB-teardown.sh +%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/stop/pre/S30samba-stop.sh %dir %{_var}/run/gluster %files client %defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/fusermount-glusterfs +%{!?with_system_fuse:%attr(755,root,root) %{_bindir}/fusermount-glusterfs} %attr(755,root,root) /sbin/mount.glusterfs %attr(755,root,root) %{_sbindir}/gluster %{_mandir}/man8/gluster.8* @@ -378,3 +530,54 @@ rm -rf $RPM_BUILD_ROOT %dir %{_prefix}/lib/ocf/resource.d/glusterfs %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/glusterd %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/volume + +%files events +%defattr(644,root,root,755) +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/glusterfs/eventsconfig.json +%attr(755,root,root) %{_sbindir}/gluster-eventsapi +%attr(755,root,root) %{_sbindir}/glustereventsd +%dir %{_libexecdir}/glusterfs/events +%attr(755,root,root) %{_libexecdir}/glusterfs/events/glustereventsd.py +%{_libexecdir}/glusterfs/events/__init__.py* +%{_libexecdir}/glusterfs/events/eventsapiconf.py* +%{_libexecdir}/glusterfs/events/eventtypes.py* +%{_libexecdir}/glusterfs/events/gf_event.py* +%{_libexecdir}/glusterfs/events/handlers.py* +%{_libexecdir}/glusterfs/events/utils.py* +%{_libexecdir}/glusterfs/peer_eventsapi.py* +%{_datadir}/glusterfs/scripts/eventsdash.py + +%files geo-replication +%defattr(644,root,root,755) +%attr(755,root,root) %{_sbindir}/gfind_missing_files +%attr(755,root,root) %{_sbindir}/gluster-georep-sshkey +%attr(755,root,root) %{_sbindir}/gluster-mountbroker +%attr(755,root,root) %{_libexecdir}/glusterfs/gsyncd +%attr(755,root,root) %{_libexecdir}/glusterfs/gverify.sh +%attr(755,root,root) %{_libexecdir}/glusterfs/peer_georep-sshkey.py* +%attr(755,root,root) %{_libexecdir}/glusterfs/peer_gsec_create +%attr(755,root,root) %{_libexecdir}/glusterfs/peer_mountbroker +%attr(755,root,root) %{_libexecdir}/glusterfs/peer_mountbroker.py* +%attr(755,root,root) %{_libexecdir}/glusterfs/set_geo_rep_pem_keys.sh +%dir %{_libexecdir}/glusterfs/gfind_missing_files +%attr(755,root,root) %{_libexecdir}/glusterfs/gfind_missing_files/* +%dir %{_libexecdir}/glusterfs/python/syncdaemon +# gsyncd.py is a script, the rest probably don't require *.py +%{_libexecdir}/glusterfs/python/syncdaemon/*.py* +%attr(755,root,root) %{_datadir}/glusterfs/scripts/generate-gfid-file.sh +%attr(755,root,root) %{_datadir}/glusterfs/scripts/get-gfid.sh +%attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-sync-gfid +%attr(755,root,root) %{_datadir}/glusterfs/scripts/gsync-upgrade.sh +%attr(755,root,root) %{_datadir}/glusterfs/scripts/schedule_georep.py +%attr(755,root,root) %{_datadir}/glusterfs/scripts/slave-upgrade.sh +%dir %{_var}/lib/glusterd/hooks/1/gsync-create +%dir %{_var}/lib/glusterd/hooks/1/gsync-create/post +%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 + +%files -n emacs-glusterfs-mode +%defattr(644,root,root,755) +%{_datadir}/emacs/site-lisp/glusterfs-mode.el + +%files -n vim-syntax-glusterfs +%defattr(644,root,root,755) +%{_datadir}/vim/syntax/glusterfs.vim