summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Thode <prometheanfire@gentoo.org>2017-08-26 23:23:33 -0500
committerMatthew Thode <prometheanfire@gentoo.org>2017-08-26 23:25:32 -0500
commit617e2ab179e8964871780a91d0c3a3f03f531e75 (patch)
tree891c86e62d804c5a0c4116053dd948e2d72c2b66
parentdev-python/ldappool: 2.1.0 bup (diff)
downloadgentoo-617e2ab179e8964871780a91d0c3a3f03f531e75.tar.gz
gentoo-617e2ab179e8964871780a91d0c3a3f03f531e75.tar.bz2
gentoo-617e2ab179e8964871780a91d0c3a3f03f531e75.zip
sys-auth/keystone: PIKE
Package-Manager: Portage-2.3.6, Repoman-2.3.3
-rw-r--r--sys-auth/keystone/keystone-2017.2.9999.ebuild174
-rw-r--r--sys-auth/keystone/metadata.xml2
2 files changed, 175 insertions, 1 deletions
diff --git a/sys-auth/keystone/keystone-2017.2.9999.ebuild b/sys-auth/keystone/keystone-2017.2.9999.ebuild
new file mode 100644
index 000000000000..e9bfc0ef7fc0
--- /dev/null
+++ b/sys-auth/keystone/keystone-2017.2.9999.ebuild
@@ -0,0 +1,174 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5} )
+
+inherit distutils-r1 git-r3 user
+
+DESCRIPTION="The Openstack authentication, authorization, and service catalog"
+HOMEPAGE="https://launchpad.net/keystone"
+EGIT_REPO_URI="https://github.com/openstack/keystone.git"
+EGIT_BRANCH="stable/pike"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="+sqlite ldap memcached mongo mysql postgres test"
+REQUIRED_USE="|| ( mysql postgres sqlite )"
+
+CDEPEND=">=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/pbr-2.1.0"
+DEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ${CDEPEND}"
+RDEPEND="
+ ${CDEPEND}
+ >=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+ !~dev-python/Babel-2.4.0[${PYTHON_USEDEP}]
+ >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
+ >=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+ dev-python/paste[${PYTHON_USEDEP}]
+ >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/cryptography-1.6[${PYTHON_USEDEP}]
+ !~dev-python/cryptography-2.0[${PYTHON_USEDEP}]
+ >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+ sqlite? (
+ >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[sqlite,${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[sqlite,${PYTHON_USEDEP}]
+ )
+ mysql? (
+ >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+ !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
+ )
+ postgres? (
+ >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.5[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.6[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.7[${PYTHON_USEDEP}]
+ !~dev-python/sqlalchemy-1.1.8[${PYTHON_USEDEP}]
+ )
+ >=dev-python/sqlalchemy-migrate-0.11.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+ >=dev-python/passlib-1.7.0[${PYTHON_USEDEP}]
+ >=dev-python/python-keystoneclient-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
+ >=dev-python/bcrypt-3.1.3[${PYTHON_USEDEP}]
+ >=dev-python/scrypt-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-4.0.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-4.3.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-config-4.4.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.14.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-messaging-5.24.2[${PYTHON_USEDEP}]
+ !~dev-python/oslo-messaging-5.25.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.24.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-i18n-3.15.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-log-3.22.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-middleware-3.27.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-policy-1.23.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+ !~dev-python/oslo-serialization-1.19.1[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.20.0[${PYTHON_USEDEP}]
+ >=dev-python/oauthlib-0.6.0[${PYTHON_USEDEP}]
+ >=dev-python/pysaml2-2.4.0[${PYTHON_USEDEP}]
+ <dev-python/pysaml2-4.0.3[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.6.2[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-2.0.0[${PYTHON_USEDEP}]
+ !~dev-python/jsonschema-2.5.0[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/pycadf-1.1.0[${PYTHON_USEDEP}]
+ !~dev-python/pycadf-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/msgpack-0.4.0[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
+ memcached? (
+ >=dev-python/python-memcached-1.56[${PYTHON_USEDEP}]
+ )
+ mongo? (
+ >=dev-python/pymongo-3.0.2[${PYTHON_USEDEP}]
+ !~dev-python/pymongo-3.1[${PYTHON_USEDEP}]
+ )
+ ldap? (
+ >=dev-python/pyldap-2.4.20[${PYTHON_USEDEP}]
+ >=dev-python/ldappool-2.0.0[${PYTHON_USEDEP}]
+ )
+ || (
+ www-servers/uwsgi[python,${PYTHON_USEDEP}]
+ www-apache/mod_wsgi[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+ enewgroup keystone
+ enewuser keystone -1 -1 /var/lib/keystone keystone
+}
+
+python_prepare_all() {
+ # it's in git, but not in the tarball.....
+ sed -i '/^hacking/d' test-requirements.txt || die
+ mkdir -p ${PN}/tests/tmp/ || die
+ cp etc/keystone-paste.ini ${PN}/tests/tmp/ || die
+ sed -i 's|/usr/local|/usr|g' httpd/keystone-uwsgi-* || die
+ sed -i 's|python|python27|g' httpd/keystone-uwsgi-* || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ nosetests -I 'test_keystoneclient*' \
+ -e test_static_translated_string_is_Message \
+ -e test_get_token_id_error_handling \
+ -e test_provider_token_expiration_validation \
+ -e test_import --process-restartworker --process-timeout=60 || die "testsuite failed under python2.7"
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+
+ diropts -m 0750
+ keepdir /etc/keystone /var/log/keystone
+ insinto /etc/keystone
+ insopts -m0640 -okeystone -gkeystone
+ doins etc/keystone.conf.sample etc/logging.conf.sample
+ doins etc/default_catalog.templates
+ doins etc/policy.v3cloudsample.json etc/keystone-paste.ini
+ insinto /etc/keystone/httpd
+ doins httpd/*
+
+ fowners keystone:keystone /etc/keystone /etc/keystone/httpd /var/log/keystone
+}
+
+pkg_postinst() {
+ elog "You might want to run:"
+ elog "emerge --config =${CATEGORY}/${PF}"
+ elog "if this is a new install."
+ elog "If you have not already configured your openssl installation"
+ elog "please do it by modifying /etc/ssl/openssl.cnf"
+ elog "BEFORE issuing the configuration command."
+ elog "Otherwise default values will be used."
+}
+
+pkg_config() {
+ if [ ! -d "${ROOT}"/etc/keystone/ssl ] ; then
+ einfo "Press ENTER to configure the keystone PKI, or Control-C to abort now..."
+ read
+ "${ROOT}"/usr/bin/keystone-manage pki_setup --keystone-user keystone --keystone-group keystone
+ else
+ einfo "keystone PKI certificates directory already present, skipping configuration"
+ fi
+}
diff --git a/sys-auth/keystone/metadata.xml b/sys-auth/keystone/metadata.xml
index c0df6818866e..c8aa1a2542f0 100644
--- a/sys-auth/keystone/metadata.xml
+++ b/sys-auth/keystone/metadata.xml
@@ -15,7 +15,7 @@
</maintainer>
<longdescription lang="en">
Keystone is the Openstack authentication, authorization, and service
- catalog written in Python.
+ catalog written in Python.
</longdescription>
<upstream>
<remote-id type="launchpad">keystone</remote-id>