3.3.0-2, selected fixes to spec for BZs 826836, 826855, 829734, 834847
This commit is contained in:
parent
c98c39624e
commit
bf40ed0d1c
193
glusterfs.spec
193
glusterfs.spec
@ -24,20 +24,20 @@
|
||||
|
||||
Summary: Cluster File System
|
||||
Name: glusterfs
|
||||
Version: 3.2.7
|
||||
Release: 1%{?dist}
|
||||
License: GPLv3
|
||||
Version: 3.3.0
|
||||
Release: 2%{?dist}
|
||||
License: GPLv3+ and (GPLv2 or LGPLv3+)
|
||||
Group: System Environment/Base
|
||||
Vendor: Red Hat
|
||||
URL: http://www.gluster.org//docs/index.php/GlusterFS
|
||||
Source0: http://download.gluster.org/pub/gluster/glusterfs/3.2/%{version}/glusterfs-%{version}.tar.gz
|
||||
Source0: http://download.gluster.org/pub/gluster/glusterfs/3.3/%{version}/glusterfs-%{version}.tar.gz
|
||||
Source1: glusterd.sysconfig
|
||||
Source2: glusterfsd.sysconfig
|
||||
Source3: umount.glusterfs
|
||||
Source4: glusterfs-fuse.logrotate
|
||||
Source5: glusterd.logrotate
|
||||
Source6: glusterfsd.logrotate
|
||||
Patch0: %{name}-3.2.5.libglusterfs.Makefile.patch
|
||||
Patch0: %{name}-3.3.0.libglusterfs.Makefile.patch
|
||||
Patch1: %{name}-3.2.5.configure.ac.patch
|
||||
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
||||
|
||||
@ -74,15 +74,18 @@ Requires(postun): systemd-units
|
||||
BuildRequires: bison flex
|
||||
BuildRequires: gcc make automake libtool
|
||||
BuildRequires: ncurses-devel readline-devel
|
||||
BuildRequires: libxml2-devel
|
||||
BuildRequires: libxml2-devel openssl-devel
|
||||
BuildRequires: python-ctypes
|
||||
|
||||
Obsoletes: hekafs <= 0.7
|
||||
Obsoletes: %{name}-libs <= 2.0.0
|
||||
Obsoletes: %{name}-common < 3.1.0
|
||||
Obsoletes: %{name}-common < %{version}-%{release}
|
||||
Obsoletes: %{name}-core < %{version}-%{release}
|
||||
Provides: %{name}-libs = %{version}-%{release}
|
||||
Provides: %{name}-common = %{version}-%{release}
|
||||
Provides: %{name}-core = %{version}-%{release}
|
||||
|
||||
|
||||
%description
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes. It aggregates various storage bricks over Infiniband RDMA
|
||||
@ -120,7 +123,9 @@ This package provides support to ib-verbs library.
|
||||
%package geo-replication
|
||||
Summary: GlusterFS Geo-replication
|
||||
Group: Applications/File
|
||||
Requires: %{name} = %{version}-%{release} , python-ctypes , rsync >= 3.0.0
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: %{name}-server = %{version}-%{release}
|
||||
Requires: python-ctypes , rsync >= 3.0.0
|
||||
|
||||
%description geo-replication
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
@ -141,7 +146,7 @@ BuildRequires: fuse-devel
|
||||
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
Obsoletes: %{name}-client < 3.1.0
|
||||
Obsoletes: %{name}-client < %{version}-%{release}
|
||||
Provides: %{name}-client = %{version}-%{release}
|
||||
|
||||
%description fuse
|
||||
@ -172,22 +177,6 @@ is in user space and easily manageable.
|
||||
|
||||
This package provides the glusterfs server daemon.
|
||||
|
||||
%package vim
|
||||
Summary: Vim syntax file
|
||||
Group: Applications/Text
|
||||
Requires: vim-common
|
||||
|
||||
%description vim
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes. It aggregates various storage bricks over Infiniband RDMA
|
||||
or TCP/IP interconnect into one large parallel network file
|
||||
system. GlusterFS is one of the most sophisticated file systems in
|
||||
terms of features and extensibility. It borrows a powerful concept
|
||||
called Translators from GNU Hurd kernel. Much of the code in GlusterFS
|
||||
is in user space and easily manageable.
|
||||
|
||||
Vim syntax file for GlusterFS.
|
||||
|
||||
%package devel
|
||||
Summary: Development Libraries
|
||||
Group: Development/Libraries
|
||||
@ -244,7 +233,6 @@ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
|
||||
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfs
|
||||
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfsd
|
||||
|
||||
|
||||
# Remove unwanted files from all the shared libraries
|
||||
find %{buildroot}%{_libdir} -name '*.a' -delete
|
||||
find %{buildroot}%{_libdir} -name '*.la' -delete
|
||||
@ -252,11 +240,6 @@ find %{buildroot}%{_libdir} -name '*.la' -delete
|
||||
# Remove installed docs, we include them ourselves as %%doc
|
||||
%{__rm} -rf %{buildroot}%{_datadir}/doc/glusterfs/
|
||||
|
||||
# Rename the samples, so we can include them as %%config
|
||||
for file in %{buildroot}%{_sysconfdir}/glusterfs/*.sample; do
|
||||
%{__mv} ${file} `dirname ${file}`/`basename ${file} .sample`
|
||||
done
|
||||
|
||||
# Create working directory
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd
|
||||
|
||||
@ -264,10 +247,6 @@ done
|
||||
sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sharedstatedir}/glusterd|g' \
|
||||
%{buildroot}%{_sysconfdir}/glusterfs/glusterd.vol
|
||||
|
||||
# Clean up the examples we want to include as %%doc
|
||||
%{__cp} -a doc/examples examples
|
||||
%{__rm} -f examples/Makefile*
|
||||
|
||||
# Install init script and sysconfig file
|
||||
%_init_install %{SOURCE7} glusterd
|
||||
%_init_install %{SOURCE8} glusterfsd
|
||||
@ -290,9 +269,41 @@ sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sha
|
||||
%{__install} -D -p -m 0644 %{SOURCE6} \
|
||||
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfsd
|
||||
|
||||
# Install vim syntax plugin
|
||||
%{__install} -D -p -m 644 extras/glusterfs.vim \
|
||||
%{buildroot}%{_datadir}/vim/vimfiles/syntax/glusterfs.vim
|
||||
%if 0%{!?_without_georeplication:1}
|
||||
# geo-rep ghosts
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/geo-replication
|
||||
touch %{buildroot}%{_sharedstatedir}/glusterd/geo-replication/gsyncd.conf
|
||||
%endif
|
||||
|
||||
# the rest of the ghosts
|
||||
touch %{buildroot}%{_sharedstatedir}/glusterd/glusterd.info
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/stop
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/stop/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/stop/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/start
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/start/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/start/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/remove-brick
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/remove-brick/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/remove-brick/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/add-brick
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/add-brick/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/add-brick/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/set
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/set/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/set/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/create
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/create/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/create/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/delete
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/delete/post
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/hooks/1/delete/pre
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/glustershd
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/vols
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/nfs
|
||||
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd/peers
|
||||
|
||||
%clean
|
||||
%{__rm} -rf %{buildroot}
|
||||
@ -305,21 +316,26 @@ sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sha
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc ChangeLog COPYING INSTALL README THANKS
|
||||
%doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README THANKS
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterd
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/glusterd
|
||||
%{_libdir}/glusterfs
|
||||
%{_libdir}/*.so.*
|
||||
%{_sbindir}/glusterfs*
|
||||
%{_sbindir}/gluster
|
||||
%{_sbindir}/glusterd
|
||||
%{_libexecdir}/glusterfs
|
||||
%{_mandir}/man8/*gluster*.8*
|
||||
#%{_mandir}/man8/*gluster*.8* # man page install commented out in 3.3.0 source
|
||||
%dir %{_localstatedir}/log/glusterfs
|
||||
%dir %{_sharedstatedir}/glusterd
|
||||
%if 0%{!?_without_rdma:1}
|
||||
%exclude %{_libdir}/glusterfs/%{version}/rpc-transport/rdma*
|
||||
%endif
|
||||
%exclude %{_libdir}/glusterfs/%{version}/xlator/mount/fuse*
|
||||
%exclude %{_libdir}/glusterfs/%{version}/xlator/storage*
|
||||
%exclude %{_libdir}/glusterfs/%{version}/xlator/features/posix*
|
||||
%exclude %{_libdir}/glusterfs/%{version}/xlator/protocol/server*
|
||||
%exclude %{_libdir}/glusterfs/%{version}/xlator/mgmt*
|
||||
%exclude %{_libdir}/glusterfs/%{version}/xlator/nfs*
|
||||
|
||||
|
||||
%if 0%{!?_without_rdma:1}
|
||||
%files rdma
|
||||
@ -331,20 +347,20 @@ sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sha
|
||||
%post geo-replication
|
||||
#restart glusterd.
|
||||
%{_sysconfdir}/init.d/glusterd restart &> /dev/null
|
||||
%endif
|
||||
|
||||
%if 0%{!?_without_georeplication:1}
|
||||
%files geo-replication
|
||||
%defattr(-,root,root)
|
||||
%{_libexecdir}/glusterfs/gsyncd
|
||||
%{_libexecdir}/glusterfs/python/syncdaemon/*
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/geo-replication
|
||||
%ghost %attr(0644,-,-) %{_sharedstatedir}/glusterd/geo-replication/gsyncd.conf
|
||||
%endif
|
||||
|
||||
%files fuse
|
||||
%defattr(-,root,root,-)
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs-fuse
|
||||
%{_libdir}/glusterfs/%{version}/xlator/mount/fuse*
|
||||
%{_mandir}/man8/mount.glusterfs.8*
|
||||
#%{_mandir}/man8/mount.glusterfs.8* # man page install commented out in 3.3.0 source
|
||||
/sbin/mount.glusterfs
|
||||
/sbin/umount.glusterfs
|
||||
%if 0%{?_with_fusermount:1}
|
||||
@ -354,21 +370,53 @@ sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sha
|
||||
|
||||
%files server
|
||||
%defattr(-,root,root,-)
|
||||
%doc examples/ doc/glusterfs*.vol.sample
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterd
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/glusterd
|
||||
%config(noreplace) %{_sysconfdir}/glusterfs
|
||||
# Legacy configs
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfsd
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/glusterfsd
|
||||
%{_sharedstatedir}/glusterd
|
||||
%_init_file1
|
||||
%_init_file2
|
||||
%{_sbindir}/gluster
|
||||
%{_sbindir}/glusterd
|
||||
%{_libdir}/glusterfs/%{version}/xlator/storage*
|
||||
%{_libdir}/glusterfs/%{version}/xlator/features/posix*
|
||||
%{_libdir}/glusterfs/%{version}/xlator/protocol/server*
|
||||
%{_libdir}/glusterfs/%{version}/xlator/mgmt*
|
||||
%{_libdir}/glusterfs/%{version}/xlator/nfs*
|
||||
%ghost %attr(0644,-,-) %{_sharedstatedir}/glusterd/glusterd.info
|
||||
# This is really ugly, but I have no idea how to mark these directories in an
|
||||
# other way. They should belong to the glusterfs-server package, but don't
|
||||
# exist after installation. They are generated on the first start...
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/stop
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/stop/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/stop/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/remove-brick
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/remove-brick/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/remove-brick/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/add-brick
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/add-brick/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/add-brick/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/set
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/set/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/set/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/create
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/create/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/create/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/delete
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/delete/post
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/delete/pre
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/glustershd
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/vols
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/nfs
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/peers
|
||||
|
||||
%files vim
|
||||
%defattr(-,root,root,-)
|
||||
%doc COPYING
|
||||
%{_datadir}/vim/vimfiles/syntax/glusterfs.vim
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
@ -381,6 +429,45 @@ sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sha
|
||||
%_init_enable glusterd
|
||||
%_init_enable glusterfsd
|
||||
|
||||
# Genuine Fedora (and EPEL) builds never put gluster files in /etc; if
|
||||
# there are any files in /etc from a prior gluster.org install, move them
|
||||
# to /var/lib. (N.B. Starting with 3.3.0 all gluster files are in /var/lib
|
||||
# in gluster.org RPMs.) Be careful to copy them on the off chance that
|
||||
# /etc and /var/lib are on separate file systems
|
||||
if [ -d /etc/glusterd ]; then
|
||||
%{__mkdir_p} /var/lib
|
||||
cp -a /etc/glusterd /var/lib
|
||||
rm -rf /etc/glusterd
|
||||
ln -sf /var/lib/glusterd /etc/glusterd
|
||||
fi
|
||||
|
||||
# Rename old volfiles in an RPM-standard way. These aren't actually
|
||||
# considered package config files, so %config doesn't work for them.
|
||||
if [ -d /var/lib/glusterd/vols ]; then
|
||||
for file in $(find /var/lib/glusterd/vols -name '*.vol'); do
|
||||
newfile=${file}.rpmsave
|
||||
echo "warning: ${file} saved as ${newfile}"
|
||||
cp ${file} ${newfile}
|
||||
done
|
||||
fi
|
||||
|
||||
# add marker translator
|
||||
# but first make certain that there are no old libs around to bite us
|
||||
# BZ 834847
|
||||
if [ -e /etc/ld.so.conf.d/glusterfs.conf ]; then
|
||||
rm -f /etc/ld.so.conf.d/glusterfs.conf
|
||||
/sbin/ldconfig
|
||||
fi
|
||||
pidof -c -o %PPID -x glusterd &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
kill -9 `pgrep -f gsyncd.py` &> /dev/null
|
||||
|
||||
killall glusterd &> /dev/null
|
||||
glusterd --xlator-option *.upgrade=on -N
|
||||
else
|
||||
glusterd --xlator-option *.upgrade=on -N
|
||||
fi
|
||||
|
||||
%preun server
|
||||
if [ $1 -eq 0 ]; then
|
||||
%_init_stop glusterfsd
|
||||
@ -394,8 +481,8 @@ if [ $1 -ge 1 ]; then
|
||||
fi
|
||||
|
||||
%changelog
|
||||
* Mon Jun 11 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.7-1
|
||||
- Update to 3.2.7
|
||||
* Thu Jul 5 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.3.0-2
|
||||
- selected fixes to glusterfs.spec for BZs 826836, 826855, 829734, 834847
|
||||
|
||||
* Thu May 31 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.3.0-1
|
||||
- Update to 3.3.0
|
||||
|
Loading…
Reference in New Issue
Block a user