diff --git a/glusterfs.spec b/glusterfs.spec index 5cd3b1b..ea00555 100644 --- a/glusterfs.spec +++ b/glusterfs.spec @@ -4,16 +4,11 @@ # uncomment and add '%' to use the prereltag for pre-releases #%%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} @@ -49,7 +44,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 ) @@ -81,12 +76,6 @@ %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 @@ -156,8 +145,8 @@ Summary: Cluster File System %if ( 0%{_for_fedora_koji_builds} ) Name: glusterfs -Version: 3.7.0 -Release: 0.1%{?prereltag:.%{prereltag}}%{?dist} +Version: 3.6.3 +Release: 1%{?prereltag:.%{prereltag}}%{?dist} Vendor: Fedora Project %else Name: @PACKAGE_NAME@ @@ -172,6 +161,9 @@ 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 @@ -207,15 +199,9 @@ BuildRequires: bison flex BuildRequires: gcc make automake libtool BuildRequires: ncurses-devel readline-devel BuildRequires: libxml2-devel openssl-devel -BuildRequires: libaio-devel libacl-devel +BuildRequires: libaio-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 @@ -232,10 +218,10 @@ BuildRequires: libattr-devel Obsoletes: hekafs Obsoletes: %{name}-common < %{version}-%{release} Obsoletes: %{name}-core < %{version}-%{release} +Obsoletes: %{name}-ufo %if ( 0%{_for_fedora_koji_builds} ) Obsoletes: %{name}-regression-tests %endif -Obsoletes: %{name}-ufo Provides: %{name}-common = %{version}-%{release} Provides: %{name}-core = %{version}-%{release} @@ -253,7 +239,7 @@ gluster command line, libglusterfs and glusterfs translator modules common to both GlusterFS server and client framework. %package api -Summary: GlusterFS api library +Summary: Clustered file-system api library Group: System Environment/Daemons Requires: %{name} = %{version}-%{release} # we provide the Python package/namespace 'gluster' @@ -363,26 +349,6 @@ 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 @@ -431,7 +397,7 @@ This package provides the base GlusterFS libraries Summary: GlusterFS rdma support for ib-verbs Group: Applications/File BuildRequires: libibverbs-devel -BuildRequires: librdmacm-devel >= 1.0.15 +BuildRequires: librdmacm-devel Requires: %{name} = %{version}-%{release} %description rdma @@ -456,7 +422,7 @@ Requires: %{name}-server = %{version}-%{release} ## thin provisioning support Requires: lvm2 >= 2.02.89 Requires: perl(App::Prove) perl(Test::Harness) gcc util-linux-ng -Requires: python attr dbench file git libacl-devel net-tools +Requires: python attr dbench file git libacl-devel mock net-tools Requires: nfs-utils xfsprogs yajl %description regression-tests @@ -479,7 +445,7 @@ Group: System Environment/Base Group: Productivity/Clustering/HA %endif # for glusterd -Requires: %{name}-server +Requires: glusterfs-server # depending on the distribution, we need pacemaker or resource-agents Requires: %{_prefix}/lib/ocf/resource.d @@ -537,7 +503,6 @@ 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} \ @@ -546,8 +511,7 @@ This package provides the glusterfs server daemon. %{?_without_syslog} \ %{?_without_bd} \ %{?_without_qemu_block} \ - %{?_without_systemtap} \ - %{?_with_cmocka} + %{?_without_systemtap} # fix hardening and remove rpath in shlibs %if ( 0%{?fedora} && 0%{?fedora} > 17 ) || ( 0%{?rhel} && 0%{?rhel} > 6 ) @@ -563,9 +527,6 @@ 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} @@ -655,8 +616,21 @@ 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 @@ -725,6 +699,10 @@ 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 \ @@ -782,14 +760,6 @@ 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 @@ -875,8 +845,8 @@ fi ## All %files should be placed here and keep them sorted ## %files -%doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README.md THANKS -%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs +%doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README THANKS +%config(noreplace) %{_sysconfdir}/logrotate.d/* %config(noreplace) %{_sysconfdir}/sysconfig/* %if ( 0%{!?_without_syslog:1} ) %if ( 0%{?fedora} ) || ( 0%{?rhel} && 0%{?rhel} >= 6 ) @@ -889,9 +859,6 @@ 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* @@ -923,7 +890,6 @@ fi %files api-devel %{_libdir}/pkgconfig/glusterfs-api.pc %{_libdir}/pkgconfig/libgfchangelog.pc -%{_libdir}/pkgconfig/libgfdb.pc %{_libdir}/libgfapi.so %{_includedir}/glusterfs/api/* @@ -965,21 +931,15 @@ fi %endif %endif -%files ganesha -%{_sysconfdir}/ganesha/* -%{_libexecdir}/ganesha/* -%{_prefix}/lib/ocf/resource.d/heartbeat/* - %if ( 0%{!?_without_georeplication:1} ) %files geo-replication -%config(noreplace) %{_sysconfdir}/logrotate.d/glusterfs-georep +%{_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 @@ -992,17 +952,11 @@ 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 @@ -1024,12 +978,16 @@ 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 @@ -1053,13 +1011,7 @@ 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 @@ -1099,26 +1051,9 @@ 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 -- preliminary for 3.7.0alpha - -* Wed Apr 1 2015 Humble Chirammal 3.6.3beta2 -- GlusterFS 3.6.3beta2 release. - -* Thu Feb 12 2015 Humble Chirammal 3.6.3beta1 -- GlusterFS 3.6.3beta1 release. +* Wed Apr 22 2015 Kaleb S. KEITHLEY 3.6.3-1 +- GlusterFS 3.6.3 GA * Tue Feb 10 2015 Kaleb S. KEITHLEY - Ownership of /usr/lib/python2.7/site-packages/gluster, BZ 1190832 @@ -1127,9 +1062,6 @@ fi * Mon Feb 02 2015 Lalatendu Mohanty 3.6.2-2 - GlusterFS 3.6.2-2 -* Fri Jan 30 2015 Nandaja Varma 1033 -- remove checks for rpmbuild/mock from run-tests.sh (#178008) - * Wed Jan 28 2015 Kaleb S. KEITHLEY - glusterfs-fuse Requires: attr. See BZ 1184626, 1184627 diff --git a/sources b/sources index 4861c40..78d7600 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -65e5f58288b0e4ff9384f0aa5baeba7e glusterfs-3.7.0alpha0.tar.gz +057c2f26bfc4c36aaa9f358db63f0c28 glusterfs-3.6.3.tar.gz