forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
2 changed files
with
126 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST swift-2.5.0.tar.gz 1524422 SHA256 ede167854a47577ebd98765cf31476f79045f0739fab65f59b37e0ec184d4a42 SHA512 770d1aeb62803288b29edbac7576a8e870f09df5d111ba29d4845c755d65d66b501c9e95d6468e0c635625f04b7009fa2b6d769307348b66984f5cf5ea3481ed WHIRLPOOL ba00f4350c0f2b645f595b1dde8974dfdadcd66f33184776f478db123ec4dd5bb3c1e6cbe42b8cfb856391ceb6da3d1f212ceb3428280195c1993d2146ece435 | ||
DIST swift-2.7.0.tar.gz 1685470 SHA256 ef71126c2fb5e59617b94179dff710c5362ca7e7bfc63fd906e622c95410256e SHA512 4b4944dac53f521ffafe2d16072eb9c51f211e849243df413ee2af81da02917d334b169dc56ba8b17b9d22056a63f78096f680b4163e27c3f90b061023f4fffa WHIRLPOOL 8df84e1aa1a7c9fdae553952eafed3467b09f3b88c95355baf4f90a2e13dffd7d94b9bf7194d0cdbf17fe49196b88b53408c1bc2ce174674faac871acc1ca92a |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,125 @@ | ||
# Copyright 1999-2016 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=5 | ||
PYTHON_COMPAT=( python2_7 ) | ||
|
||
inherit distutils-r1 eutils linux-info user | ||
|
||
DESCRIPTION="A highly available, distributed, and eventually consistent object/blob store" | ||
HOMEPAGE="https://launchpad.net/swift" | ||
SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz" | ||
|
||
LICENSE="Apache-2.0" | ||
SLOT="0" | ||
KEYWORDS="~amd64 ~arm64 ~x86" | ||
IUSE="proxy account container object test +memcached" | ||
REQUIRED_USE="|| ( proxy account container object )" | ||
|
||
CDEPEND=" | ||
>=dev-python/pbr-0.8.0[${PYTHON_USEDEP}] | ||
<dev-python/pbr-2.0[${PYTHON_USEDEP}]" | ||
DEPEND=" | ||
dev-python/setuptools[${PYTHON_USEDEP}] | ||
${CDEPEND} | ||
test? ( | ||
${RDEPEND} | ||
dev-python/coverage[${PYTHON_USEDEP}] | ||
dev-python/nose[${PYTHON_USEDEP}] | ||
dev-python/nosexcover[${PYTHON_USEDEP}] | ||
dev-python/nosehtmloutput[${PYTHON_USEDEP}] | ||
dev-python/oslo-sphinx[${PYTHON_USEDEP}] | ||
>=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}] | ||
<dev-python/sphinx-1.2[${PYTHON_USEDEP}] | ||
>=dev-python/mock-1.0[${PYTHON_USEDEP}] | ||
dev-python/python-swiftclient[${PYTHON_USEDEP}] | ||
>=dev-python/python-keystoneclient-1.3.0[${PYTHON_USEDEP}] | ||
>=dev-python/bandit-0.10.1[${PYTHON_USEDEP}] | ||
)" | ||
|
||
RDEPEND=" | ||
${CDEPEND} | ||
virtual/python-dnspython[${PYTHON_USEDEP}] | ||
>=dev-python/eventlet-0.17.4[${PYTHON_USEDEP}] | ||
>=dev-python/greenlet-0.3.1[${PYTHON_USEDEP}] | ||
>=dev-python/netifaces-0.5[${PYTHON_USEDEP}] | ||
!~dev-python/netifaces-0.10.0[${PYTHON_USEDEP}] | ||
!~dev-python/netifaces-0.10.1[${PYTHON_USEDEP}] | ||
>=dev-python/pastedeploy-1.3.3[${PYTHON_USEDEP}] | ||
>=dev-python/six-1.9.0[${PYTHON_USEDEP}] | ||
dev-python/pyxattr[${PYTHON_USEDEP}] | ||
>=dev-python/PyECLib-1.2.0[${PYTHON_USEDEP}] | ||
memcached? ( net-misc/memcached ) | ||
net-misc/rsync[xattr]" | ||
|
||
CONFIG_CHECK="~EXT3_FS_XATTR ~SQUASHFS_XATTR ~CIFS_XATTR ~JFFS2_FS_XATTR | ||
~TMPFS_XATTR ~UBIFS_FS_XATTR ~EXT2_FS_XATTR ~REISERFS_FS_XATTR ~EXT4_FS_XATTR | ||
~ZFS" | ||
|
||
PATCHES=( | ||
"${FILESDIR}/cve-2016-0738-stable-liberty.patch" | ||
) | ||
|
||
pkg_setup() { | ||
enewuser swift | ||
enewgroup swift | ||
} | ||
|
||
src_prepare() { | ||
sed -i 's/xattr/pyxattr/g' swift.egg-info/requires.txt || die | ||
sed -i 's/xattr/pyxattr/g' requirements.txt || die | ||
sed -i '/^hacking/d' test-requirements.txt || die | ||
distutils-r1_python_prepare_all | ||
} | ||
|
||
src_test () { | ||
# https://bugs.launchpad.net/swift/+bug/1249727 | ||
find . \( -name test_wsgi.py -o -name test_locale.py -o -name test_utils.py \) -delete || die | ||
SKIP_PIP_INSTALL=1 PBR_VERSION=0.6.0 sh .unittests || die | ||
} | ||
|
||
python_install() { | ||
distutils-r1_python_install | ||
keepdir /etc/swift | ||
insinto /etc/swift | ||
|
||
newins "etc/swift.conf-sample" "swift.conf" | ||
newins "etc/rsyncd.conf-sample" "rsyncd.conf" | ||
newins "etc/mime.types-sample" "mime.types-sample" | ||
newins "etc/memcache.conf-sample" "memcache.conf-sample" | ||
newins "etc/drive-audit.conf-sample" "drive-audit.conf-sample" | ||
newins "etc/dispersion.conf-sample" "dispersion.conf-sample" | ||
|
||
if use proxy; then | ||
newinitd "${FILESDIR}/swift-proxy.initd" "swift-proxy" | ||
newins "etc/proxy-server.conf-sample" "proxy-server.conf" | ||
if use memcached; then | ||
sed -i '/depend/a\ | ||
need memcached' "${D}/etc/init.d/swift-proxy" | ||
fi | ||
fi | ||
if use account; then | ||
newinitd "${FILESDIR}/swift-account.initd" "swift-account" | ||
newins "etc/account-server.conf-sample" "account-server.conf" | ||
fi | ||
if use container; then | ||
newinitd "${FILESDIR}/swift-container.initd" "swift-container" | ||
newins "etc/container-server.conf-sample" "container-server.conf" | ||
fi | ||
if use object; then | ||
newinitd "${FILESDIR}/swift-object.initd" "swift-object" | ||
newins "etc/object-server.conf-sample" "object-server.conf" | ||
newins "etc/object-expirer.conf-sample" "object-expirer.conf" | ||
fi | ||
|
||
fowners swift:swift "/etc/swift" || die "fowners failed" | ||
} | ||
|
||
pkg_postinst() { | ||
elog "Openstack swift will default to using insecure http unless a" | ||
elog "certificate is created in /etc/swift/cert.crt and the associated key" | ||
elog "in /etc/swift/cert.key. These can be created with the following:" | ||
elog " * cd /etc/swift" | ||
elog " * openssl req -new -x509 -nodes -out cert.crt -keyout cert.key" | ||
} |