|
|
|
@ -1,248 +1,505 @@
|
|
|
|
|
#define pre rc8
|
|
|
|
|
## NOTE: Lots of files in various subdirectories have the same name (such as
|
|
|
|
|
## "LICENSE") so this short macro allows us to distinguish them by using their
|
|
|
|
|
## directory names (from the source tree) as prefixes for the files.
|
|
|
|
|
## Usage: add_to_doc_files subdirname files
|
|
|
|
|
%define add_to_doc_files() \
|
|
|
|
|
%{__mkdir_p} %{buildroot}%{_docdir}/%{name}-%{version}/%1 ||: ; \
|
|
|
|
|
%{__cp} -p %2 %{buildroot}%{_docdir}/%{name}-%{version}/%1
|
|
|
|
|
|
|
|
|
|
# Possible rpmbuild options
|
|
|
|
|
%{?_without_ibverbs:%define _without_ibverbs --disable-ibverbs}
|
|
|
|
|
%{?_without_client:%define _without_client --disable-fuse-client}
|
|
|
|
|
%{?_without_python:%define _without_python --disable-python}
|
|
|
|
|
|
|
|
|
|
Summary: GlusterFS - Cluster File System
|
|
|
|
|
Name: glusterfs
|
|
|
|
|
Version: 2.0.9
|
|
|
|
|
Release: 2%{?pre:.%{pre}}%{?dist}
|
|
|
|
|
License: GPLv3+
|
|
|
|
|
Group: System Environment/Base
|
|
|
|
|
URL: http://www.gluster.org/
|
|
|
|
|
Source0: http://ftp.gluster.com/pub/gluster/glusterfs/2.0/%{version}/glusterfs-%{version}%{?pre}.tar.gz
|
|
|
|
|
Source1: glusterfsd.init
|
|
|
|
|
Source2: glusterfsd.sysconfig
|
|
|
|
|
Source3: umount.glusterfs
|
|
|
|
|
Source4: glusterfs.logrotate
|
|
|
|
|
Source5: glusterfsd.logrotate
|
|
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
|
|
Requires(post): /sbin/chkconfig
|
|
|
|
|
Requires(preun): /sbin/service, /sbin/chkconfig
|
|
|
|
|
# if you wish to compile an rpm without rdma support, compile like this...
|
|
|
|
|
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without rdma
|
|
|
|
|
%{?_without_rdma:%global _without_rdma --disable-ibverbs}
|
|
|
|
|
|
|
|
|
|
# No RDMA Support on s390(x)
|
|
|
|
|
%ifarch s390 s390x
|
|
|
|
|
%global _without_rdma --disable-ibverbs
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
# if you wish to compile an rpm without epoll...
|
|
|
|
|
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without epoll
|
|
|
|
|
%{?_without_epoll:%global _without_epoll --disable-epoll}
|
|
|
|
|
|
|
|
|
|
# if you wish to compile an rpm with fusermount...
|
|
|
|
|
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --with fusermount
|
|
|
|
|
%{?_with_fusermount:%global _with_fusermount --enable-fusermount}
|
|
|
|
|
|
|
|
|
|
# if you wish to compile an rpm without geo-replication support, compile like this...
|
|
|
|
|
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without georeplication
|
|
|
|
|
%{?_without_georeplication:%global _without_georeplication --disable-geo-replication}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Summary: Cluster File System
|
|
|
|
|
Name: glusterfs
|
|
|
|
|
Version: 3.3.0
|
|
|
|
|
Release: 1%{?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.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.3.0.libglusterfs.Makefile.patch
|
|
|
|
|
Patch1: %{name}-3.2.5.configure.ac.patch
|
|
|
|
|
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
|
|
|
|
|
|
|
|
|
%if ( 0%{?fedora} && 0%{?fedora} < 17 ) || ( 0%{?rhel} && 0%{?rhel} < 7 )
|
|
|
|
|
Source7: glusterd.init
|
|
|
|
|
Source8: glusterfsd.init
|
|
|
|
|
Requires(post): /sbin/chkconfig
|
|
|
|
|
Requires(preun): /sbin/service
|
|
|
|
|
Requires(preun): /sbin/chkconfig
|
|
|
|
|
Requires(postun): /sbin/service
|
|
|
|
|
%{!?_without_ibverbs:BuildRequires: libibverbs-devel}
|
|
|
|
|
%{!?_without_client:BuildRequires: fuse-devel}
|
|
|
|
|
%{!?_without_python:BuildRequires: python-devel >= 2.4}
|
|
|
|
|
BuildRequires: flex, bison, byacc
|
|
|
|
|
%define _init_enable() /sbin/chkconfig --add %1 ;
|
|
|
|
|
%define _init_disable() /sbin/chkconfig --del %1 ;
|
|
|
|
|
%define _init_restart() /sbin/service %1 condrestart &>/dev/null ;
|
|
|
|
|
%define _init_stop() /sbin/service %1 stop &>/dev/null ;
|
|
|
|
|
%define _init_install() %{__install} -D -p -m 0755 %{1} %{buildroot}%{_sysconfdir}/init.d/%{2} ;
|
|
|
|
|
%define _init_file1 %{_sysconfdir}/init.d/glusterd
|
|
|
|
|
%define _init_file2 %{_sysconfdir}/init.d/glusterfsd
|
|
|
|
|
%else
|
|
|
|
|
Source7: glusterd.service
|
|
|
|
|
Source8: glusterfsd.service
|
|
|
|
|
BuildRequires: systemd-units
|
|
|
|
|
Requires(post): systemd-units
|
|
|
|
|
Requires(preun): systemd-units
|
|
|
|
|
Requires(postun): systemd-units
|
|
|
|
|
%define _init_enable() /bin/systemctl enable %1.service ;
|
|
|
|
|
%define _init_disable() /bin/systemctl disable %1.service ;
|
|
|
|
|
%define _init_restart() /bin/systemctl try-restart %1.service ;
|
|
|
|
|
%define _init_stop() /bin/systemctl stop %1.service ;
|
|
|
|
|
%define _init_install() %{__install} -D -p -m 0644 %{1} %{buildroot}%{_unitdir}/%{2}.service ;
|
|
|
|
|
%define _init_file1 %{_unitdir}/glusterd.service
|
|
|
|
|
%define _init_file2 %{_unitdir}/glusterfsd.service
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
BuildRequires: bison flex
|
|
|
|
|
BuildRequires: gcc make automake libtool
|
|
|
|
|
BuildRequires: ncurses-devel readline-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
|
|
|
|
|
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
|
|
|
|
|
peta-bytes. It aggregates various storage bricks over Infiniband RDMA
|
|
|
|
|
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 userspace and easily manageable.
|
|
|
|
|
is in user space and easily manageable.
|
|
|
|
|
|
|
|
|
|
This package includes the glusterfs binary, the glusterfsd daemon and the
|
|
|
|
|
gluster command line, libglusterfs and glusterfs translator modules common to
|
|
|
|
|
both GlusterFS server and client framework.
|
|
|
|
|
|
|
|
|
|
%package common
|
|
|
|
|
Summary: GlusterFS common files for both the client and the server
|
|
|
|
|
Group: System Environment/Libraries
|
|
|
|
|
Obsoletes: glusterfs-libs < 2.0.0
|
|
|
|
|
Provides: glusterfs-libs >= %{version}-%{release}
|
|
|
|
|
%if 0%{!?_without_rdma:1}
|
|
|
|
|
%package rdma
|
|
|
|
|
Summary: GlusterFS rdma support for ib-verbs
|
|
|
|
|
Group: Applications/File
|
|
|
|
|
BuildRequires: libibverbs-devel
|
|
|
|
|
|
|
|
|
|
%description common
|
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
%description rdma
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
This package provides support to ib-verbs library.
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if 0%{!?_without_georeplication:1}
|
|
|
|
|
%package geo-replication
|
|
|
|
|
Summary: GlusterFS Geo-replication
|
|
|
|
|
Group: Applications/File
|
|
|
|
|
Requires: %{name} = %{version}-%{release} , python-ctypes , rsync >= 3.0.0
|
|
|
|
|
|
|
|
|
|
%description geo-replication
|
|
|
|
|
GlusterFS is a clustered file-system capable of scaling to several
|
|
|
|
|
peta-bytes. 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
|
|
|
|
|
system. GlusterFS is one of the most sophisticated file system 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 userspace and easily manageable.
|
|
|
|
|
|
|
|
|
|
This package includes the glusterfs binary, libglusterfs and glusterfs
|
|
|
|
|
translator modules common to both GlusterFS server and client framework.
|
|
|
|
|
This package provides support to geo-replication.
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%package fuse
|
|
|
|
|
Summary: Fuse client
|
|
|
|
|
Group: Applications/File
|
|
|
|
|
BuildRequires: fuse-devel
|
|
|
|
|
|
|
|
|
|
%package client
|
|
|
|
|
Summary: GlusterFS Client
|
|
|
|
|
Group: Applications/File
|
|
|
|
|
Requires: fuse
|
|
|
|
|
Requires: %{name}-common = %{version}-%{release}
|
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
%description client
|
|
|
|
|
Obsoletes: %{name}-client < 3.1.0
|
|
|
|
|
Provides: %{name}-client = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
%description fuse
|
|
|
|
|
GlusterFS is a clustered file-system capable of scaling to several
|
|
|
|
|
peta-bytes. It aggregates various storage bricks over Infiniband RDMA
|
|
|
|
|
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 userspace and easily manageable.
|
|
|
|
|
|
|
|
|
|
This package provides the FUSE based GlusterFS client.
|
|
|
|
|
is in user space and easily manageable.
|
|
|
|
|
|
|
|
|
|
This package provides support to FUSE based clients.
|
|
|
|
|
|
|
|
|
|
%package server
|
|
|
|
|
Summary: GlusterFS Server
|
|
|
|
|
Group: System Environment/Daemons
|
|
|
|
|
Requires: %{name}-common = %{version}-%{release}
|
|
|
|
|
Summary: Clustered file-system server
|
|
|
|
|
Group: System Environment/Daemons
|
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
Requires: %{name}-fuse = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
%description server
|
|
|
|
|
GlusterFS is a clustered file-system capable of scaling to several
|
|
|
|
|
peta-bytes. It aggregates various storage bricks over Infiniband RDMA
|
|
|
|
|
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 userspace and easily manageable.
|
|
|
|
|
is in user space and easily manageable.
|
|
|
|
|
|
|
|
|
|
This package provides the glusterfs server daemon.
|
|
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
|
Summary: GlusterFS Development Libraries
|
|
|
|
|
Group: Development/Libraries
|
|
|
|
|
Requires: %{name}-common = %{version}-%{release}
|
|
|
|
|
%package vim
|
|
|
|
|
Summary: Vim syntax file
|
|
|
|
|
Group: Applications/Text
|
|
|
|
|
Requires: vim-common
|
|
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
|
%description vim
|
|
|
|
|
GlusterFS is a clustered file-system capable of scaling to several
|
|
|
|
|
peta-bytes. It aggregates various storage bricks over Infiniband RDMA
|
|
|
|
|
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 userspace and easily manageable.
|
|
|
|
|
is in user space and easily manageable.
|
|
|
|
|
|
|
|
|
|
Vim syntax file for GlusterFS.
|
|
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
|
Summary: Development Libraries
|
|
|
|
|
Group: Development/Libraries
|
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
|
|
|
|
|
%description devel
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
This package provides the development libraries.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%prep
|
|
|
|
|
%setup -q -n %{name}-%{version}%{?pre}
|
|
|
|
|
# Remove file, it gets re-generated by bison (was causing koji build failures)
|
|
|
|
|
rm -f libglusterfs/src/y.tab.c
|
|
|
|
|
# Don't get executable sources in the debuginfo package (as of 2.0.0rc7)
|
|
|
|
|
chmod -x libglusterfsclient/src/*.{c,h}
|
|
|
|
|
|
|
|
|
|
%setup -q -n %{name}-%{version}
|
|
|
|
|
%patch0 -p0
|
|
|
|
|
%patch1 -p0
|
|
|
|
|
|
|
|
|
|
%build
|
|
|
|
|
# Temp disable stack-protector until upstream fixes code
|
|
|
|
|
CFLAGS=`echo "%optflags"|sed 's/-D_FORTIFY_SOURCE=2/-D_FORTIFY_SOURCE=1/'`
|
|
|
|
|
%configure %{?_without_ibverbs} %{?_without_client} %{?_without_python}
|
|
|
|
|
./autogen.sh
|
|
|
|
|
%configure %{?_without_rdma} %{?_without_epoll} %{?_with_fusermount} %{?_without_georeplication}
|
|
|
|
|
|
|
|
|
|
# Remove rpath
|
|
|
|
|
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
|
|
|
|
|
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%{__make} %{?_smp_mflags}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%install
|
|
|
|
|
%{__rm} -rf %{buildroot} examples
|
|
|
|
|
%{__rm} -rf %{buildroot}
|
|
|
|
|
%{__make} install DESTDIR=%{buildroot}
|
|
|
|
|
%{__mkdir_p} %{buildroot}/var/log/glusterfs
|
|
|
|
|
# Install include directory
|
|
|
|
|
%{__mkdir_p} %{buildroot}%{_includedir}/glusterfs
|
|
|
|
|
%{__install} -p -m 0644 libglusterfs/src/*.h \
|
|
|
|
|
%{buildroot}%{_includedir}/glusterfs/
|
|
|
|
|
%{__install} -p -m 0644 contrib/uuid/*.h \
|
|
|
|
|
%{buildroot}%{_includedir}/glusterfs/
|
|
|
|
|
# Following needed by hekafs multi-tenant translator
|
|
|
|
|
%{__mkdir_p} %{buildroot}%{_includedir}/glusterfs/rpc
|
|
|
|
|
%{__install} -p -m 0644 rpc/rpc-lib/src/*.h \
|
|
|
|
|
%{buildroot}%{_includedir}/glusterfs/rpc/
|
|
|
|
|
%{__install} -p -m 0644 rpc/xdr/src/*.h \
|
|
|
|
|
%{buildroot}%{_includedir}/glusterfs/rpc/
|
|
|
|
|
%{__mkdir_p} %{buildroot}%{_includedir}/glusterfs/server
|
|
|
|
|
%{__install} -p -m 0644 xlators/protocol/server/src/*.h \
|
|
|
|
|
%{buildroot}%{_includedir}/glusterfs/server/
|
|
|
|
|
# We'll use our init.d
|
|
|
|
|
%{__rm} -f %{buildroot}%{_sysconfdir}/init.d/glusterd
|
|
|
|
|
|
|
|
|
|
# Remove unwanted files from all of the shared libraries
|
|
|
|
|
find %{buildroot}%{_libdir}/glusterfs -name '*.a' -o -name '*.la' | xargs rm -f
|
|
|
|
|
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterd
|
|
|
|
|
%{__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
|
|
|
|
|
|
|
|
|
|
# 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
|
|
|
|
|
|
|
|
|
|
# Clean up the examples we want to include as %%doc
|
|
|
|
|
%{__cp} -a doc/examples examples
|
|
|
|
|
%{__rm} -f examples/Makefile*
|
|
|
|
|
# Update configuration file to /var/lib working directory
|
|
|
|
|
sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sharedstatedir}/glusterd|g' \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/glusterfs/glusterd.vol
|
|
|
|
|
|
|
|
|
|
# Install init script and sysconfig file
|
|
|
|
|
%{__install} -D -p -m 0755 %{SOURCE1} \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/init.d/glusterfsd
|
|
|
|
|
%_init_install %{SOURCE7} glusterd
|
|
|
|
|
%_init_install %{SOURCE8} glusterfsd
|
|
|
|
|
%{__install} -D -p -m 0644 %{SOURCE1} \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/sysconfig/glusterd
|
|
|
|
|
%{__install} -D -p -m 0644 %{SOURCE2} \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/sysconfig/glusterfsd
|
|
|
|
|
|
|
|
|
|
%if 0%{!?_without_client:1}
|
|
|
|
|
# Install wrapper umount script
|
|
|
|
|
%{__install} -D -p -m 0755 %{SOURCE3} \
|
|
|
|
|
%{buildroot}/sbin/umount.glusterfs
|
|
|
|
|
# Client logrotate entry
|
|
|
|
|
%{__install} -D -p -m 0644 %{SOURCE4} \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfs
|
|
|
|
|
%endif
|
|
|
|
|
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfs-fuse
|
|
|
|
|
|
|
|
|
|
# Server logrotate entry
|
|
|
|
|
%{__install} -D -p -m 0644 %{SOURCE5} \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/logrotate.d/glusterd
|
|
|
|
|
# Legacy server logrotate entry
|
|
|
|
|
%{__install} -D -p -m 0644 %{SOURCE6} \
|
|
|
|
|
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfsd
|
|
|
|
|
|
|
|
|
|
# Install extra documentation
|
|
|
|
|
%add_to_doc_files benchmarking extras/benchmarking/{*.c,README,*.sh}
|
|
|
|
|
|
|
|
|
|
# Install vim syntax plugin
|
|
|
|
|
%{__install} -D -p -m 644 extras/glusterfs.vim \
|
|
|
|
|
%{buildroot}%{_datadir}/vim/vimfiles/syntax/glusterfs.vim
|
|
|
|
|
|
|
|
|
|
%clean
|
|
|
|
|
%{__rm} -rf %{buildroot}
|
|
|
|
|
|
|
|
|
|
%post
|
|
|
|
|
/sbin/ldconfig
|
|
|
|
|
|
|
|
|
|
%post common -p /sbin/ldconfig
|
|
|
|
|
%postun
|
|
|
|
|
/sbin/ldconfig
|
|
|
|
|
|
|
|
|
|
%postun common -p /sbin/ldconfig
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%post server
|
|
|
|
|
/sbin/chkconfig --add glusterfsd
|
|
|
|
|
|
|
|
|
|
%preun server
|
|
|
|
|
if [ $1 -eq 0 ]; then
|
|
|
|
|
/sbin/service glusterfsd stop &>/dev/null || :
|
|
|
|
|
/sbin/chkconfig --del glusterfsd
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
%postun server
|
|
|
|
|
if [ $1 -ge 1 ]; then
|
|
|
|
|
/sbin/service glusterfsd condrestart &>/dev/null || :
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%files common
|
|
|
|
|
%doc AUTHORS ChangeLog COPYING NEWS README extras/{glusterfs-mode.el,glusterfs.vim}
|
|
|
|
|
%{_docdir}/%{name}-%{version}/benchmarking
|
|
|
|
|
%{_libdir}/glusterfs/
|
|
|
|
|
%files
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%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}/glusterfsd
|
|
|
|
|
%{_mandir}/man8/glusterfs.8*
|
|
|
|
|
%dir /var/log/glusterfs/
|
|
|
|
|
%{_sbindir}/glusterfs*
|
|
|
|
|
%{_libexecdir}/glusterfs
|
|
|
|
|
# %{_mandir}/man8/*gluster*.8*
|
|
|
|
|
%dir %{_localstatedir}/log/glusterfs
|
|
|
|
|
%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_client:1}
|
|
|
|
|
%files client
|
|
|
|
|
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs
|
|
|
|
|
%if 0%{!?_without_rdma:1}
|
|
|
|
|
%files rdma
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%{_libdir}/glusterfs/%{version}/rpc-transport/rdma*
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%if 0%{!?_without_georeplication:1}
|
|
|
|
|
%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/*
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
%files fuse
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs-fuse
|
|
|
|
|
%{_libdir}/glusterfs/%{version}/xlator/mount/fuse*
|
|
|
|
|
# %{_mandir}/man8/mount.glusterfs.8*
|
|
|
|
|
/sbin/mount.glusterfs
|
|
|
|
|
/sbin/umount.glusterfs
|
|
|
|
|
%if 0%{?_with_fusermount:1}
|
|
|
|
|
%{_bindir}/fusermount-glusterfs
|
|
|
|
|
%endif
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%files server
|
|
|
|
|
%doc examples/ doc/glusterfs*.vol.sample
|
|
|
|
|
%dir %{_sysconfdir}/glusterfs/
|
|
|
|
|
%config(noreplace) %{_sysconfdir}/glusterfs/*.vol
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%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
|
|
|
|
|
%{_sysconfdir}/init.d/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*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
%files vim
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%doc COPYING-GPLV2 COPYING-LGPLV3
|
|
|
|
|
%{_datadir}/vim/vimfiles/syntax/glusterfs.vim
|
|
|
|
|
|
|
|
|
|
%files devel
|
|
|
|
|
%{_includedir}/glusterfs/
|
|
|
|
|
%{_includedir}/libglusterfsclient.h
|
|
|
|
|
%{_datadir}/glusterfs/*
|
|
|
|
|
%{_bindir}/glusterfs-volgen
|
|
|
|
|
%exclude %{_libdir}/*.a
|
|
|
|
|
%exclude %{_libdir}/*.la
|
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
|
%{_includedir}/glusterfs
|
|
|
|
|
%exclude %{_includedir}/glusterfs/y.tab.h
|
|
|
|
|
%{_libdir}/*.so
|
|
|
|
|
|
|
|
|
|
%post server
|
|
|
|
|
# Legacy server
|
|
|
|
|
%_init_enable glusterd
|
|
|
|
|
%_init_enable glusterfsd
|
|
|
|
|
|
|
|
|
|
%preun server
|
|
|
|
|
if [ $1 -eq 0 ]; then
|
|
|
|
|
%_init_stop glusterfsd
|
|
|
|
|
%_init_stop glusterd
|
|
|
|
|
%_init_disable glusterfsd
|
|
|
|
|
%_init_disable glusterd
|
|
|
|
|
fi
|
|
|
|
|
if [ $1 -ge 1 ]; then
|
|
|
|
|
%_init_restart glusterd
|
|
|
|
|
%_init_restart glusterfsd
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
|
* Thu May 31 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.3.0-1
|
|
|
|
|
- Update to 3.3.0
|
|
|
|
|
|
|
|
|
|
* Wed May 9 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.6-2
|
|
|
|
|
- Add BuildRequires: libxml2-devel, BZ 819916
|
|
|
|
|
|
|
|
|
|
* Wed Mar 21 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.6-1
|
|
|
|
|
- Update to 3.2.6
|
|
|
|
|
|
|
|
|
|
* Thu Feb 16 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-8
|
|
|
|
|
- rename patch files
|
|
|
|
|
|
|
|
|
|
* Mon Jan 16 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-7
|
|
|
|
|
- patch configure.ac to compile -O2 instead of -O0 on Linux.
|
|
|
|
|
|
|
|
|
|
* Tue Jan 10 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-6
|
|
|
|
|
- glusterd.init use /run per Fedora File System Layout, or /var/run when
|
|
|
|
|
needed
|
|
|
|
|
|
|
|
|
|
* Tue Jan 3 2012 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-5
|
|
|
|
|
- revised spec for init.d for fedora<=16, rhel<=6; native systemd for
|
|
|
|
|
f17 and rhel7
|
|
|
|
|
|
|
|
|
|
* Wed Dec 7 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-4
|
|
|
|
|
- revised sysconfig and init.d scripts. (glusterfsd.{init,sysconfig,service}
|
|
|
|
|
should go away, as glusterd is responsible for starting and stopping it.)
|
|
|
|
|
|
|
|
|
|
* Wed Nov 23 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-3
|
|
|
|
|
- revised libglusterfs/src/Makefile.* to (re)enable parallel make
|
|
|
|
|
|
|
|
|
|
* Mon Nov 21 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-2
|
|
|
|
|
- rhel/epel, init.d for <=6, native systemd for 7
|
|
|
|
|
|
|
|
|
|
* Thu Nov 17 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.5-1
|
|
|
|
|
- Update to 3.2.5
|
|
|
|
|
|
|
|
|
|
* Wed Nov 16 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.4-3
|
|
|
|
|
- revised init.d/systemd to minimize fedora < 17
|
|
|
|
|
- get closer to the official glusterfs spec, including...
|
|
|
|
|
- add geo-replication, which should have been there since 3.2
|
|
|
|
|
|
|
|
|
|
* Wed Nov 2 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.4-2
|
|
|
|
|
- Convert init.d to systemd for f17 and later
|
|
|
|
|
|
|
|
|
|
* Fri Sep 30 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.4-1
|
|
|
|
|
- Update to 3.2.4
|
|
|
|
|
|
|
|
|
|
* Mon Aug 22 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.3-1
|
|
|
|
|
- Update to 3.2.3
|
|
|
|
|
|
|
|
|
|
* Mon Aug 22 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.2-1
|
|
|
|
|
- Update to 3.2.2
|
|
|
|
|
|
|
|
|
|
* Fri Aug 19 2011 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.2-0
|
|
|
|
|
- Update to 3.2.2
|
|
|
|
|
|
|
|
|
|
* Wed Jun 29 2011 Dan Horák <dan[at]danny.cz> - 3.2.1-3
|
|
|
|
|
- disable InfiniBand on s390(x) unconditionally
|
|
|
|
|
|
|
|
|
|
* Thu Jun 16 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.2.1-2
|
|
|
|
|
- Fix Source0 URL
|
|
|
|
|
|
|
|
|
|
* Thu Jun 16 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.2.1-1
|
|
|
|
|
- Update to 3.2.1
|
|
|
|
|
|
|
|
|
|
* Tue Jun 01 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.2.0-1
|
|
|
|
|
- Update to 3.2.0
|
|
|
|
|
|
|
|
|
|
* Tue May 10 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.1.4-1
|
|
|
|
|
- Update to 3.1.4
|
|
|
|
|
|
|
|
|
|
* Sun Mar 19 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.1.3-1
|
|
|
|
|
- Update to 3.1.3
|
|
|
|
|
- Merge in more upstream SPEC changes
|
|
|
|
|
- Remove patches from GlusterFS bugzilla #2309 and #2311
|
|
|
|
|
- Remove inode-gen.patch
|
|
|
|
|
|
|
|
|
|
* Sun Feb 06 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.1.2-3
|
|
|
|
|
- Add back in legacy SPEC elements to support older branches
|
|
|
|
|
|
|
|
|
|
* Tue Feb 03 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.1.2-2
|
|
|
|
|
- Add patches from CloudFS project
|
|
|
|
|
|
|
|
|
|
* Tue Jan 25 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.1.2-1
|
|
|
|
|
- Update to 3.1.2
|
|
|
|
|
|
|
|
|
|
* Wed Jan 5 2011 Dan Horák <dan[at]danny.cz> - 3.1.1-3
|
|
|
|
|
- no InfiniBand on s390(x)
|
|
|
|
|
|
|
|
|
|
* Sat Jan 1 2011 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.1.1-2
|
|
|
|
|
- Update to support readline
|
|
|
|
|
- Update to not parallel build
|
|
|
|
|
|
|
|
|
|
* Mon Dec 27 2010 Silas Sewell <silas@sewell.ch> - 3.1.1-1
|
|
|
|
|
- Update to 3.1.1
|
|
|
|
|
- Change package names to mirror upstream
|
|
|
|
|
|
|
|
|
|
* Mon Dec 20 2010 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.0.7-1
|
|
|
|
|
- Update to 3.0.7
|
|
|
|
|
|
|
|
|
|
* Wed Jul 28 2010 Jonathan Steffan <jsteffan@fedoraproject.org> - 3.0.5-1
|
|
|
|
|
- Update to 3.0.x
|
|
|
|
|
|
|
|
|
|
* Sat Apr 10 2010 Jonathan Steffan <jsteffan@fedoraproject.org> - 2.0.9-2
|
|
|
|
|
- Move python version requires into a proper BuildRequires otherwise
|
|
|
|
|
the spec always turned off python bindings as python is not part
|
|
|
|
@ -381,4 +638,3 @@ fi
|
|
|
|
|
|
|
|
|
|
* Sun Jul 15 2007 Matt Paine <matt@mattsoftware.com> - 1.3.pre6
|
|
|
|
|
- Initial spec file
|
|
|
|
|
|
|
|
|
|