Merge remote-tracking branch 'origin/master' into el5

GlusterFS 3.4.0 GA, glusterfs-3.4.0-2
This commit is contained in:
Kaleb S. KEITHLEY 2013-07-17 20:32:05 -04:00
commit 00c4d51b9b
2 changed files with 347 additions and 133 deletions

View File

@ -4,7 +4,7 @@
%global _for_fedora_koji_builds 1
# uncomment and add '%' to use the prereltag for pre-releases
# global prereltag alpha
# global prereltag beta4
# if you wish to compile an rpm without rdma support, compile like this...
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without rdma
@ -19,23 +19,33 @@
# 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 fusermount...
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without fusermount
%{?_without_fusermount:%global _without_fusermount --disable-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}
# if you wish to compile an rpm without the OCF resource agents...
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz --without ocf
%{?_without_ocf:%global _without_ocf --without-ocf}
# if you wish to build rpms without UFO, compile like this
# rpmbuild -ta @PACKAGE_NAME@-@PACKAGE_VERSION@tar.gz --without ufo
%{?_without_ufo:%global _without_ufo true}
%if ( 0%{?fedora} ) || ( 0%{?rhel} && 0%{?rhel} >= 6 )
%global SWIFTVER 1.7.4
%global SWIFTVER 1.8.0
%if ( 0%{_for_fedora_koji_builds} )
%global UFOVER 1.1
%global UFOVER 1.2
%else
%global UFOVER @PACKAGE_VERSION@
%endif
%if ! 0%{?_without_ufo:1}
%global _with_ufo true
%endif
%endif
%if ( 0%{?fedora} && 0%{?fedora} > 16 ) || ( 0%{?rhel} && 0%{?rhel} > 6 )
%global _with_systemd true
@ -44,21 +54,21 @@
Summary: Cluster File System
%if ( 0%{_for_fedora_koji_builds} )
Name: glusterfs
Version: 3.3.2
Version: 3.4.0
Release: 2%{?prereltag:.%{prereltag}}%{?dist}
%else
Name: @PACKAGE_NAME@
Version: @PACKAGE_VERSION@
Release: 1%{?dist}
%endif
License: GPLv3+ and (GPLv2 or LGPLv3+)
License: GPLv2 or LGPLv3+
Group: System Environment/Base
%if ( 0%{_for_fedora_koji_builds} )
Vendor: Red Hat
%endif
URL: http://www.gluster.org//docs/index.php/GlusterFS
%if ( 0%{_for_fedora_koji_builds} )
Source0: http://download.gluster.org/pub/gluster/glusterfs/3.3/%{version}/glusterfs-%{version}%{?prereltag}.tar.gz
Source0: http://download.gluster.org/pub/gluster/glusterfs/3.4/%{version}%{?prereltag}/glusterfs-%{version}%{?prereltag}.tar.gz
%else
Source0: @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.gz
%endif
@ -67,8 +77,9 @@ Source2: glusterfsd.sysconfig
Source3: glusterfs-fuse.logrotate
Source4: glusterd.logrotate
Source5: glusterfsd.logrotate
Source6: rhel5-load-fuse-modules
Patch0: %{name}-3.2.5.configure.ac.patch
Patch1: %{name}-3.3.2.libglusterfs.Makefile.patch
Patch1: %{name}-3.3.0.libglusterfs.Makefile.patch
Patch2: %{name}-3.3.1.rpc.rpcxprt.rdma.name.c.patch
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
@ -78,6 +89,70 @@ Source11: glusterfsd.service
Source12: glusterd.init
Source13: glusterfsd.init
%if ( ! ( 0%{?rhel} && 0%{?rhel} < 6 ) )
# we don't build swift/ufo on rhel5
# not including the sources is ugly, but we state our intentions clearly
%if ( 0%{_for_fedora_koji_builds} )
Source15: http://download.gluster.org/pub/gluster/glusterfs/3.4/%{version}%{?prereltag}/gluster-swift-ufo-%{UFOVER}%{?prereltag}.tar.gz
%else
Source15: gluster-swift-ufo-@PACKAGE_VERSION@.tar.gz
%endif
Patch15: %{name}-3.3.1.ufo.gluster.swift.common.DiskFile-1.7.4.patch
# http://launchpad.net/swift/grizzly/%{SWIFTVER}/+download/swift-%{SWIFTVER}.tar.gz
Source20: swift-%{SWIFTVER}.tar.gz
Source30: gluster-swift-account.service
Source31: gluster-swift-container.service
Source32: gluster-swift-object.service
Source33: gluster-swift-proxy.service
Source34: gluster-swift-account@.service
Source35: gluster-swift-container@.service
Source36: gluster-swift-object@.service
Source37: gluster-swift.tmpfs
Source40: gluster-swift-account.init
Source41: gluster-swift-container.init
Source42: gluster-swift-object.init
Source43: gluster-swift-proxy.init
Source44: gluster-swift-functions
# these first appeared in openstack-swift-1.7.4-2.fc19
Source50: gluster-swift-account-replicator.service
Source51: gluster-swift-account-replicator@.service
Source52: gluster-swift-account-auditor.service
Source53: gluster-swift-account-auditor@.service
Source54: gluster-swift-account-reaper.service
Source55: gluster-swift-account-reaper@.service
Source56: gluster-swift-container-replicator.service
Source57: gluster-swift-container-replicator@.service
Source58: gluster-swift-container-auditor.service
Source59: gluster-swift-container-auditor@.service
Source60: gluster-swift-container-updater.service
Source61: gluster-swift-container-updater@.service
Source62: gluster-swift-object-replicator.service
Source63: gluster-swift-object-replicator@.service
Source64: gluster-swift-object-auditor.service
Source65: gluster-swift-object-auditor@.service
Source66: gluster-swift-object-updater.service
Source67: gluster-swift-object-updater@.service
Source68: gluster-swift-object-expirer.service
Source69: gluster-swift-object-expirer@.service
# these first appeared in openstack-swift-1.7.4-1.fc18 and -1.7.4-2.el6
Source70: account-server.conf
Source71: container-server.conf
Source72: object-server.conf
Source73: proxy-server.conf
Source74: swift.conf
Source75: object-expirer.conf
%endif
Patch20: 0001-Use-updated-parallel-install-versions-of-epel-packag.patch
Patch21: 0002-Add-fixes-for-building-the-doc-package.patch
Patch22: glusterfs-3.3.1.swift.constraints.backport-1.7.4.patch
Patch23: glusterfs-3.4.0.swift.egginfo-grizzly.patch
Patch24: 0002-Add-fixes-for-building-the-doc-package.patch.180
%if ( 0%{?_with_systemd:1} )
%global glusterd_service %{S:%{SOURCE10}}
%global glusterfsd_service %{S:%{SOURCE11}}
@ -93,10 +168,10 @@ Requires(postun): systemd-units
# can't seem to make a generic macro that works
%define _init_glusterd %{_unitdir}/glusterd.service
%define _init_glusterfsd %{_unitdir}/glusterfsd.service
%define _init_gluster_swift_account %{_unitdir}/gluster-swift-account.service
%define _init_gluster_swift_account %{_unitdir}/gluster-swift-account.service
%define _init_gluster_swift_object %{_unitdir}/gluster-swift-object.service
%define _init_gluster_swift_container %{_unitdir}/gluster-swift-container.service
%define _init_gluster_swift_proxy %{_unitdir}/gluster-swift-proxy.service
%define _init_gluster_swift_container %{_unitdir}/gluster-swift-container.service
%define _init_gluster_swift_proxy %{_unitdir}/gluster-swift-proxy.service
%else
%if ( 0%{_for_fedora_koji_builds} )
%global glusterd_service %{S:%{SOURCE12}}
@ -114,10 +189,10 @@ Requires(postun): /sbin/service
# can't seem to make a generic macro that works
%define _init_glusterd %{_sysconfdir}/init.d/glusterd
%define _init_glusterfsd %{_sysconfdir}/init.d/glusterfsd
%define _init_gluster_swift_account %{_sysconfdir}/init.d/gluster-swift-account
%define _init_gluster_swift_object %{_sysconfdir}/init.d/gluster-swift-object
%define _init_gluster_swift_container %{_sysconfdir}/init.d/gluster-swift-container
%define _init_gluster_swift_proxy %{_sysconfdir}/init.d/gluster-swift-proxy
%define _init_gluster_swift_account %{_sysconfdir}/init.d/gluster-swift-account
%define _init_gluster_swift_object %{_sysconfdir}/init.d/gluster-swift-object
%define _init_gluster_swift_container %{_sysconfdir}/init.d/gluster-swift-container
%define _init_gluster_swift_proxy %{_sysconfdir}/init.d/gluster-swift-proxy
%endif
BuildRequires: bison flex
@ -125,11 +200,11 @@ BuildRequires: gcc make automake libtool
BuildRequires: ncurses-devel readline-devel
BuildRequires: libxml2-devel openssl-devel
BuildRequires: libaio-devel
#BuildRequires: systemtap-sdt-devel lvm2-devel # glusterfs-3.4.x
%if ( 0%{?suse_version} )
BuildRequires: systemtap-sdt-devel
BuildRequires: python-devel
%else
BuildRequires: python-ctypes
%if ( 0%{?fedora} ) || ( 0%{?rhel} && 0%{?rhel} >= 6 )
BuildRequires: lvm2-devel
%endif
Obsoletes: hekafs <= 0.7
@ -146,17 +221,15 @@ Provides: %{name}-core = %{version}-%{release}
# - all provides from xlators and private libraries not in the ldconfig path
#
# TODO: RHEL5 does not have a convenient solution
%if 0%{?rhel} == 6
%if ( 0%{?rhel} == 6 )
# filter_setup exists in RHEL6 only
%filter_provides_in %{_libdir}/glusterfs/%{version}/
%global __filter_from_req %{?__filter_from_req} | %{__grep} -v -P '^(?!lib).*\.so.*$'
%filter_setup
%else
# modern rpm and current Fedora
%global __requires_exclude -P ^(?!lib).*\.so.*$
# modern rpm and current Fedora do not generate requires if the provides
# are filtered
%global __provides_exclude_from ^%{_libdir}/glusterfs/%{version}/.*$
%endif
%description
@ -255,6 +328,56 @@ is in user space and easily manageable.
This package provides the glusterfs server daemon.
%package api
Summary: Clustered file-system api library
License: GPLv3+
Group: System Environment/Daemons
Requires: %{name} = %{version}-%{release}
%description api
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 glusterfs libgfapi library
%if ( 0%{!?_without_ocf:1} )
%package resource-agents
Summary: OCF Resource Agents for GlusterFS
License: GPLv3+
%if ( ! ( 0%{?rhel} && 0%{?rhel} < 6 ) )
# EL5 does not support noarch sub-packages
BuildArch: noarch
%endif
# this Group handling comes from the Fedora resource-agents package
%if ( 0%{?fedora} || 0%{?centos_version} || 0%{?rhel} )
Group: System Environment/Base
%else
Group: Productivity/Clustering/HA
%endif
# for glusterd
Requires: glusterfs-server
# depending on the distribution, we need pacemaker or resource-agents
Requires: %{_prefix}/lib/ocf/resource.d
%description resource-agents
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 resource agents which plug glusterd into
Open Cluster Framework (OCF) compliant cluster resource managers,
like Pacemaker.
%endif
%package devel
Summary: Development Libraries
License: GPLv2 or LGPLv3+
@ -270,9 +393,27 @@ 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.
This package provides the development libraries and include files.
%package api-devel
Summary: Development Libraries
License: GPLv2 or LGPLv3+
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%description api-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 api include files.
%if ( 0%{?_with_ufo:1} )
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
%package swift
Summary: GlusterFS OpenStack Object Storage
@ -280,58 +421,6 @@ Group: Applications/System
License: ASL 2.0
BuildArch: noarch
%if ( 0%{_for_fedora_koji_builds} )
Source20: http://launchpad.net/swift/folsom/%{SWIFTVER}/+download/swift-%{SWIFTVER}.tar.gz
%else
Source20: swift-%{SWIFTVER}.tar.gz
%endif
Source30: gluster-swift-account.service
Source31: gluster-swift-container.service
Source32: gluster-swift-object.service
Source33: gluster-swift-proxy.service
Source34: gluster-swift-account@.service
Source35: gluster-swift-container@.service
Source36: gluster-swift-object@.service
Source37: gluster-swift.tmpfs
Source40: gluster-swift-account.init
Source41: gluster-swift-container.init
Source42: gluster-swift-object.init
Source43: gluster-swift-proxy.init
Source44: gluster-swift-functions
# these first appeared in openstack-swift-1.7.4-2.fc19
Source50: gluster-swift-account-replicator.service
Source51: gluster-swift-account-replicator@.service
Source52: gluster-swift-account-auditor.service
Source53: gluster-swift-account-auditor@.service
Source54: gluster-swift-account-reaper.service
Source55: gluster-swift-account-reaper@.service
Source56: gluster-swift-container-replicator.service
Source57: gluster-swift-container-replicator@.service
Source58: gluster-swift-container-auditor.service
Source59: gluster-swift-container-auditor@.service
Source60: gluster-swift-container-updater.service
Source61: gluster-swift-container-updater@.service
Source62: gluster-swift-object-replicator.service
Source63: gluster-swift-object-replicator@.service
Source64: gluster-swift-object-auditor.service
Source65: gluster-swift-object-auditor@.service
Source66: gluster-swift-object-updater.service
Source67: gluster-swift-object-updater@.service
Source68: gluster-swift-object-expirer.service
Source69: gluster-swift-object-expirer@.service
# these first appeared in openstack-swift-1.7.4-1.fc18 and -1.7.4-2.el6
Source70: account-server.conf
Source71: container-server.conf
Source72: object-server.conf
Source73: proxy-server.conf
Source74: swift.conf
Patch20: 0001-Use-updated-parallel-install-versions-of-epel-packag.patch
Patch21: 0002-Add-fixes-for-building-the-doc-package.patch
Patch22: glusterfs-3.3.1.swift.constraints.backport-1.7.4.patch
Patch23: glusterfs-3.4.0.swift.egginfo-grizzly.patch
Patch24: 0002-Add-fixes-for-building-the-doc-package.patch.180
#BuildRoot: %(mktemp -ud %{_tmppath}/swift-%{SWIFTVER}-%{release}-XXXXXX)
%if ( 0%{?_with_systemd:1} )
@ -346,7 +435,6 @@ Patch24: 0002-Add-fixes-for-building-the-doc-package.patch.180
%global glusterswiftproxy_service %{S:%{SOURCE43}}
%endif
BuildRequires: dos2unix
BuildRequires: python-devel
BuildRequires: python-setuptools
BuildRequires: python-netifaces
@ -369,6 +457,9 @@ Requires: python-simplejson
Requires: pyxattr
Requires: python-setuptools
Requires: python-netifaces
%if "%{SWIFTVER}" != "1.7.4"
Requires: python-swiftclient
%endif
Conflicts: openstack-swift
@ -464,26 +555,31 @@ in clusters for reliable, redundant, and large-scale storage of static objects.
This package contains documentation files for %{name}-swift.
%endif
%package ufo
Summary: GlusterFS Unified File and Object Storage.
Group: Applications/System
License: ASL 2.0
BuildArch: noarch
BuildRequires: python-setuptools
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
Requires: %{name}-swift = %{version}-%{release}
%else
Requires: openstack-swift = %{SWIFTVER}
Requires: openstack-swift-account = %{SWIFTVER}
Requires: openstack-swift-container = %{SWIFTVER}
Requires: openstack-swift-object = %{SWIFTVER}
Requires: openstack-swift-proxy = %{SWIFTVER}
Obsoletes: %{name}-swift
%endif
Requires: memcached
Requires: openssl
Requires: python-setuptools
Requires: python
Obsoletes: glusterfs-swift-plugin < 3.3.1-4
Obsoletes: glusterfs-swift-ufo <= 3.3.1-4
%if ( 0%{_for_fedora_koji_builds} )
Source15: http://download.gluster.org/pub/gluster/glusterfs/3.3/%{version}/UFO/gluster-swift-ufo-%{UFOVER}%{?prereltag}.tar.gz
%else
Source15: gluster-swift-ufo-@PACKAGE_VERSION@.tar.gz
%endif
Patch15: %{name}-3.3.1.ufo.gluster.swift.common.DiskFile-1.7.4.patch
Patch16: %{name}-3.3.1.ufo.gluster.multi-volume.backport-1.1.patch
%description ufo
Gluster Unified File and Object Storage unifies NAS and object storage
technology. This provides a system for data storage that enables users to access
@ -496,18 +592,20 @@ storage costs.
%setup -q -n %{name}-%{version}%{?prereltag}
%if ( 0%{_for_fedora_koji_builds} )
#%patch0 -p0
%patch1 -p0
%patch1 -p0 -F4
%if ( "%{version}" == "3.3.1" )
%patch2 -p1
%endif
%endif
%if ( 0%{?_with_ufo:1} )
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
# unpack swift-1.x.y
%setup -q -T -D -n %{name}-%{version}%{?prereltag} -a 20
%endif
# unpack gluster ufo
%setup -q -T -D -n %{name}-%{version}%{?prereltag} -a 15
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
cd swift-%{SWIFTVER}
# apply Fedora openstack-swift patches to Swift as appropriate
%if ( 0%{?rhel} && 0%{?rhel} < 7 )
%patch20 -p1
%if "%{SWIFTVER}" == "1.7.4"
@ -516,28 +614,24 @@ cd swift-%{SWIFTVER}
%patch24 -p1
%endif
%endif
# apply our own patches to Swift, as appropriate
%if "%{SWIFTVER}" == "1.7.4"
%patch22 -p1
%else
%patch23 -p1
%endif
# apply our fix for UFO 1.1 (tarball snapshot circa 7 Dec, 2012)
%endif
%if ( 0%{_for_fedora_koji_builds} )
%if ( "%{UFOVER}" == "1.1" )
cd ../
pwd
%patch15
%patch16 -p1
cd ../ufo
%patch15 -p1
%endif
%endif
%endif
%build
./autogen.sh
%configure %{?_without_rdma} %{?_without_epoll} %{?_with_fusermount} %{?_without_georeplication}
%configure %{?_without_rdma} %{?_without_epoll} %{?_without_fusermount} %{?_without_georeplication} %{?_without_ocf}
# Remove rpath
# fix hardening and remove rpath in shlibs
%if ( 0%{?fedora} && 0%{?fedora} > 17 ) || ( 0%{?rhel} && 0%{?rhel} > 6 )
%{__sed} -i 's| \\\$compiler_flags |&\\\$LDFLAGS |' libtool
@ -548,6 +642,7 @@ pwd
%{__make} %{?_smp_mflags}
%if ( 0%{?_with_ufo:1} )
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
cd swift-%{SWIFTVER}
%{__python} setup.py build
%{__mkdir_p} doc/build
@ -555,6 +650,7 @@ cd swift-%{SWIFTVER}
%{__python} setup.py build_sphinx
%endif
cd ..
%endif
cd ufo
%{__python} setup.py build
cd ..
@ -592,6 +688,11 @@ cd ..
%{__rm} -f %{buildroot}%{_sysconfdir}/init.d/glusterd
%endif
%if ( 0%{?rhel} && 0%{?rhel} <= 5 )
%{__install} -D -p -m 0755 %{SOURCE6} \
%{buildroot}%{_sysconfdir}/sysconfig/modules/glusterfs-fuse.modules
%endif
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterd
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfs
%{__mkdir_p} %{buildroot}%{_localstatedir}/log/glusterfsd
@ -601,7 +702,7 @@ cd ..
find %{buildroot}%{_libdir} -name '*.a' -delete
find %{buildroot}%{_libdir} -name '*.la' -delete
# Remove installed docs, we include them ourselves as %%doc
# Remove installed docs, they're included by %%doc
%{__rm} -rf %{buildroot}%{_datadir}/doc/glusterfs/
head -50 ChangeLog > ChangeLog.head && mv ChangeLog.head ChangeLog
cat << EOM >> ChangeLog
@ -610,6 +711,11 @@ More commit messages for this ChangeLog can be found at
https://forge.gluster.org/glusterfs-core/glusterfs/commits/v%{version}%{?prereltag}
EOM
# Remove benchmarking and other unpackaged files
%{__rm} -rf %{buildroot}/benchmarking
%{__rm} -f %{buildroot}/glusterfs-mode.el
%{__rm} -f %{buildroot}/glusterfs.vim
# Create working directory
%{__mkdir_p} %{buildroot}%{_sharedstatedir}/glusterd
@ -680,6 +786,7 @@ touch %{buildroot}%{_sharedstatedir}/glusterd/nfs/nfs-server.vol
touch %{buildroot}%{_sharedstatedir}/glusterd/nfs/run/nfs.pid
%if ( 0%{?_with_ufo:1} )
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
cd swift-%{SWIFTVER}
%{__python} setup.py install -O1 --skip-build --root %{buildroot}
# common swift .service or .init files
@ -738,6 +845,7 @@ cd swift-%{SWIFTVER}
#install -p -D -m 660 %{SOURCE72} %{buildroot}%{_sysconfdir}/swift/object-server.conf
#install -p -D -m 660 %{SOURCE73} %{buildroot}%{_sysconfdir}/swift/proxy-server.conf
#install -p -D -m 660 %{SOURCE74} %{buildroot}%{_sysconfdir}/swift/swift.conf
#install -p -D -m 660 %{SOURCE75} %{buildroot}%{_sysconfdir}/swift/object-expirer.conf
#%endif
# Install pid directory
%{__install} -d -m 755 %{buildroot}%{_localstatedir}/run/swift
@ -750,6 +858,8 @@ cd swift-%{SWIFTVER}
%{__mkdir_p} %{buildroot}%{_sysconfdir}/tmpfiles.d
install -p -m 0644 %{SOURCE37} %{buildroot}%{_sysconfdir}/tmpfiles.d/gluster-swift.conf
%endif
# Install recon directory
install -d -m 755 %{buildroot}%{_localstatedir}/cache/swift
# man pages
install -d -m 755 %{buildroot}%{_mandir}/man5
for m in doc/manpages/*.5; do
@ -760,6 +870,7 @@ for m in doc/manpages/*.1; do
install -p -m 0644 $m %{buildroot}%{_mandir}/man1
done
cd ..
%endif
cd ufo
%{__python} setup.py install -O1 --skip-build --root %{buildroot}
cd ..
@ -784,6 +895,7 @@ cp ufo/bin/gluster-swift-gen-builders %{buildroot}%{_bindir}/
%doc ChangeLog COPYING-GPLV2 COPYING-LGPLV3 INSTALL README THANKS
%config(noreplace) %{_sysconfdir}/logrotate.d/*
%config(noreplace) %{_sysconfdir}/sysconfig/*
%exclude %{_libdir}/libgfapi.*
%{_libdir}/glusterfs
%{_libdir}/*.so.*
%{_sbindir}/glusterfs*
@ -795,6 +907,7 @@ cp ufo/bin/gluster-swift-gen-builders %{buildroot}%{_bindir}/
%if ( 0%{!?_without_rdma:1} )
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/rpc-transport/rdma*
%endif
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/api*
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/fuse*
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/storage*
%exclude %{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/features/posix*
@ -831,12 +944,16 @@ fi
%endif
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/fuse*
/sbin/mount.glusterfs
%if ( 0%{?_with_fusermount:1} )
%if ( ! 0%{?_without_fusermount:1} )
%{_bindir}/fusermount-glusterfs
%endif
%if ( 0%{?rhel} && 0%{?rhel} <= 5 )
%{_sysconfdir}/sysconfig/modules/glusterfs-fuse.modules
%endif
%files server
%defattr(-,root,root,-)
%doc extras/clear_xattrs.sh
%if ( 0%{_for_fedora_koji_builds} )
%config(noreplace) %{_sysconfdir}/logrotate.d/glusterd
%endif
@ -860,7 +977,7 @@ fi
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/protocol/server*
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mgmt*
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/nfs*
%config %{_sharedstatedir}/glusterd/glusterd.info
%config(noreplace) %{_sharedstatedir}/glusterd/glusterd.info
%ghost %attr(0644,-,-) %{_sharedstatedir}/glusterd/glusterd.info
%ghost %attr(0600,-,-) %{_sharedstatedir}/glusterd/options
# This is really ugly, but I have no idea how to mark these directories in an
@ -898,45 +1015,55 @@ fi
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/nfs/run
%ghost %attr(0600,-,-) %{_sharedstatedir}/glusterd/nfs/run/nfs.pid
%files api
%exclude %{_libdir}/*.so
%{_libdir}/libgfapi.*
%{_libdir}/glusterfs/%{version}%{?prereltag}/xlator/mount/api*
%if ( 0%{!?_without_ocf:1} )
%files resource-agents
%defattr(-,root,root)
# /usr/lib is the standard for OCF, also on x86_64
%{_prefix}/lib/ocf/resource.d/glusterfs
%endif
%files devel
%defattr(-,root,root,-)
%{_includedir}/glusterfs
%exclude %{_includedir}/glusterfs/y.tab.h
%exclude %{_includedir}/glusterfs/api
%exclude %{_libdir}/libgfapi.so
%{_libdir}/*.so
%files api-devel
%{_libdir}/pkgconfig/glusterfs-api.pc
%{_libdir}/libgfapi.so
%{_includedir}/glusterfs/api/*
%if ( 0%{?_with_ufo:1} )
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
%files swift
%defattr(-,root,root,-)
%doc swift-%{SWIFTVER}/AUTHORS
%doc swift-%{SWIFTVER}/LICENSE
%doc swift-%{SWIFTVER}/README
%doc swift-%{SWIFTVER}/README*
%doc swift-%{SWIFTVER}/etc/dispersion.conf-sample
%doc swift-%{SWIFTVER}/etc/drive-audit.conf-sample
%doc swift-%{SWIFTVER}/etc/object-expirer.conf-sample
%doc swift-%{SWIFTVER}/etc/swift.conf-sample
%{_mandir}/man5/dispersion.conf.5*
%{_mandir}/man1/swift-dispersion-populate.1*
%{_mandir}/man1/swift-dispersion-report.1*
%{_mandir}/man1/swift.1*
%{_mandir}/man1/swift-get-nodes.1*
%{_mandir}/man1/swift-init.1*
%{_mandir}/man1/swift-orphans.1*
%{_mandir}/man1/swift-recon.1*
%{_mandir}/man1/swift-ring-builder.1*
%{_mandir}/man1/swift*.1*
%if ( 0%{?_with_systemd:1} )
%config(noreplace) %{_sysconfdir}/tmpfiles.d/gluster-swift.conf
%else
%dir %{_datarootdir}/gluster-swift/functions
%endif
%dir %{_sysconfdir}/swift
#%if ( 0%{?fedora} && 0%{?fedora} > 17 )
#%config(noreplace) %attr(660, root, swift) %{_sysconfdir}/swift/swift.conf
#%endif
%dir %attr(0755, swift, swift) %{_localstatedir}/run/swift
%dir %{python_sitelib}/swift
%{_bindir}/swift-account-audit
%{_bindir}/swift-bench
%{_bindir}/swift-bench-client
%{_bindir}/swift-drive-audit
%{_bindir}/swift-get-nodes
%{_bindir}/swift-init
@ -963,7 +1090,10 @@ fi
%{_mandir}/man1/swift-account-server.1*
%_init_gluster_swift_account
%if ( 0%{?_with_systemd:1} )
%{_unitdir}/gluster-swift-account*.service
%{_unitdir}/gluster-swift-account@.service
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%{_unitdir}/gluster-swift-account-*.service
%endif
%endif
%dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/account-server
%dir %{_sysconfdir}/swift/account-server
@ -984,9 +1114,13 @@ fi
%{_mandir}/man1/swift-container-updater.1*
%_init_gluster_swift_container
%if ( 0%{?_with_systemd:1} )
%{_unitdir}/gluster-swift-container*.service
%{_unitdir}/gluster-swift-container@.service
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%{_unitdir}/gluster-swift-container-*.service
%endif
%endif
%dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/container-server
%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift
%dir %{_sysconfdir}/swift/container-server
%{_bindir}/swift-container-auditor
%{_bindir}/swift-container-server
@ -1000,18 +1134,21 @@ fi
%doc swift-%{SWIFTVER}/etc/object-server.conf-sample
%doc swift-%{SWIFTVER}/etc/rsyncd.conf-sample
%{_mandir}/man5/object-server.conf.5*
%{_mandir}/man5/object-expirer.conf.5*
%{_mandir}/man1/swift-object-auditor.1*
%{_mandir}/man1/swift-object-expirer.1*
%{_mandir}/man1/swift-object-info.1*
%{_mandir}/man1/swift-object-replicator.1*
%{_mandir}/man1/swift-object-server.1*
%{_mandir}/man1/swift-object-updater.1*
%_init_gluster_swift_object
%if ( 0%{?_with_systemd:1} )
%{_unitdir}/gluster-swift-object*.service
%{_unitdir}/gluster-swift-object@.service
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%{_unitdir}/gluster-swift-object-*.service
%exclude %{_unitdir}/gluster-swift-object-expirer*.service
%endif
%endif
%dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/object-server
%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift
%dir %{_sysconfdir}/swift/object-server
%{_bindir}/swift-object-auditor
%{_bindir}/swift-object-info
@ -1023,11 +1160,19 @@ fi
%files swift-proxy
%defattr(-,root,root,-)
%doc swift-%{SWIFTVER}/etc/proxy-server.conf-sample
%doc swift-%{SWIFTVER}/etc/object-expirer.conf-sample
%{_mandir}/man5/object-expirer.conf.5*
%{_mandir}/man5/proxy-server.conf.5*
%{_mandir}/man1/swift-object-expirer.1*
%{_mandir}/man1/swift-proxy-server.1*
%_init_gluster_swift_proxy
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%{_unitdir}/gluster-swift-object-expirer*.service
%endif
%dir %attr(0755, swift, swift) %{_localstatedir}/run/swift/proxy-server
%dir %attr(0755, swift, swift) %{_localstatedir}/cache/swift
%dir %{_sysconfdir}/swift/proxy-server
%{_bindir}/swift-object-expirer
%{_bindir}/swift-proxy-server
%{python_sitelib}/swift/proxy
@ -1035,6 +1180,8 @@ fi
%defattr(-,root,root,-)
%doc swift-%{SWIFTVER}/LICENSE
%endif
%files ufo
%defattr(-,root,root,-)
%{python_sitelib}/gluster
@ -1116,6 +1263,7 @@ fi
%if ( 0%{?_with_ufo:1} )
%if ( 0%{?fedora} && 0%{?fedora} < 19 ) || ( 0%{?rhel} && 0%{?rhel} < 6 )
%pre swift
getent group swift >/dev/null || groupadd -r swift -g 160
getent passwd swift >/dev/null || \
@ -1133,18 +1281,36 @@ fi
%post swift-account
%_init_enable gluster-swift-account
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_enable gluster-swift-account-replicator
%_init_enable gluster-swift-account-auditor
%_init_enable gluster-swift-account-reaper
%endif
%preun swift-account
if [ $1 = 0 ] ; then
%_init_stop gluster-swift-account
%_init_disable gluster-swift-account
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_stop gluster-swift-account-replicator
%_init_disable gluster-swift-account-replicator
%_init_stop gluster-swift-account-auditor
%_init_disable gluster-swift-account-auditor
%_init_stop gluster-swift-account-reaper
%_init_disable gluster-swift-account-reaper
%endif
fi
%postun swift-account
if [ "$1" -ge "1" ] ; then
if [ $1 -ge 1 ] ; then
%_init_restart gluster-swift-account
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_restart gluster-swift-account-replicator
%_init_restart gluster-swift-account-auditor
%_init_restart gluster-swift-account-reaper
%endif
fi
@ -1158,18 +1324,36 @@ fi
%post swift-container
%_init_enable gluster-swift-container
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_enable gluster-swift-container-replicator
%_init_enable gluster-swift-container-auditor
%_init_enable gluster-swift-container-updater
%endif
%preun swift-container
if [ $1 = 0 ] ; then
%_init_stop gluster-swift-container
%_init_disable gluster-swift-container
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_stop gluster-swift-container-replicator
%_init_disable gluster-swift-container-replicator
%_init_stop gluster-swift-container-auditor
%_init_disable gluster-swift-container-auditor
%_init_stop gluster-swift-container-updater
%_init_disable gluster-swift-container-updater
%endif
fi
%postun swift-container
if [ "$1" -ge "1" ] ; then
if [ $1 -ge 1 ] ; then
%_init_restart gluster-swift-container
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_restart gluster-swift-container-replicator
%_init_restart gluster-swift-container-auditor
%_init_restart gluster-swift-container-updator
%endif
fi
@ -1183,18 +1367,36 @@ fi
%post swift-object
%_init_enable gluster-swift-object
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_enable gluster-swift-object-replicator
%_init_enable gluster-swift-object-auditor
%_init_enable gluster-swift-object-updater
%endif
%preun swift-object
if [ $1 = 0 ] ; then
%_init_stop gluster-swift-object
%_init_disable gluster-swift-object
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_stop gluster-swift-object-replicator
%_init_disable gluster-swift-object-replicator
%_init_stop gluster-swift-object-auditor
%_init_disable gluster-swift-object-auditor
%_init_stop gluster-swift-object-updater
%_init_disable gluster-swift-object-updater
%endif
fi
%postun swift-object
if [ "$1" -ge "1" ] ; then
if [ $1 -ge 1 ] ; then
%_init_restart gluster-swift-object
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_restart gluster-swift-object-replicator
%_init_restart gluster-swift-object-auditor
%_init_restart gluster-swift-object-updater
%endif
fi
@ -1204,35 +1406,51 @@ if [ -f /etc/swift/proxy-server.conf ]; then
echo "warning: /etc/swift/proxy-server.conf saved as /etc/swift/proxy-server.conf.rpmsave"
cp /etc/swift/proxy-server.conf /etc/swift/proxy-server.conf.rpmsave
fi
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
if [ -f /etc/swift/object-expirer.conf ]; then
echo "warning: /etc/swift/object-expirer.conf saved as /etc/swift/object-expirer.conf.rpmsave"
cp /etc/swift/object-expirer.conf /etc/swift/object-expirer.conf.rpmsave
fi
%endif
%post swift-proxy
%_init_enable gluster-swift-proxy
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_enable gluster-swift-object-expirer
%endif
%preun swift-proxy
if [ $1 = 0 ] ; then
%_init_stop gluster-swift-proxy
%_init_disable gluster-swift-proxy
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_stop gluster-swift-object-expirer
%_init_disable gluster-swift-object-expirer
%endif
fi
%postun swift-proxy
if [ "$1" -ge "1" ] ; then
if [ $1 -ge 1 ] ; then
%_init_restart gluster-swift-proxy
%if ( 0%{?fedora} && 0%{?fedora} > 18 )
%_init_restart gluster-swift-object-expirer
%endif
fi
%endif
%endif
%changelog
* Tue Jul 16 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.4.0-2
- tag /var/lib/glusterd/glusterd.info as %config
* Tue Jul 16 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.2-2
- tag /var/lib/glusterd/glusterd.info as %config
* Fri Jul 12 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.2.2-1
- GlusterFS-3.3.2 GA
* Fri Jul 12 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.4.0-1
- GlusterFS 3.4.0 GA
- GlusterFS 3.4.0 GA, glusterfs-3.4.0-1
* Mon Jul 8 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.4.0-0.9.beta4
- add Obsolete: glusterfs-swift where we use openstack-swift
@ -1269,9 +1487,6 @@ fi
* Fri May 24 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.4.0-0.5.beta2
- prerelease 3.4.0beta2 for oVirt/vdsm dependencies in Fedora19
* Mon May 13 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.3.1-15
- hardened build, i.e. PIE. RHBZ 955283
* Thu May 9 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.4.0-0.4.beta1
- prerelease 3.4.0beta1 for oVirt/vdsm dependencies in Fedora19
@ -1296,7 +1511,7 @@ fi
- prerelease 3.4.0alpha3 for oVirt/vdsm dependencies in Fedora19
* Wed Apr 17 2013 Niels de Vos <devos@fedoraproject.org> - 3.3.1-13
- remove unused requires for xlator .so files and private libraries (RHBZ#952122)
- remove unused requires for xlator .so files and private libraries (RHBZ#95212
* Mon Apr 15 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.3.1-12
- add glusterfs-3.3.1.rpc.rpcxprt.rdma.name.c.patch, BZ 920332
@ -1305,7 +1520,6 @@ fi
* Mon Apr 15 2013 Niels de Vos <devos@fedoraproject.org>
- Remove useless provides for xlator .so files and private libraries
(3.4.x)
* Wed Apr 10 2013 Kaleb S. KEITHLEY <kkeithle[at]redhat.com> - 3.4.0-0.1alpha2
- prerelease 3.4.0alpha2 for oVirt/vdsm dependencies in Fedora19

View File

@ -1,3 +1,3 @@
963ffa93a8e24d4e1aec2e1b68cb90b7 glusterfs-3.3.2.tar.gz
1cfb85335eafc4317414736477d47dfc swift-1.7.4.tar.gz
c1041b0551be722363f18f3a5664d0cf gluster-swift-ufo-1.1.tar.gz
86d9aff765b6ac49f8b19e6ffad6adf9 glusterfs-3.4.0.tar.gz
0d2479c3cbb124fa3a6b001d0d4d5a8b swift-1.8.0.tar.gz
614628f29cd47fba95d1530363d7900b gluster-swift-ufo-1.2.tar.gz