summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Thode <prometheanfire@gentoo.org>2015-04-14 23:01:37 +0000
committerMatt Thode <prometheanfire@gentoo.org>2015-04-14 23:01:37 +0000
commit573d52e8fe94009517a1ff2af3d7085433c1d569 (patch)
tree3585413a6074d291cd3a33985055664372557ed9
parentAdd fix from upstream. (diff)
downloadhistorical-573d52e8fe94009517a1ff2af3d7085433c1d569.tar.gz
historical-573d52e8fe94009517a1ff2af3d7085433c1d569.tar.bz2
historical-573d52e8fe94009517a1ff2af3d7085433c1d569.zip
I removed a stable version accidentially, readding til sec bug fast stablizes the revbump mgorny mgorny mgorny
Package-Manager: portage-2.2.14/cvs/Linux x86_64 RepoMan-Options: --force Manifest-Sign-Key: 0x33ED3FD25AFC78BA
-rw-r--r--dev-python/python-keystoneclient/ChangeLog10
-rw-r--r--dev-python/python-keystoneclient/Manifest32
-rw-r--r--dev-python/python-keystoneclient/files/keystoneclient-1.0.0-cve-2015-1852.patch63
-rw-r--r--dev-python/python-keystoneclient/python-keystoneclient-1.0.0-r1.ebuild101
-rw-r--r--dev-python/python-keystoneclient/python-keystoneclient-1.0.0.ebuild96
5 files changed, 287 insertions, 15 deletions
diff --git a/dev-python/python-keystoneclient/ChangeLog b/dev-python/python-keystoneclient/ChangeLog
index db6e310bb02b..db0f2cc33af9 100644
--- a/dev-python/python-keystoneclient/ChangeLog
+++ b/dev-python/python-keystoneclient/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-python/python-keystoneclient
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/python-keystoneclient/ChangeLog,v 1.48 2015/04/14 16:17:32 prometheanfire Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-python/python-keystoneclient/ChangeLog,v 1.49 2015/04/14 23:01:33 prometheanfire Exp $
+
+*python-keystoneclient-1.0.0-r1 (14 Apr 2015)
+*python-keystoneclient-1.0.0 (14 Apr 2015)
+
+ 14 Apr 2015; Matthew Thode <prometheanfire@gentoo.org>
+ +files/keystoneclient-1.0.0-cve-2015-1852.patch,
+ +python-keystoneclient-1.0.0-r1.ebuild, +python-keystoneclient-1.0.0.ebuild:
+ backporting cve fix for fast stablization
*python-keystoneclient-1.3.0-r2 (14 Apr 2015)
diff --git a/dev-python/python-keystoneclient/Manifest b/dev-python/python-keystoneclient/Manifest
index 80cdfad4cc69..9508c712f6d4 100644
--- a/dev-python/python-keystoneclient/Manifest
+++ b/dev-python/python-keystoneclient/Manifest
@@ -2,24 +2,28 @@
Hash: SHA256
AUX cve-2015-1852-master-keystoneclient.patch 3303 SHA256 e1f742aff5e763f0061672c1329f699cc9120c9a03467b40658f3c3460c25a0a SHA512 ff65dd7d9da92e4d58a158177a370c9c8c2d60c9e54bc78184d1587667f4609325bf0185e3f1ea137ef9084f98c3cbd379b7def215eb4f70d72be65424d13a27 WHIRLPOOL 4631705c1fb320dfe337dd8eeed95818b8926564da148fb4a4773912574f7a4a23f083ea20f066e2369ce2158848d9e181d9c366290febbcecb8d6803c82e781
+AUX keystoneclient-1.0.0-cve-2015-1852.patch 2648 SHA256 957022dc28449852a9ef40d93d276b1450bdc6c87ca23dfe1d162d2e11a01f20 SHA512 0af0e143cddfb4d44f9a26dccf3963963ffc836bcf74bb9200d6d841efb8a48f322b2e3e2282791c15205e552530f793790fecc812256ed6dc195aa61e62c911 WHIRLPOOL 0b48200f8d2c5f327aaf5f3f5f7e0a23f39569b989694582180611d52fd4d0b2bb2dd44824418acd80a02d6e0a82f9d536170c0f8942921430a907c17e53919b
+DIST python-keystoneclient-1.0.0.tar.gz 314308 SHA256 6d960d2196efc7a181519a77f757a27ceeeac71f41f624318ae7f1088d2e6db4 SHA512 331d1f634c06f142628c6c641e49a75ca721eb6a37e11827b12db293eeef3e39e9565b38db27d9e39464ef80f5a6d1da2b4e0365dc2eba2b22f63abe0b2992fc WHIRLPOOL abd1173e4caf31ffdef01e7a5f13869dcea4d8c053805ec995b675a46350f2c2a8d5c6d692127a048690b018c3785dc005d6c752df86277dc04873a4daa19525
DIST python-keystoneclient-1.3.0.tar.gz 338528 SHA256 c009445d9a36fa788a14b093f67501091b246fefccb30fb63925e6e4fbeaac04 SHA512 51fd09419479ed00a9bd1785c0bf08cd7ee5393cb2eabba02558cf9828cbd9070f671377d759ff3dda0b675846f22dc8bb7419443e0b850c26f3263cd3b9b533 WHIRLPOOL 4f134aaefe9353382ab78a74109c139df55f9275cc2d932eae5cd8764e74f3b608fcf5bcfb659ac14504d87e944494b6a0221051dcf82a21bec109ddefeda7bf
+EBUILD python-keystoneclient-1.0.0-r1.ebuild 3204 SHA256 3bf0426cdc325f162ff5eb3015a6498b82fd4f668a98f7d6eb6ab6e244d9dbf7 SHA512 6212df99f457d00b4707f3f686fbd0d2a33de683adc834dc86bfc4848d0107e94fca920bf2af60b45f27dcc1db8e10478732d6d914f0949f5b74c6db162bc49f WHIRLPOOL c477c6e034bcf50797aa1c4e618d76433f51b741a77d60f314bb83a32b17228747bd351253751798659045694b9e5b34351d2c4f779778fcbdb1df7e0e82f7af
+EBUILD python-keystoneclient-1.0.0.ebuild 3098 SHA256 8b57a4850268d6752a59f2bdabe87ebd31fc7b47c688c2ce9b121edeeddb6211 SHA512 a1e965e9200dde35089290ff60e01bd2c54f37c922febd9a4ee263dda0deccb76d0e277f5da182125289c5b4eb51c233c1356710b2b7ff322209d7dbc3dc881a WHIRLPOOL 8b2aa61d9d509c0dd389d2e03d09308361289554f82a658f3ec12511415958edf6223a19e62941cd30ded49ba52d32e6c173a3e1bc2baee2c7e3548ab3b38e97
EBUILD python-keystoneclient-1.3.0-r2.ebuild 3130 SHA256 81ae36d6bb1f5771d16f91a80999c0de63c3776316f2cfdd0cc32b58f49fc30c SHA512 36f6c0e18f14c2231085c63cd94f695767089a2a510d2e79c9017cbf8da93cd3ee82f94bdd6eda5e8c8bef6207db8aabb2663c1c2436c676648ff491959aedb1 WHIRLPOOL c6ba85116c8b6b4b8ec9ac6b704eb968559be8edb847c46365ae7ccc5ad1159281446d5a066dbdadf3d1014f299c323138f8bf64534c33d9056eeadf68ea8a12
-MISC ChangeLog 10403 SHA256 5b34f96c7e7503764355bce7d9f3a2319440b0d9d547b110a971f553ebe7b64d SHA512 b20bee6ce0fb9342e273af520da52f9a91e7c04927d44ba0f61a12cc8ff572a05c8b9846d9dd79838b51a90f6edfdb18fb2f2e58e88e759e163f7b5c68b1041b WHIRLPOOL aab2d76ef2e5d80e8208d9cf49e4182c1da06c693e854f25b19f5a05e58a897afe9ea898314ee45e3bbb13a103dce1cbc02f5a68584ba1bd874f374837a9c079
+MISC ChangeLog 10725 SHA256 47613b9191dc617354d22dc60e08f737afb1a4a0686c5efebf9bb65e69795c4e SHA512 d3fada2ec4e564611f675102d653a0cc1c7ebd99fb4b6ec0da3a4db7ac8739afd8d7fff830959bc281fb88aab21b6d35bd9adc4a953296432210d3213f76402a WHIRLPOOL 14bc27e7275696094374f716d0283b88d213b7c3515efb6a973f0c4e2d33143fdea2e62c11087ecf7cc56534551e5b0767a6d21e6f5afc3d4754f5b68efdc095
MISC metadata.xml 368 SHA256 a91cef59b9f9006441eae6ac81afcf9efd4382762bcb6300f16046ba2851ce8d SHA512 6035564d5afb3100400c97ba1671a2ca65387a1fd67a77145ed3968c2ccadaa28eec54afa03b9ae67b1e69843275adbe92646dad8ffb9995d2270c85f94ca679 WHIRLPOOL 858f1f68eb57ac301bfa5bcf8db0f01853c5c1a612570f2e45a867fd16fddf84da77bff85441dec22df18634c56018874675d056f200e8336da9709d49d0ad48
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
-iQIcBAEBCAAGBQJVLT2nAAoJEGSje+quGaTor/IP/jTnhwHdlxtOk8sQIgTurhQj
-d+P+zERGQOBZCwmGgz9eFaqO2Mv2i+eWUDqfpT2yha9Tc/Zrjm4esO0zSlW7msqc
-jinxnm1MqzXLSN74HrOsTUvMVXB4Yv+SDrUm/D7RGNN+P6/Oxla9a5mxZg+yiwN5
-z9/4fuYxTHcjQZOiIkFZ/RezKVbS5SqgObxrg3RJbg94Q3w62kjeK2oQ4C07+nUp
-+ktNpa/zr0qO+CILK/3Je9wSXtAOOBdc942CleDui7zGOuDNdny/5ZZvUZN3O1Cv
-YwE0lSpA906dPAGSMM8t8P+cENuYUo1gmULMabjCUlTdfywF+Z77bAEhIqqqH8dr
-sPbrJxYFLNfGI/vqOGNFZgsnxdmQ2TQ8alAIxtGrvRV/Xjo+8a6XkX4ox/2REPHx
-EBzm8W9hHTzb40vNxmV+82MULZK9lX923oJpQkQ/fyv7qNdIW3xO9aYxBQgWwU7Y
-UIYs8phZNpxtdhSf2l6alEDgOnpHvVnur0BDEfBcBH+BEKSCgfcnJRcJ17Bp4OOT
-y0Wr4QWQSH8m96W0gXufsf+E1JorSvsx+m78vDcvVZhXkTHj32J6eHEWymhjVvFR
-9UUYhYJQxjE7EXlPbAbdRlAgpuNnyOF/j3gnaAFEv/EgmGqUEbW/OLPMXcvu6RCD
-G8GLO0CD9Q8IN33ZmLyo
-=iUTJ
+iQIcBAEBCAAGBQJVLZxYAAoJEGSje+quGaToxp8QAKwtzHXRCJiGLvZMpDnQur8Y
+G2MWQaGEBGurbesvO5/QVq1F1605V/Cs8dMhfFRv3LyqVN7Fo4gAfsah9PpG5JmO
+8Xuy27jQNukO88nT/7+o0xxYL+h/oEakgdtiCaKpCitZSHXVMaNMH0FebnaluX7V
+C1gYr1JXEEX6YJXoTFRWoNIWe8/xnkdt72XkhnujbPQlZexMshGvik5gwjy002Ok
+gOwrAnj6cnifl7X+dneYEEw8ou32jyV1Vt+7wGo4BcCuAo74UiWpVfkFphySC/z/
+Ak29x9xnGra9J52fRBLEirJc4e8iMQhV6f16QlEJW4jr0GBdclXoqHe8ivr6wuyN
+ehNT6GbiZgYMpBsG6sQliJB9fz92Dl+sPRSuLZReYB3vD2AKXfrOvGDIEo8iwLr2
+Ok/SrX8rcBcXDHc2RE95Z+Qxgea1SYOR+XldVJmEAY3oQ6Nx9NSYrofSeTw2nUt4
+l/0CTtWEBMv16StDAmwZPxUBCwgrdU3PCb709EBF3+Fpt2ICvEKS2D32sZqQCipg
+J97VVMVgczYoCbZjB3gwoeDlA5d9H0Mlor8PZ5jAJUQlMLWIMOfRDM1euhmwmbJy
+JWQONTy/kOo8MoiMllLzDr0ge1DFgLpK0t7DZ020yOwsznYUwSJWg60a+eSaBcM6
+5hZ15ztqaOCLrcIvsKIk
+=2J1L
-----END PGP SIGNATURE-----
diff --git a/dev-python/python-keystoneclient/files/keystoneclient-1.0.0-cve-2015-1852.patch b/dev-python/python-keystoneclient/files/keystoneclient-1.0.0-cve-2015-1852.patch
new file mode 100644
index 000000000000..4b278dfec033
--- /dev/null
+++ b/dev-python/python-keystoneclient/files/keystoneclient-1.0.0-cve-2015-1852.patch
@@ -0,0 +1,63 @@
+diff --git a/keystoneclient/middleware/s3_token.py b/keystoneclient/middleware/s3_token.py
+index b27b9ce..4ced7a7 100644
+--- a/keystoneclient/middleware/s3_token.py
++++ b/keystoneclient/middleware/s3_token.py
+@@ -34,6 +34,7 @@ This WSGI component:
+ import logging
+
+ from oslo.serialization import jsonutils
++from oslo_utils import strutils
+ import requests
+ import six
+ from six.moves import urllib
+@@ -116,7 +117,7 @@ class S3Token(object):
+ self.request_uri = '%s://%s:%s' % (auth_protocol, auth_host, auth_port)
+
+ # SSL
+- insecure = conf.get('insecure', False)
++ insecure = strutils.bool_from_string(conf.get('insecure', False))
+ cert_file = conf.get('certfile')
+ key_file = conf.get('keyfile')
+
+diff --git a/keystoneclient/tests/test_s3_token_middleware.py b/keystoneclient/tests/test_s3_token_middleware.py
+index ab77b79..91c3e81 100644
+--- a/keystoneclient/tests/test_s3_token_middleware.py
++++ b/keystoneclient/tests/test_s3_token_middleware.py
+@@ -124,7 +124,7 @@ class S3TokenMiddlewareTestGood(S3TokenMiddlewareTestBase):
+ @mock.patch.object(requests, 'post')
+ def test_insecure(self, MOCK_REQUEST):
+ self.middleware = (
+- s3_token.filter_factory({'insecure': True})(FakeApp()))
++ s3_token.filter_factory({'insecure': 'True'})(FakeApp()))
+
+ text_return_value = jsonutils.dumps(GOOD_RESPONSE)
+ if six.PY3:
+@@ -142,6 +142,28 @@ class S3TokenMiddlewareTestGood(S3TokenMiddlewareTestBase):
+ mock_args, mock_kwargs = MOCK_REQUEST.call_args
+ self.assertIs(mock_kwargs['verify'], False)
+
++ def test_insecure_option(self):
++ # insecure is passed as a string.
++
++ # Some non-secure values.
++ true_values = ['true', 'True', '1', 'yes']
++ for val in true_values:
++ config = {'insecure': val, 'certfile': 'false_ind'}
++ middleware = s3_token.filter_factory(config)(FakeApp())
++ self.assertIs(False, middleware.verify)
++
++ # Some "secure" values, including unexpected value.
++ false_values = ['false', 'False', '0', 'no', 'someweirdvalue']
++ for val in false_values:
++ config = {'insecure': val, 'certfile': 'false_ind'}
++ middleware = s3_token.filter_factory(config)(FakeApp())
++ self.assertEqual('false_ind', middleware.verify)
++
++ # Default is secure.
++ config = {'certfile': 'false_ind'}
++ middleware = s3_token.filter_factory(config)(FakeApp())
++ self.assertIs('false_ind', middleware.verify)
++
+
+ class S3TokenMiddlewareTestBad(S3TokenMiddlewareTestBase):
+ def setUp(self):
diff --git a/dev-python/python-keystoneclient/python-keystoneclient-1.0.0-r1.ebuild b/dev-python/python-keystoneclient/python-keystoneclient-1.0.0-r1.ebuild
new file mode 100644
index 000000000000..380076b5588c
--- /dev/null
+++ b/dev-python/python-keystoneclient/python-keystoneclient-1.0.0-r1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/python-keystoneclient/python-keystoneclient-1.0.0-r1.ebuild,v 1.1 2015/04/14 23:01:33 prometheanfire Exp $
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 python3_3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Client Library for OpenStack Identity"
+HOMEPAGE="https://github.com/openstack/python-keystoneclient"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc examples test"
+
+# Note: blacklist version not in portage:
+#doc? ( !~dev-python/sphinx-1.3_preb1[${PYTHON_USEDEP}] )
+
+CDEPEND="
+ >=dev-python/pbr-0.6[${PYTHON_USEDEP}]
+ !~dev-python/pbr-0.7[${PYTHON_USEDEP}]
+ <dev-python/pbr-1.0[${PYTHON_USEDEP}]
+"
+TCDEPEND="
+ >=dev-python/lxml-2.3[${PYTHON_USEDEP}]
+ >=dev-python/mock-1.0[${PYTHON_USEDEP}]
+ >=dev-python/mox3-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-0.5.1[${PYTHON_USEDEP}]
+ >=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
+"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}
+ test? (
+ ${TCDEPEND}
+ >=dev-python/coverage-3.6[${PYTHON_USEDEP}]
+ <dev-python/hacking-0.10[${PYTHON_USEDEP}]
+ >=dev-python/hacking-0.9.2[${PYTHON_USEDEP}]
+ >=dev-python/keyring-2.1[${PYTHON_USEDEP}]
+ !~dev-python/keyring-3.3[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pycrypto-2.6[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testtools-0.9.36[${PYTHON_USEDEP}]
+ !~dev-python/testtools-1.2.0[${PYTHON_USEDEP}]
+ )
+ doc? (
+ ${TCDEPEND}
+ >=dev-python/fixtures-0.3.14[${PYTHON_USEDEP}]
+ >=dev-python/oslo-sphinx-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}]
+ !~dev-python/sphinx-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/sphinx-1.3[${PYTHON_USEDEP}]
+ )
+"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-1.3[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.9[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7[${PYTHON_USEDEP}]
+ <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.2.0[${PYTHON_USEDEP}]
+ !~dev-python/requests-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.1.0[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+"${FILESDIR}/keystoneclient-1.0.0-cve-2015-1852.patch"
+)
+
+python_prepare_all() {
+ use doc && esetup.py build_sphinx
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ local DISTUTILS_NO_PARALLEL_BUILD=TRUE
+
+ rm -rf .testrepository || die "couldn't remove '.testrepository' under ${EPYTHON}"
+
+ testr init || die "testr init failed under ${EPYTHON}"
+ testr run || die "testr run failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/build/html/. )
+ use examples && local EXAMPLES=( examples/. )
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/python-keystoneclient/python-keystoneclient-1.0.0.ebuild b/dev-python/python-keystoneclient/python-keystoneclient-1.0.0.ebuild
new file mode 100644
index 000000000000..c59503722b45
--- /dev/null
+++ b/dev-python/python-keystoneclient/python-keystoneclient-1.0.0.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/python-keystoneclient/python-keystoneclient-1.0.0.ebuild,v 1.5 2015/04/14 23:01:33 prometheanfire Exp $
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 python3_3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Client Library for OpenStack Identity"
+HOMEPAGE="https://github.com/openstack/python-keystoneclient"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="doc examples test"
+
+# Note: blacklist version not in portage:
+#doc? ( !~dev-python/sphinx-1.3_preb1[${PYTHON_USEDEP}] )
+
+CDEPEND="
+ >=dev-python/pbr-0.6[${PYTHON_USEDEP}]
+ !~dev-python/pbr-0.7[${PYTHON_USEDEP}]
+ <dev-python/pbr-1.0[${PYTHON_USEDEP}]
+"
+TCDEPEND="
+ >=dev-python/lxml-2.3[${PYTHON_USEDEP}]
+ >=dev-python/mock-1.0[${PYTHON_USEDEP}]
+ >=dev-python/mox3-0.7.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-0.5.1[${PYTHON_USEDEP}]
+ >=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
+"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}
+ test? (
+ ${TCDEPEND}
+ >=dev-python/coverage-3.6[${PYTHON_USEDEP}]
+ <dev-python/hacking-0.10[${PYTHON_USEDEP}]
+ >=dev-python/hacking-0.9.2[${PYTHON_USEDEP}]
+ >=dev-python/keyring-2.1[${PYTHON_USEDEP}]
+ !~dev-python/keyring-3.3[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pycrypto-2.6[${PYTHON_USEDEP}]
+ >=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
+ >=dev-python/testtools-0.9.36[${PYTHON_USEDEP}]
+ !~dev-python/testtools-1.2.0[${PYTHON_USEDEP}]
+ )
+ doc? (
+ ${TCDEPEND}
+ >=dev-python/fixtures-0.3.14[${PYTHON_USEDEP}]
+ >=dev-python/oslo-sphinx-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}]
+ !~dev-python/sphinx-1.2.0[${PYTHON_USEDEP}]
+ <dev-python/sphinx-1.3[${PYTHON_USEDEP}]
+ )
+"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-1.3[${PYTHON_USEDEP}]
+ >=dev-python/iso8601-0.1.9[${PYTHON_USEDEP}]
+ >=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/prettytable-0.7[${PYTHON_USEDEP}]
+ <dev-python/prettytable-0.8[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.2.0[${PYTHON_USEDEP}]
+ !~dev-python/requests-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.1.0[${PYTHON_USEDEP}]
+"
+
+python_prepare_all() {
+ use doc && esetup.py build_sphinx
+}
+
+python_test() {
+ local DISTUTILS_NO_PARALLEL_BUILD=TRUE
+
+ rm -rf .testrepository || die "couldn't remove '.testrepository' under ${EPYTHON}"
+
+ testr init || die "testr init failed under ${EPYTHON}"
+ testr run || die "testr run failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/build/html/. )
+ use examples && local EXAMPLES=( examples/. )
+
+ distutils-r1_python_install_all
+}