preliminary for 3.7.0alpha
This commit is contained in:
parent
12a7daa1e0
commit
6a783fef31
136
glusterfs.spec
136
glusterfs.spec
@ -4,12 +4,16 @@
|
||||
|
||||
# uncomment and add '%' to use the prereltag for pre-releases
|
||||
#%%global prereltag beta2
|
||||
%global prereltag beta2
|
||||
%global prereltag alpha0
|
||||
|
||||
##-----------------------------------------------------------------------------
|
||||
## All argument definitions should be placed here and keep them sorted
|
||||
##
|
||||
|
||||
# if you wish to compile an rpm with cmocka unit testing...
|
||||
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --with cmocka
|
||||
%{?_with_cmocka:%global _with_cmocka --enable-cmocka}
|
||||
|
||||
# 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}
|
||||
@ -45,7 +49,7 @@
|
||||
%{?_without_syslog:%global _without_syslog --disable-syslog}
|
||||
|
||||
# disable syslog forcefully as rhel <= 6 doesn't have rsyslog or rsyslog-mmcount
|
||||
# Fedora deprecated syslog, see
|
||||
# Fedora deprecated syslog, see
|
||||
# https://fedoraproject.org/wiki/Changes/NoDefaultSyslog
|
||||
# (And what about RHEL7?)
|
||||
%if ( 0%{?fedora} && 0%{?fedora} >= 20 ) || ( 0%{?rhel} && 0%{?rhel} <= 6 )
|
||||
@ -77,6 +81,12 @@
|
||||
%global _with_systemd true
|
||||
%endif
|
||||
|
||||
%if 0%{?_tmpfilesdir:1}
|
||||
%define _with_tmpfilesdir --with-tmpfilesdir=%{_tmpfilesdir}
|
||||
%else
|
||||
%define _with_tmpfilesdir --without-tmpfilesdir
|
||||
%endif
|
||||
|
||||
# there is no systemtap support! Perhaps some day there will be
|
||||
%global _without_systemtap --enable-systemtap=no
|
||||
|
||||
@ -146,8 +156,8 @@
|
||||
Summary: Cluster File System
|
||||
%if ( 0%{_for_fedora_koji_builds} )
|
||||
Name: glusterfs
|
||||
Version: 3.6.3
|
||||
Release: 0.2%{?prereltag:.%{prereltag}}%{?dist}
|
||||
Version: 3.7.0
|
||||
Release: 0.1%{?prereltag:.%{prereltag}}%{?dist}
|
||||
Vendor: Fedora Project
|
||||
%else
|
||||
Name: @PACKAGE_NAME@
|
||||
@ -162,9 +172,6 @@ URL: http://www.gluster.org/docs/index.php/GlusterFS
|
||||
Source0: http://bits.gluster.org/pub/gluster/glusterfs/src/glusterfs-%{version}%{?prereltag}.tar.gz
|
||||
Source1: glusterd.sysconfig
|
||||
Source2: glusterfsd.sysconfig
|
||||
Source3: glusterfs-fuse.logrotate
|
||||
Source4: glusterd.logrotate
|
||||
Source5: glusterfsd.logrotate
|
||||
Source6: rhel5-load-fuse-modules
|
||||
Source7: glusterfsd.service
|
||||
Source8: glusterfsd.init
|
||||
@ -200,9 +207,15 @@ BuildRequires: bison flex
|
||||
BuildRequires: gcc make automake libtool
|
||||
BuildRequires: ncurses-devel readline-devel
|
||||
BuildRequires: libxml2-devel openssl-devel
|
||||
BuildRequires: libaio-devel
|
||||
BuildRequires: libaio-devel libacl-devel
|
||||
BuildRequires: python-devel
|
||||
BuildRequires: python-ctypes
|
||||
BuildRequires: userspace-rcu-devel >= 0.7
|
||||
BuildRequires: libuuid-devel
|
||||
BuildRequires: sqlite-devel
|
||||
%if ( 0%{?_with_cmocka:1} )
|
||||
BuildRequires: libcmocka-devel >= 1.0.1
|
||||
%endif
|
||||
%if ( 0%{!?_without_systemtap:1} )
|
||||
BuildRequires: systemtap-sdt-devel
|
||||
%endif
|
||||
@ -219,6 +232,9 @@ BuildRequires: libattr-devel
|
||||
Obsoletes: hekafs
|
||||
Obsoletes: %{name}-common < %{version}-%{release}
|
||||
Obsoletes: %{name}-core < %{version}-%{release}
|
||||
%if ( 0%{_for_fedora_koji_builds} )
|
||||
Obsoletes: %{name}-regression-tests
|
||||
%endif
|
||||
Obsoletes: %{name}-ufo
|
||||
Provides: %{name}-common = %{version}-%{release}
|
||||
Provides: %{name}-core = %{version}-%{release}
|
||||
@ -237,7 +253,7 @@ gluster command line, libglusterfs and glusterfs translator modules common to
|
||||
both GlusterFS server and client framework.
|
||||
|
||||
%package api
|
||||
Summary: Clustered file-system api library
|
||||
Summary: GlusterFS api library
|
||||
Group: System Environment/Daemons
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
# we provide the Python package/namespace 'gluster'
|
||||
@ -347,6 +363,26 @@ is in user space and easily manageable.
|
||||
|
||||
This package provides support to FUSE based clients.
|
||||
|
||||
%package ganesha
|
||||
Summary: NFS-Ganesha configuration
|
||||
Group: Applications/File
|
||||
|
||||
Requires: %{name}-server = %{version}-%{release}
|
||||
Requires: nfs-ganesha-gluster
|
||||
Requires: pcs
|
||||
|
||||
%description ganesha
|
||||
GlusterFS is a distributed 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 configuration and related files for using
|
||||
NFS-Ganesha as the NFS server using GlusterFS
|
||||
|
||||
%if ( 0%{!?_without_georeplication:1} )
|
||||
%package geo-replication
|
||||
Summary: GlusterFS Geo-replication
|
||||
@ -395,7 +431,7 @@ This package provides the base GlusterFS libraries
|
||||
Summary: GlusterFS rdma support for ib-verbs
|
||||
Group: Applications/File
|
||||
BuildRequires: libibverbs-devel
|
||||
BuildRequires: librdmacm-devel
|
||||
BuildRequires: librdmacm-devel >= 1.0.15
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description rdma
|
||||
@ -443,7 +479,7 @@ Group: System Environment/Base
|
||||
Group: Productivity/Clustering/HA
|
||||
%endif
|
||||
# for glusterd
|
||||
Requires: glusterfs-server
|
||||
Requires: %{name}-server
|
||||
# depending on the distribution, we need pacemaker or resource-agents
|
||||
Requires: %{_prefix}/lib/ocf/resource.d
|
||||
|
||||
@ -501,6 +537,7 @@ This package provides the glusterfs server daemon.
|
||||
# there is no need to run ./autogen or have a BuildRequires for automake.
|
||||
[ -e 'install-sh' -o -e 'install.sh' ] || ./autogen.sh
|
||||
%configure \
|
||||
%{?_with_tmpfilesdir} \
|
||||
%{?_without_rdma} \
|
||||
%{?_without_epoll} \
|
||||
%{?_without_fusermount} \
|
||||
@ -509,7 +546,8 @@ This package provides the glusterfs server daemon.
|
||||
%{?_without_syslog} \
|
||||
%{?_without_bd} \
|
||||
%{?_without_qemu_block} \
|
||||
%{?_without_systemtap}
|
||||
%{?_without_systemtap} \
|
||||
%{?_with_cmocka}
|
||||
|
||||
# fix hardening and remove rpath in shlibs
|
||||
%if ( 0%{?fedora} && 0%{?fedora} > 17 ) || ( 0%{?rhel} && 0%{?rhel} > 6 )
|
||||
@ -525,6 +563,9 @@ pushd xlators/features/glupy/src
|
||||
FLAGS="$RPM_OPT_FLAGS" python setup.py build
|
||||
popd
|
||||
|
||||
%check
|
||||
make check
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
make install DESTDIR=%{buildroot}
|
||||
@ -614,21 +655,8 @@ sed -i 's|option working-directory /etc/glusterd|option working-directory %{_sha
|
||||
%_init_install %{glusterfsd_service} glusterfsd
|
||||
%endif
|
||||
|
||||
%if ( 0%{_for_fedora_koji_builds} )
|
||||
# Client logrotate entry
|
||||
install -D -p -m 0644 %{SOURCE3} \
|
||||
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfs-fuse
|
||||
|
||||
# Server logrotate entry
|
||||
install -D -p -m 0644 %{SOURCE4} \
|
||||
%{buildroot}%{_sysconfdir}/logrotate.d/glusterd
|
||||
# Legacy server logrotate entry
|
||||
install -D -p -m 0644 %{SOURCE5} \
|
||||
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfsd
|
||||
%else
|
||||
install -D -p -m 0644 extras/glusterfs-logrotate \
|
||||
%{buildroot}%{_sysconfdir}/logrotate.d/glusterfs
|
||||
%endif
|
||||
|
||||
%if ( 0%{!?_without_georeplication:1} )
|
||||
# geo-rep ghosts
|
||||
@ -697,10 +725,6 @@ mkdir -p %{buildroot}%{_sharedstatedir}/glusterd/nfs/run
|
||||
touch %{buildroot}%{_sharedstatedir}/glusterd/nfs/nfs-server.vol
|
||||
touch %{buildroot}%{_sharedstatedir}/glusterd/nfs/run/nfs.pid
|
||||
|
||||
%if ( 0%{!?_without_georeplication:1} )
|
||||
install -p -m 0744 extras/hook-scripts/S56glusterd-geo-rep-create-post.sh \
|
||||
%{buildroot}%{_sharedstatedir}/glusterd/hooks/1/gsync-create/post
|
||||
%endif
|
||||
%{__install} -p -m 0744 extras/hook-scripts/start/post/*.sh \
|
||||
%{buildroot}%{_sharedstatedir}/glusterd/hooks/1/start/post
|
||||
%{__install} -p -m 0744 extras/hook-scripts/stop/pre/*.sh \
|
||||
@ -758,6 +782,14 @@ fi
|
||||
# Legacy server
|
||||
%_init_enable glusterd
|
||||
%_init_enable glusterfsd
|
||||
# ".cmd_log_history" is renamed to "cmd_history.log" in GlusterFS-3.7 .
|
||||
# While upgrading glusterfs-server package form GlusterFS version <= 3.6 to
|
||||
# GlusterFS version 3.7, ".cmd_log_history" should be renamed to
|
||||
# "cmd_history.log" to retain cli command history contents.
|
||||
if [ -f %{_localstatedir}/log/glusterfs/.cmd_log_history ]; then
|
||||
mv %{_localstatedir}/log/glusterfs/.cmd_log_history \
|
||||
%{_localstatedir}/log/glusterfs/cmd_history.log
|
||||
fi
|
||||
|
||||
# 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
|
||||
@ -843,8 +875,8 @@ fi
|
||||
## All %files should be placed here and keep them sorted
|
||||
##
|
||||
%files
|
||||
%doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README THANKS
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/*
|
||||
%doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README.md THANKS
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/*
|
||||
%if ( 0%{!?_without_syslog:1} )
|
||||
%if ( 0%{?fedora} ) || ( 0%{?rhel} && 0%{?rhel} >= 6 )
|
||||
@ -857,6 +889,9 @@ fi
|
||||
%exclude %{_mandir}/man8/gluster.8*
|
||||
%dir %{_localstatedir}/log/glusterfs
|
||||
%dir %{_localstatedir}/run/gluster
|
||||
%if 0%{?_tmpfilesdir:1}
|
||||
%{_tmpfilesdir}/gluster.conf
|
||||
%endif
|
||||
%dir %{_sharedstatedir}/glusterd
|
||||
%if ( 0%{!?_without_rdma:1} )
|
||||
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/rpc-transport/rdma*
|
||||
@ -888,6 +923,7 @@ fi
|
||||
%files api-devel
|
||||
%{_libdir}/pkgconfig/glusterfs-api.pc
|
||||
%{_libdir}/pkgconfig/libgfchangelog.pc
|
||||
%{_libdir}/pkgconfig/libgfdb.pc
|
||||
%{_libdir}/libgfapi.so
|
||||
%{_includedir}/glusterfs/api/*
|
||||
|
||||
@ -929,15 +965,21 @@ fi
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%files ganesha
|
||||
%{_sysconfdir}/ganesha/*
|
||||
%{_libexecdir}/ganesha/*
|
||||
%{_prefix}/lib/ocf/resource.d/heartbeat/*
|
||||
|
||||
%if ( 0%{!?_without_georeplication:1} )
|
||||
%files geo-replication
|
||||
%{_sysconfdir}/logrotate.d/glusterfs-georep
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs-georep
|
||||
%{_libexecdir}/glusterfs/gsyncd
|
||||
%{_libexecdir}/glusterfs/python/syncdaemon/*
|
||||
%{_libexecdir}/glusterfs/gverify.sh
|
||||
%{_libexecdir}/glusterfs/set_geo_rep_pem_keys.sh
|
||||
%{_libexecdir}/glusterfs/peer_add_secret_pub
|
||||
%{_libexecdir}/glusterfs/peer_gsec_create
|
||||
%{_libexecdir}/glusterfs/peer_mountbroker
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/geo-replication
|
||||
%dir %{_sharedstatedir}/glusterd/hooks
|
||||
%dir %{_sharedstatedir}/glusterd/hooks/1
|
||||
@ -950,11 +992,17 @@ fi
|
||||
%{_datadir}/glusterfs/scripts/generate-gfid-file.sh
|
||||
%{_datadir}/glusterfs/scripts/gsync-sync-gfid
|
||||
%ghost %attr(0644,-,-) %{_sharedstatedir}/glusterd/geo-replication/gsyncd_template.conf
|
||||
%{_libexecdir}/glusterfs/gfind_missing_files
|
||||
%{_sbindir}/gfind_missing_files
|
||||
%exclude %{_libexecdir}/glusterfs/gfind_missing_files/gfid_to_path.pyo
|
||||
%exclude %{_libexecdir}/glusterfs/gfind_missing_files/gfid_to_path.pyc
|
||||
%endif
|
||||
|
||||
%files libs
|
||||
%{_libdir}/*.so.*
|
||||
%exclude %{_libdir}/libgfapi.*
|
||||
# libgfdb is only needed server-side
|
||||
%exclude %{_libdir}/libgfdb.*
|
||||
|
||||
%if ( 0%{!?_without_rdma:1} )
|
||||
%files rdma
|
||||
@ -976,16 +1024,12 @@ fi
|
||||
|
||||
%files server
|
||||
%doc extras/clear_xattrs.sh
|
||||
%if ( 0%{_for_fedora_koji_builds} )
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterd
|
||||
%endif
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/glusterd
|
||||
%config(noreplace) %{_sysconfdir}/glusterfs
|
||||
%dir %{_sharedstatedir}/glusterd/groups
|
||||
%config(noreplace) %{_sharedstatedir}/glusterd/groups/virt
|
||||
# Legacy configs
|
||||
%if ( 0%{_for_fedora_koji_builds} )
|
||||
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfsd
|
||||
%config(noreplace) %{_sysconfdir}/sysconfig/glusterfsd
|
||||
%endif
|
||||
%config %{_sharedstatedir}/glusterd/hooks/1/add-brick/pre/S28Quota-enable-root-xattr-heal.sh
|
||||
@ -1009,7 +1053,13 @@ fi
|
||||
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/protocol/server*
|
||||
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mgmt*
|
||||
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/nfs*
|
||||
%{_libdir}/libgfdb.so.*
|
||||
%{_sharedstatedir}/glusterd
|
||||
|
||||
#snap_scheduler
|
||||
%{_sbindir}/snap_scheduler.py
|
||||
%{_sbindir}/gcron.py
|
||||
|
||||
#hookscripts
|
||||
%dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks
|
||||
%dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1
|
||||
@ -1049,7 +1099,21 @@ fi
|
||||
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/nfs/run
|
||||
%ghost %attr(0600,-,-) %{_sharedstatedir}/glusterd/nfs/run/nfs.pid
|
||||
|
||||
# Incrementalapi
|
||||
%{_libexecdir}/glusterfs/glusterfind
|
||||
%{_bindir}/glusterfind
|
||||
%exclude %{_libexecdir}/glusterfs/glusterfind/brickfind.pyc
|
||||
%exclude %{_libexecdir}/glusterfs/glusterfind/changelog.pyc
|
||||
%exclude %{_libexecdir}/glusterfs/glusterfind/nodecleanup.pyc
|
||||
%exclude %{_libexecdir}/glusterfs/glusterfind/brickfind.pyo
|
||||
%exclude %{_libexecdir}/glusterfs/glusterfind/changelog.pyo
|
||||
%exclude %{_libexecdir}/glusterfs/glusterfind/nodecleanup.pyo
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Apr 15 2015 Kaleb S. KEITHLEY <kkeithle[at]redhat.com>
|
||||
- preliminary for 3.7.0alpha
|
||||
|
||||
* Wed Apr 1 2015 Humble Chirammal <hchiramm@redhat.com> 3.6.3beta2
|
||||
- GlusterFS 3.6.3beta2 release.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user