preliminary for 3.7.0alpha

This commit is contained in:
Kaleb S. KEITHLEY 2015-04-20 08:46:05 -04:00
parent 12a7daa1e0
commit 6a783fef31
2 changed files with 101 additions and 37 deletions

View File

@ -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.

View File

@ -1 +1 @@
55697fd4be9e42b5dc560ea4f7abb089 glusterfs-3.6.3beta2.tar.gz
65e5f58288b0e4ff9384f0aa5baeba7e glusterfs-3.7.0alpha0.tar.gz