From fa97cd39d7b66f6d4763b5986bdf7e243dcd2f63 Mon Sep 17 00:00:00 2001 From: Marcin Krol Date: Tue, 20 Mar 2018 12:30:28 +0000 Subject: [PATCH] - updated to 3.12.6, partial PLD merge --- glusterfs-link.patch | 12 --- glusterfs-noquiet.patch | 8 +- glusterfs-python.patch | 4 +- glusterfs.spec | 209 +++++++++++++++++++++++++++------------- 4 files changed, 147 insertions(+), 86 deletions(-) delete mode 100644 glusterfs-link.patch diff --git a/glusterfs-link.patch b/glusterfs-link.patch deleted file mode 100644 index 82cf917..0000000 --- a/glusterfs-link.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- glusterfs-3.7.5/rpc/rpc-lib/src/Makefile.am.orig 2015-10-07 15:18:14.993228975 +0200 -+++ glusterfs-3.7.5/rpc/rpc-lib/src/Makefile.am 2015-10-09 18:28:49.261547744 +0200 -@@ -4,7 +4,8 @@ - rpc-transport.c xdr-rpc.c xdr-rpcclnt.c rpc-clnt.c auth-glusterfs.c \ - rpc-drc.c $(CONTRIBDIR)/sunrpc/xdr_sizeof.c rpc-clnt-ping.c - --libgfrpc_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la -+libgfrpc_la_LIBADD = $(top_builddir)/libglusterfs/src/libglusterfs.la $(top_builddir)/rpc/xdr/src/libgfxdr.la -+ - libgfrpc_la_LDFLAGS = -version-info $(LIBGFRPC_LT_VERSION) $(GF_LDFLAGS) - - noinst_HEADERS = rpcsvc.h rpc-transport.h xdr-common.h xdr-rpc.h xdr-rpcclnt.h \ diff --git a/glusterfs-noquiet.patch b/glusterfs-noquiet.patch index b313ee3..470b2cf 100644 --- a/glusterfs-noquiet.patch +++ b/glusterfs-noquiet.patch @@ -1,6 +1,6 @@ ---- glusterfs-3.4.0/configure.ac.orig 2013-07-12 19:43:26.000000000 +0200 -+++ glusterfs-3.4.0/configure.ac 2013-07-23 17:07:15.203576003 +0200 -@@ -12,18 +12,6 @@ +--- glusterfs-3.12.4/configure.ac.orig 2017-12-25 23:08:22.278402857 +0100 ++++ glusterfs-3.12.4/configure.ac 2017-12-25 23:12:01.968400346 +0100 +@@ -21,18 +21,6 @@ m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)]) @@ -16,6 +16,6 @@ - AM_LIBTOOLFLAGS="--quiet"; -fi - - AC_CONFIG_HEADERS([config.h]) + AC_CONFIG_HEADERS([config.h site.h]) AC_CONFIG_FILES([Makefile diff --git a/glusterfs-python.patch b/glusterfs-python.patch index f21d8f2..a3fbb33 100644 --- a/glusterfs-python.patch +++ b/glusterfs-python.patch @@ -1,5 +1,5 @@ ---- glusterfs-3.10.1/configure.ac.orig 2017-04-11 13:49:09.000000000 +0000 -+++ glusterfs-3.10.1/configure.ac 2017-04-11 13:50:45.343558629 +0000 +--- glusterfs-3.10.1/configure.ac.orig 2017-04-16 17:57:27.942310649 +0200 ++++ glusterfs-3.10.1/configure.ac 2017-04-16 18:03:50.218972950 +0200 @@ -521,7 +521,7 @@ PYTHONDEV_CPPFLAGS=`echo ${PYTHONDEV_CPPFLAGS} | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[[0-9]]//g'` diff --git a/glusterfs.spec b/glusterfs.spec index 15e950d..acb5b3d 100644 --- a/glusterfs.spec +++ b/glusterfs.spec @@ -1,5 +1,4 @@ # TODO: -# - package ganesha specific files? (no ganesha in PLD yet) # - Find pidfiles killproc --pidfile ${PIDFILE} -TERM instead of kill -TERM ${PID} # - Check transport-ibverbs package and ibverbs bcond # - Add passing options from /etc/sysconfig/glusterfsd to glusterfsd @@ -11,21 +10,22 @@ # 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.10.1 +Version: 3.12.6 Release: 1 License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs) Group: Applications/System -Source0: http://download.gluster.org/pub/gluster/glusterfs/3.10/LATEST/glusterfs-%{version}.tar.gz -# Source0-md5: a14b97098baec020054943d061261d61 +Source0: https://download.gluster.org/pub/gluster/glusterfs/3.12/LATEST/glusterfs-%{version}.tar.gz +# Source0-md5: efdcddf38aecb3c2109bd773c58d1f9b Source1: glusterfsd.init -Patch0: %{name}-link.patch -Patch1: %{name}-noquiet.patch -Patch2: %{name}-python.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 @@ -34,9 +34,7 @@ BuildRequires: bison # 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 @@ -49,6 +47,7 @@ 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 @@ -179,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. @@ -200,6 +199,36 @@ 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 @@ -230,7 +259,7 @@ Plik składni Vima do edycji konfiguracji GlusterFS-a. %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 +%patch3 -p1 %build %{__libtoolize} @@ -239,12 +268,13 @@ Plik składni Vima do edycji konfiguracji GlusterFS-a. %{__autoheader} %{__automake} %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 + %{__make} -j1 %install @@ -268,7 +298,7 @@ install -d $RPM_BUILD_ROOT%{_datadir}/{emacs/site-lisp,vim/syntax} %{__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 @@ -280,25 +310,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.md THANKS -%dir %{_sysconfdir}/%{name} %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 - -%attr(755,root,root) %{_sbindir}/gluster-eventsapi -%attr(755,root,root) %{_sbindir}/gluster-georep-sshkey -%attr(755,root,root) %{_sbindir}/gluster-mountbroker -%attr(755,root,root) %{_sbindir}/glustereventsd - -#%attr(755,root,root) %{_libdir}/ganesha/create-export-ganesha.sh -#%attr(755,root,root) %{_libdir}/ganesha/dbus-send.sh -#%attr(755,root,root) %{_libdir}/ganesha/ganesha-ha.sh -#%attr(755,root,root) %{_libdir}/ganesha/generate-epoch.py +%dir %{_sysconfdir}/%{name} %dir %{_libdir}/glusterfs @@ -327,8 +366,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 @@ -343,41 +382,30 @@ rm -rf $RPM_BUILD_ROOT %dir %{_libdir}/glusterfs/%{version}/xlator/testing/performance %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/performance/*.so -%dir %{_libdir}/glusterfs/events -%{_libdir}/glusterfs/events/*.py* - -%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/gfind_missing_files -%attr(755,root,root) %{_libdir}/glusterfs/gfind_missing_files/* - -%{_libdir}/glusterfs/glusterfind - -%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* - -%attr(755,root,root) %{_libdir}/glusterfs/peer_eventsapi.py -%attr(755,root,root) %{_libdir}/glusterfs/peer_georep-sshkey.py -%attr(755,root,root) %{_libdir}/glusterfs/peer_mountbroker.py -%attr(755,root,root) %{_libdir}/glusterfs/peer_mountbroker -%attr(755,root,root) %{_libdir}/glusterfs/set_geo_rep_pem_keys.sh +%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/eventsdash.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/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/schedule_georep.py -%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* @@ -441,22 +469,26 @@ rm -rf $RPM_BUILD_ROOT %files server %defattr(644,root,root,755) -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/eventsconfig.json %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}/gfind_missing_files +%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/virt +%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 @@ -464,12 +496,14 @@ rm -rf $RPM_BUILD_ROOT %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/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 +%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 @@ -478,7 +512,6 @@ rm -rf $RPM_BUILD_ROOT %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 -%attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) %{_var}/lib/glusterd/hooks/1/start/post/S31ganesha-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 @@ -487,7 +520,7 @@ rm -rf $RPM_BUILD_ROOT %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* @@ -498,9 +531,49 @@ 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 -#%{_prefix}/lib/ocf/resource.d/heartbeat/ganesha_grace -#%{_prefix}/lib/ocf/resource.d/heartbeat/ganesha_mon -#%{_prefix}/lib/ocf/resource.d/heartbeat/ganesha_nfsd + +%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) -- 2.37.3