From b54a183dd82914e18bd3ddaae8605e029c4ad14d Mon Sep 17 00:00:00 2001
From: Matthew Thode <prometheanfire@gentoo.org>
Date: Fri, 30 Sep 2016 18:43:23 -0500
Subject: openstack p2, newton is done, will add heat later

---
 sys-cluster/cinder/Manifest                        |   3 +
 sys-cluster/cinder/cinder-2016.1.9999.ebuild       |   2 +-
 sys-cluster/cinder/cinder-2016.2.9999.ebuild       | 195 ++++++++++++++++++
 sys-cluster/cinder/cinder-8.1.0.ebuild             |   2 +-
 sys-cluster/cinder/cinder-8.1.1.ebuild             |   2 +-
 sys-cluster/neutron/Manifest                       |   2 +
 sys-cluster/neutron/neutron-2016.2.9999.ebuild     | 228 +++++++++++++++++++++
 sys-cluster/nova/Manifest                          |   1 +
 sys-cluster/nova/nova-2016.2.9999.ebuild           | 216 +++++++++++++++++++
 .../openstack-meta-2016.1.9999.ebuild              |   4 +-
 .../openstack-meta-2016.2.9999.ebuild              |  23 +++
 11 files changed, 673 insertions(+), 5 deletions(-)
 create mode 100644 sys-cluster/cinder/cinder-2016.2.9999.ebuild
 create mode 100644 sys-cluster/neutron/neutron-2016.2.9999.ebuild
 create mode 100644 sys-cluster/nova/nova-2016.2.9999.ebuild
 create mode 100644 sys-cluster/openstack-meta/openstack-meta-2016.2.9999.ebuild

(limited to 'sys-cluster')

diff --git a/sys-cluster/cinder/Manifest b/sys-cluster/cinder/Manifest
index 423c9d84f466..d46763c57bbf 100644
--- a/sys-cluster/cinder/Manifest
+++ b/sys-cluster/cinder/Manifest
@@ -4,3 +4,6 @@ DIST mitaka-cinder-api-paste.ini 2416 SHA256 3794a5e34dace60474274e93a7346662eb0
 DIST mitaka-cinder-policy.json 4959 SHA256 5a9cd9d5d4cf80a9271fd7a5146d6d5415d10f8d699a8499a39a3cde29f50bd6 SHA512 b36daa51ab7719e1a56ca760e7ec62a98fb3a88ffed96196852023abf4ffe483200c9dcb934e3c7910fc6988f9c2bb9bb914121d0d649dc3b01466f467a82fe2 WHIRLPOOL f288b6dba2593fa6deb8ad94862948899ec10f71e4751f108ec1fbfff814c3206b5c541aaac0bb7edd2fb5311639a1cd3a44586855912cb2e0e675d5ad78161c
 DIST mitaka-cinder-volume.filters 9819 SHA256 20e4833aaf18b6be247e8ea2a0f63cc509ed595ea799c3ccfbcc1d0afc5bf9d8 SHA512 7b7aacdd843b960ed075b466e0bd7d2973a7733e7db63b4cb02df4b824a9528f6b7074870bf0048674e600bed983bc66caa1914963fff4aed00e8ab40e2ef600 WHIRLPOOL 32fb88041b8f38c821896d82139ea712ea0fc0a71bd6154e31887e85baf58d80b2c8bfd6c60b21613e522fe32fb022078091fcdc74110e5c9968826ae218c085
 DIST mitaka-cinder.conf.sample 125293 SHA256 458d51db85e57beebbe054f60fccd2c159d70d7d31730558b7b3be36f7db4bef SHA512 0293211844321378843da79c5680d403c8e01fa8582d1d2b3e9e2a90548f39de949415e722039f3782cf8c96145a6de23a6db008d2eeea0c7bb56c45fd45ea4b WHIRLPOOL d71bd68a3bfb7527df1e20d4514904122acb0b598ee16dc248df8f0e633103eec1b88e73f6fa389692f65a57e1c5830eef513b2610e109bf440cb290b88ebe45
+DIST newton-cinder-policy.json 6412 SHA256 3a140134201452c52a97eae9f4c45ea30a3a21cc7a30ee619ed37ab0723b6479 SHA512 3473b5790487bd037d54e4a1a89bab9d145bc34d137d52da2b6b311d2dfee2344fec75c6c96bc518a3e0b175fbd6cde71fb546406c0ef835898e3c1c88eb6d56 WHIRLPOOL f34dc729425fd82ddd9905c675fca9b765b4535dc87ec9d94acd1781c331e466f8688aace4954532e376e704cf3f1c8f4103f22e6838d4403c10311358e1ed2b
+DIST newton-cinder-volume.filters 11025 SHA256 c36bdb9abb4d97350db9971dae1c44a713911920362a0c6c5bc3cfe2701dd4f6 SHA512 311a636180a18bb45867d55f9d33f1eff053cc7b278b41149c58a14450ff8e6d2016d749cc3fb81d1976c4ab78f7701a908bd9c81eb6e9da31c20820a4eaff3d WHIRLPOOL 7496fffec8e42eb1c3bea39563cef8d48cb607b7de1ba8a4ac9a831b6def3dcbcfdf7d485aa81f52aa9bdf7600a51ba07ff85fbf88c5c70091ad88f8c01ca37e
+DIST newton-cinder.conf.sample 50793 SHA256 5179c86590fb5c9477ec838f1ccb8cd9c481e8c31384eb7a012f296c68e0ddc1 SHA512 bf3b5fa262d7df57ca8a496724df449eb6c49ea951c1384b216af334db7cb948af5f7a5f24ddcebd4c80cca40da65e8aaa3a65f09ae2e184794ec1bf9bf466db WHIRLPOOL 7798325f7da5e236d49c8aec4218ef1e50e8e1bf8466f5fdb7b51844c5e6059868c9e4286afecefa637acd0e1df5315de2ac787947a31f4c51978529a54e1862
diff --git a/sys-cluster/cinder/cinder-2016.1.9999.ebuild b/sys-cluster/cinder/cinder-2016.1.9999.ebuild
index 4dcaa3101cbd..79b9d7568133 100644
--- a/sys-cluster/cinder/cinder-2016.1.9999.ebuild
+++ b/sys-cluster/cinder/cinder-2016.1.9999.ebuild
@@ -168,7 +168,7 @@ python_install() {
 	doins "etc/cinder/rootwrap.conf"
 	newins "${DISTDIR}/mitaka-cinder-api-paste.ini" "api-paste.ini"
 	newins "${DISTDIR}/mitaka-cinder-policy.json" "policy.json"
-	newins "${DISTDIR}/mitaka-cinder.conf.sample" "cidner.conf.sample"
+	newins "${DISTDIR}/mitaka-cinder.conf.sample" "cinder.conf.sample"
 	insinto /etc/cinder/rootwrap.d
 	newins "${DISTDIR}/mitaka-cinder-volume.filters" "volume.filters"
 
diff --git a/sys-cluster/cinder/cinder-2016.2.9999.ebuild b/sys-cluster/cinder/cinder-2016.2.9999.ebuild
new file mode 100644
index 000000000000..d9580fd641d1
--- /dev/null
+++ b/sys-cluster/cinder/cinder-2016.2.9999.ebuild
@@ -0,0 +1,195 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit distutils-r1 eutils git-r3 linux-info user
+
+DESCRIPTION="Cinder is the OpenStack Block storage service, a spin out of nova-volumes"
+HOMEPAGE="https://launchpad.net/cinder"
+SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/cinder/newton/cinder.conf.sample -> newton-cinder.conf.sample
+https://dev.gentoo.org/~prometheanfire/dist/openstack/cinder/newton/policy.json -> newton-cinder-policy.json
+https://dev.gentoo.org/~prometheanfire/dist/openstack/cinder/newton/volume.filters -> newton-cinder-volume.filters"
+EGIT_REPO_URI="https://github.com/openstack/cinder.git"
+EGIT_BRANCH="stable/newton"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="+api +scheduler +volume infiniband iscsi lio lvm mysql +memcached postgres rdma sqlite +tcp test +tgt"
+REQUIRED_USE="|| ( mysql postgres sqlite ) iscsi? ( || ( tgt lio ) ) infiniband? ( rdma )"
+
+CDEPEND=">=dev-python/pbr-1.6[${PYTHON_USEDEP}]"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+	${CDEPEND}
+	app-admin/sudo"
+
+RDEPEND="
+	${CDEPEND}
+	>=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+	>=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+	dev-python/enum34[$(python_gen_usedep 'python2_7')]
+	>=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+	>=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
+	>=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
+	>=dev-python/iso8601-0.1.11[${PYTHON_USEDEP}]
+	virtual/python-ipaddress[${PYTHON_USEDEP}]
+	>=dev-python/keystoneauth-2.10.0[${PYTHON_USEDEP}]
+	>=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+	!~dev-python/keystonemiddleware-4.1.0[${PYTHON_USEDEP}]
+	!~dev-python/keystonemiddleware-4.5.0[${PYTHON_USEDEP}]
+	>=dev-python/lxml-2.3[${PYTHON_USEDEP}]
+	>=dev-python/oauth2client-1.5.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-db-4.10.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-db-4.13.1[${PYTHON_USEDEP}]
+	>=dev-python/oslo-db-4.13.2[${PYTHON_USEDEP}]
+	>=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-messaging-5.2.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-policy-1.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-privsep-1.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-rootwrap-5.0.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-versionedobjects-1.13.0[${PYTHON_USEDEP}]
+	>=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+	>=dev-python/paramiko-2.0[${PYTHON_USEDEP}]
+	dev-python/paste[${PYTHON_USEDEP}]
+	>=dev-python/pastedeploy-1.5.0[${PYTHON_USEDEP}]
+	>=dev-python/pycrypto-2.6[${PYTHON_USEDEP}]
+	>=dev-python/pyparsing-2.0.1[${PYTHON_USEDEP}]
+	>=dev-python/python-barbicanclient-4.0.0[${PYTHON_USEDEP}]
+	>=dev-python/python-glanceclient-2.3.0[${PYTHON_USEDEP}]
+	!~dev-python/python-glanceclient-2.4.0[${PYTHON_USEDEP}]
+	>=dev-python/python-keystoneclient-2.0.0[${PYTHON_USEDEP}]
+	!~dev-python/python-keystoneclient-2.1.0[${PYTHON_USEDEP}]
+	>=dev-python/python-novaclient-2.29.0[${PYTHON_USEDEP}]
+	!~dev-python/python-novaclient-2.33.0[${PYTHON_USEDEP}]
+	>=dev-python/python-swiftclient-2.2.0[${PYTHON_USEDEP}]
+	>=dev-python/pytz-2013.6[${PYTHON_USEDEP}]
+	>=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
+	>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
+	!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
+	>=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+	!~dev-python/routes-2.0[${PYTHON_USEDEP}]
+	!~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+	!~dev-python/routes-2.3[${PYTHON_USEDEP}]
+	>=dev-python/taskflow-1.26.0[${PYTHON_USEDEP}]
+	>=dev-python/rtslib-fb-2.1.41[${PYTHON_USEDEP}]
+	>=dev-python/simplejson-2.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.0[sqlite,${PYTHON_USEDEP}]
+	)
+	mysql? (
+		dev-python/mysql-python
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	postgres? (
+		dev-python/psycopg:2
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	>=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+	>=dev-python/stevedore-1.16.0[${PYTHON_USEDEP}]
+	~dev-python/suds-0.6[${PYTHON_USEDEP}]
+	>=dev-python/webob-1.2.3-r1[${PYTHON_USEDEP}]
+	>=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-vmware-2.11.0[${PYTHON_USEDEP}]
+	>=dev-python/os-brick-1.6.1[${PYTHON_USEDEP}]
+	>=dev-python/os-win-0.2.3[${PYTHON_USEDEP}]
+	>=dev-python/tooz-1.28.0[${PYTHON_USEDEP}]
+	>=dev-python/google-api-python-client-1.4.2[${PYTHON_USEDEP}]
+	>=dev-python/castellan-0.4.0[${PYTHON_USEDEP}]
+	iscsi? (
+		tgt? ( sys-block/tgt )
+		lio? (
+			sys-block/targetcli
+			sys-block/lio-utils
+		)
+		sys-block/open-iscsi
+	)
+	lvm? ( sys-fs/lvm2 )
+	memcached? ( net-misc/memcached )
+	app-emulation/qemu
+	sys-fs/sysfsutils"
+# qemu is needed for image conversion
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+	linux-info_pkg_setup
+	CONFIG_CHECK_MODULES=""
+	if use tcp; then
+		CONFIG_CHECK_MODULES+="SCSI_ISCSI_ATTRS ISCSI_TCP "
+	fi
+	if use rdma; then
+		CONFIG_CHECK_MODULES+="INFINIBAND_ISER "
+	fi
+	if use infiniband; then
+		CONFIG_CHECK_MODULES+="INFINIBAND_IPOIB INFINIBAND_USER_MAD INFINIBAND_USER_ACCESS"
+	fi
+	if linux_config_exists; then
+		for module in ${CONFIG_CHECK_MODULES}; do
+			linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled"
+		done
+	fi
+	enewgroup cinder
+	enewuser cinder -1 -1 /var/lib/cinder cinder
+}
+
+python_prepare_all() {
+	sed -i '/^hacking/d' test-requirements.txt || die
+	distutils-r1_python_prepare_all
+}
+
+python_test() {
+	# Let's track progress of this # https://bugs.launchpad.net/swift/+bug/1249727
+	nosetests -I test_wsgi.py cinder/tests/ || die "tests failed under python2.7"
+}
+
+python_install() {
+	distutils-r1_python_install
+	keepdir /etc/cinder
+	dodir /etc/cinder/rootwrap.d
+
+	for svc in api scheduler volume; do
+		newinitd "${FILESDIR}/cinder.initd" cinder-${svc}
+	done
+
+	insinto /etc/cinder
+	insopts -m0640 -o cinder -g cinder
+	doins "etc/cinder/api-httpd.conf"
+	doins "etc/cinder/logging_sample.conf"
+	doins "etc/cinder/rootwrap.conf"
+	doins "etc/cinder/api-paste.ini"
+	newins "${DISTDIR}/newton-cinder-policy.json" "policy.json"
+	newins "${DISTDIR}/newton-cinder.conf.sample" "cinder.conf.sample"
+	insinto /etc/cinder/rootwrap.d
+	newins "${DISTDIR}/newton-cinder-volume.filters" "volume.filters"
+
+	dodir /var/log/cinder
+	fowners cinder:cinder /var/log/cinder
+
+	#add sudoers definitions for user nova
+	insinto /etc/sudoers.d/
+	insopts -m 0440 -o root -g root
+	newins "${FILESDIR}/cinder.sudoersd" cinder
+}
+
+pkg_postinst() {
+	if use iscsi ; then
+		elog "Cinder needs tgtd to be installed and running to work with iscsi"
+		elog "it also needs 'include /var/lib/cinder/volumes/*' in /etc/tgt/targets.conf"
+	fi
+}
diff --git a/sys-cluster/cinder/cinder-8.1.0.ebuild b/sys-cluster/cinder/cinder-8.1.0.ebuild
index 6f7138cd1996..cad860847db3 100644
--- a/sys-cluster/cinder/cinder-8.1.0.ebuild
+++ b/sys-cluster/cinder/cinder-8.1.0.ebuild
@@ -161,7 +161,7 @@ python_install() {
 	doins "etc/cinder/rootwrap.conf"
 	newins "${DISTDIR}/mitaka-cinder-api-paste.ini" "api-paste.ini"
 	newins "${DISTDIR}/mitaka-cinder-policy.json" "policy.json"
-	newins "${DISTDIR}/mitaka-cinder.conf.sample" "cidner.conf.sample"
+	newins "${DISTDIR}/mitaka-cinder.conf.sample" "cinder.conf.sample"
 	insinto /etc/cinder/rootwrap.d
 	newins "${DISTDIR}/mitaka-cinder-volume.filters" "volume.filters"
 
diff --git a/sys-cluster/cinder/cinder-8.1.1.ebuild b/sys-cluster/cinder/cinder-8.1.1.ebuild
index 52e541f3e4bf..794ab97f0b90 100644
--- a/sys-cluster/cinder/cinder-8.1.1.ebuild
+++ b/sys-cluster/cinder/cinder-8.1.1.ebuild
@@ -161,7 +161,7 @@ python_install() {
 	doins "etc/cinder/rootwrap.conf"
 	newins "${DISTDIR}/mitaka-cinder-api-paste.ini" "api-paste.ini"
 	newins "${DISTDIR}/mitaka-cinder-policy.json" "policy.json"
-	newins "${DISTDIR}/mitaka-cinder.conf.sample" "cidner.conf.sample"
+	newins "${DISTDIR}/mitaka-cinder.conf.sample" "cinder.conf.sample"
 	insinto /etc/cinder/rootwrap.d
 	newins "${DISTDIR}/mitaka-cinder-volume.filters" "volume.filters"
 
diff --git a/sys-cluster/neutron/Manifest b/sys-cluster/neutron/Manifest
index 9c81cd350142..3f0bfa9a1530 100644
--- a/sys-cluster/neutron/Manifest
+++ b/sys-cluster/neutron/Manifest
@@ -1,5 +1,7 @@
 DIST neutron-8.2.0.tar.gz 2820699 SHA256 8d6edde5cacd5f77bf9f95c0ecee8acfcdceafa1ae4a2dd4ad3ea7ad7343811c SHA512 e7ec025678d23a13c7cbefa4a23f0a72afeefb7118f93419b8227d74de38661024d80a5797e0b67a0322dd5118010de3ef8c8a62106ea46cff4579f6f29f0d68 WHIRLPOOL e719d16d690cb6f0e99021854358758a1dc64c50239593785dae3313e1284068ada80566bb6f064666a2b140a64f988194d32d9ed0908575bbae651b5f5db0e5
 DIST neutron-configs-2016.1.9999.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
+DIST neutron-configs-2016.2.9999.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
 DIST neutron-configs-8.2.0.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
 DIST neutron-ml2-plugins-2016.1.9999.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
+DIST neutron-ml2-plugins-2016.2.9999.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
 DIST neutron-ml2-plugins-8.2.0.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
diff --git a/sys-cluster/neutron/neutron-2016.2.9999.ebuild b/sys-cluster/neutron/neutron-2016.2.9999.ebuild
new file mode 100644
index 000000000000..035a2c423587
--- /dev/null
+++ b/sys-cluster/neutron/neutron-2016.2.9999.ebuild
@@ -0,0 +1,228 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit distutils-r1 git-r3 linux-info user
+
+DESCRIPTION="A virtual network service for Openstack"
+HOMEPAGE="https://launchpad.net/neutron"
+SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/newton/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+	https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/newton/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz"
+EGIT_REPO_URI="https://github.com/openstack/neutron.git"
+EGIT_BRANCH="stable/newton"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="compute-only dhcp ipv6 l3 metadata openvswitch linuxbridge server sqlite mysql postgres"
+REQUIRED_USE="!compute-only? ( || ( mysql postgres sqlite ) )
+						compute-only? ( !mysql !postgres !sqlite !dhcp !l3 !metadata !server
+						|| ( openvswitch linuxbridge ) )"
+
+CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
+DEPEND="
+	dev-python/setuptools[${PYTHON_USEDEP}]
+	${CDEPEND}
+	app-admin/sudo"
+
+RDEPEND="
+	${CDEPEND}
+	dev-python/paste[${PYTHON_USEDEP}]
+	>=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
+	>=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+	!~dev-python/routes-2.0[${PYTHON_USEDEP}]
+	!~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+	!~dev-python/routes-2.3[${PYTHON_USEDEP}]
+	>=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+	>=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+	>=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
+	!~dev-python/pecan-1.0.2[${PYTHON_USEDEP}]
+	!~dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
+	!~dev-python/pecan-1.0.4[${PYTHON_USEDEP}]
+	>=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
+	>=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
+	>=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
+	>=dev-python/jinja-2.8[${PYTHON_USEDEP}]
+	>=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+	!=dev-python/keystonemiddleware-4.1.0[${PYTHON_USEDEP}]
+	!=dev-python/keystonemiddleware-4.5.0[${PYTHON_USEDEP}]
+	>=dev-python/netaddr-0.7.13[${PYTHON_USEDEP}]
+	!~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
+	>=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+	>=dev-python/neutron-lib-0.4.0[${PYTHON_USEDEP}]
+	>=dev-python/python-neutronclient-5.1.0[${PYTHON_USEDEP}]
+	>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
+	!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
+	>=dev-python/ryu-3.30[${PYTHON_USEDEP}]
+	!~dev-python/ryu-4.1[${PYTHON_USEDEP}]
+	!~dev-python/ryu-4.2[${PYTHON_USEDEP}]
+	!~dev-python/ryu-4.2.1[${PYTHON_USEDEP}]
+	!~dev-python/ryu-4.4[${PYTHON_USEDEP}]
+	compute-only? (
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	sqlite? (
+		>=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+	)
+	mysql? (
+		>=dev-python/pymysql-0.6.2[${PYTHON_USEDEP}]
+		!~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	postgres? (
+		>=dev-python/psycopg-2.5.0
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	>=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
+	>=dev-python/keystoneauth-2.10.0[${PYTHON_USEDEP}]
+	>=dev-python/alembic-0.8.4[${PYTHON_USEDEP}]
+	>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+	>=dev-python/stevedore-1.16.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-3.14.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-db-4.10.0[${PYTHON_USEDEP}]
+	!~dev-python/oslo-db-4.13.1[${PYTHON_USEDEP}]
+	!~dev-python/oslo-db-4.13.2[${PYTHON_USEDEP}]
+	>=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-messaging-5.2.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-policy-1.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-rootwrap-5.0.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-versionedobjects-1.13.0[${PYTHON_USEDEP}]
+	>=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+	>=dev-python/ovs-2.6.0[${PYTHON_USEDEP}]
+	>=dev-python/python-novaclient-2.29.0[${PYTHON_USEDEP}]
+	!~dev-python/python-novaclient-2.33.0[${PYTHON_USEDEP}]
+	>=dev-python/python-designateclient-1.5.0[${PYTHON_USEDEP}]
+	dev-python/pyudev[${PYTHON_USEDEP}]
+	sys-apps/iproute2
+	net-misc/bridge-utils
+	net-firewall/ipset
+	net-firewall/iptables
+	net-firewall/ebtables
+	net-firewall/conntrack-tools
+	openvswitch? ( <=net-misc/openvswitch-2.6.9999 )
+	ipv6? (
+		net-misc/radvd
+		>=net-misc/dibbler-1.0.1
+	)
+	dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+	linux-info_pkg_setup
+	CONFIG_CHECK_MODULES="VLAN_8021Q IP6_NF_FILTER IP6_NF_IPTABLES IP_NF_TARGET_REJECT \
+	IP_NF_MANGLE IP_NF_TARGET_MASQUERADE NF_NAT_IPV4 NF_CONNTRACK_IPV4 NF_DEFRAG_IPV4 \
+	NF_NAT_IPV4 NF_NAT NF_CONNTRACK IP_NF_FILTER IP_NF_IPTABLES NETFILTER_XTABLES"
+	if linux_config_exists; then
+		for module in ${CONFIG_CHECK_MODULES}; do
+			linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled in kernel"
+		done
+	fi
+	enewgroup neutron
+	enewuser neutron -1 -1 /var/lib/neutron neutron
+}
+
+pkg_config() {
+	fperms 0700 /var/log/neutron
+	fowners neutron:neutron /var/log neutron
+}
+
+src_prepare() {
+	sed -i '/^hacking/d' test-requirements.txt || die
+	# it's /bin/ip not /sbin/ip
+	sed -i 's/sbin\/ip\,/bin\/ip\,/g' etc/neutron/rootwrap.d/* || die
+	distutils-r1_python_prepare_all
+}
+
+python_install() {
+	distutils-r1_python_install
+	if use server; then
+		newinitd "${FILESDIR}/neutron.initd" "neutron-server"
+		newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
+		dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
+	fi
+	if use dhcp; then
+		newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
+		newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
+	fi
+	if use l3; then
+		newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
+		newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
+	fi
+	if use metadata; then
+		newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
+		newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
+	fi
+	if use openvswitch; then
+		newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
+		newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
+		newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
+		newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
+	fi
+	if use linuxbridge; then
+		newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
+		newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd.liberty" "neutron-linuxbridge-agent"
+	fi
+	diropts -m 755 -o neutron -g neutron
+	dodir /var/log/neutron /var/lib/neutron
+	keepdir /etc/neutron
+	insinto /etc/neutron
+	insopts -m 0640 -o neutron -g neutron
+
+	doins etc/*
+	# stupid renames
+	insinto /etc/neutron
+	doins -r "etc/neutron/plugins"
+	insopts -m 0640 -o root -g root
+	doins "etc/rootwrap.conf"
+	doins -r "etc/neutron/rootwrap.d"
+
+	insopts -m 0644
+	insinto "/usr/lib64/python2.7/site-packages/neutron/db/migration/alembic_migrations/"
+	doins -r "neutron/db/migration/alembic_migrations/versions"
+
+	#add sudoers definitions for user neutron
+	insinto /etc/sudoers.d/
+	insopts -m 0440 -o root -g root
+	newins "${FILESDIR}/neutron.sudoersd" neutron
+
+	# add generated configs
+	cd "${D}/etc/neutron" || die
+	unpack "neutron-configs-${PV}.tar.gz"
+	cd "${D}/etc/neutron/plugins/ml2" || die
+	unpack "neutron-ml2-plugins-${PV}.tar.gz"
+
+	# correcting perms
+	fowners neutron:neutron -R "/etc/neutron"
+	fperms o-rwx -R "/etc/neutron/"
+
+	#remove superfluous stuff
+	rm -R "${D}/usr/etc/"
+}
+
+pkg_postinst() {
+	elog
+	elog "neutron-server's conf.d file may need updating to include additional ini files"
+	elog "We currently assume the ml2 plugin will be used but do not make assumptions"
+	elog "on if you will use openvswitch or linuxbridge (or something else)"
+	elog
+	elog "Other conf.d files may need updating too, but should be good for the default use case"
+	elog
+}
diff --git a/sys-cluster/nova/Manifest b/sys-cluster/nova/Manifest
index 30cb67ee070e..3a20fc275a89 100644
--- a/sys-cluster/nova/Manifest
+++ b/sys-cluster/nova/Manifest
@@ -1,2 +1,3 @@
 DIST mitaka-nova.conf.sample 36427 SHA256 dd4c3ccab89fbe9f69df520f47d439c7ffa440d3f8b288b0ab99ac328a02ec75 SHA512 169671bde5cb5bb89065d801f80aa0d3c664af652d9ddb0c409ed3e0af2c0b94f1dbd0ebf834849e3e75dc38972935ec65a6e533d86148a7315839597d577cad WHIRLPOOL 20f95a296c3d112a532c9c5cc911d30b67472868d94bcfd52fadfd7105f9095a6b77020ca1caa6a70319548239358868d809feed363a82e4d574aceb6e5f016d
+DIST newton-nova.conf.sample 44496 SHA256 a7d9b95e67b77d0335edac760e037ad117d8c9f18c4792939ba8bb02739eae58 SHA512 ac917f0fed24c6705cbe43b4e1af31138bb656ea06f0cbe66d5b820677a47ca854abf6ca7fdf76a9a7f3a5afff758dac294ffd778d1bda82bb9f95c48d103d6e WHIRLPOOL 3c54dc8e4721f4289a8f64e9ac215c4b2e4b6afd2904fea4080659d3c292dcd942535d998b463efa4dd96a6090afb9830dfa6b9b3f2062439a8d03ec09356adc
 DIST nova-13.1.1.tar.gz 5407219 SHA256 1af74830f52deb24ca0f25acf150c2338a414ccd2082bbb31092d55d28a92a9d SHA512 18866a1fb9e1e94b91b27d72318401de755255be3b3fd374f156ccf88c84697a8f54b6f5be17842f55b5ff323f19d778213925dbeb4ae9c02225d2b3fb56b3cc WHIRLPOOL d5bd05f773b49cf309f02ea34c7d5cbbd82078a17a7aadc66ebd1ed9dd8180a036f31d74d27ea6f1af644eaa873e0e955a52b44ee66448ea93e0507561055d50
diff --git a/sys-cluster/nova/nova-2016.2.9999.ebuild b/sys-cluster/nova/nova-2016.2.9999.ebuild
new file mode 100644
index 000000000000..911dd686409b
--- /dev/null
+++ b/sys-cluster/nova/nova-2016.2.9999.ebuild
@@ -0,0 +1,216 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_4 )
+
+inherit distutils-r1 eutils git-r3 linux-info multilib user
+
+DESCRIPTION="Cloud computing fabric controller (main part of an IaaS system) in Python"
+HOMEPAGE="https://launchpad.net/nova"
+SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/nova/newton/nova.conf.sample -> newton-nova.conf.sample"
+EGIT_REPO_URI="https://github.com/openstack/nova.git"
+EGIT_BRANCH="stable/newton"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="+compute compute-only iscsi +memcached mysql +novncproxy openvswitch postgres +rabbitmq sqlite"
+REQUIRED_USE="
+	!compute-only? ( || ( mysql postgres sqlite ) )
+	compute-only? ( compute !rabbitmq !memcached !mysql !postgres !sqlite )"
+
+CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
+DEPEND="
+	>=dev-python/setuptools-16.0[${PYTHON_USEDEP}]
+	${CDEPEND}
+	app-admin/sudo"
+
+RDEPEND="
+	${CDEPEND}
+	compute-only? (
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	sqlite? (
+		>=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
+	)
+	mysql? (
+		>=dev-python/pymysql-0.6.2[${PYTHON_USEDEP}]
+		!~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	postgres? (
+		>=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+		>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
+		<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
+	)
+	>=dev-python/boto-2.32.1[${PYTHON_USEDEP}]
+	>=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+	>=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+	>=dev-python/jinja-2.8[${PYTHON_USEDEP}]
+	>=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
+	!~dev-python/keystonemiddleware-4.1.0[${PYTHON_USEDEP}]
+	!~dev-python/keystonemiddleware-4.5.0[${PYTHON_USEDEP}]
+	>=dev-python/lxml-2.3[${PYTHON_USEDEP}]
+	>=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
+	!~dev-python/routes-2.0[${PYTHON_USEDEP}]
+	!~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
+	!~dev-python/routes-2.3[${PYTHON_USEDEP}]
+	>=dev-python/cryptography-1.0[${PYTHON_USEDEP}]
+	!~dev-python/cryptography-1.3.0[${PYTHON_USEDEP}]
+	>=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
+	>=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
+	>=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
+	dev-python/paste[${PYTHON_USEDEP}]
+	>=dev-python/prettytable-0.7[${PYTHON_USEDEP}]
+	<dev-python/prettytable-0.8[${PYTHON_USEDEP}]
+	>=dev-python/sqlalchemy-migrate-0.9.6[${PYTHON_USEDEP}]
+	>=dev-python/netaddr-0.7.13[${PYTHON_USEDEP}]
+	!~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
+	>=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+	>=dev-python/paramiko-2.0[${PYTHON_USEDEP}]
+	>=dev-python/Babel-2.3.4[${PYTHON_USEDEP}]
+	>=dev-python/iso8601-0.1.11[${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/python-cinderclient-1.6.0[${PYTHON_USEDEP}]
+	!~dev-python/python-cinderclient-1.7.0[${PYTHON_USEDEP}]
+	!~dev-python/python-cinderclient-1.7.1[${PYTHON_USEDEP}]
+	>=dev-python/keystoneauth-2.10.0[${PYTHON_USEDEP}]
+	>=dev-python/python-neutronclient-5.1.0[${PYTHON_USEDEP}]
+	>=dev-python/python-glanceclient-2.3.0[${PYTHON_USEDEP}]
+	!~dev-python/python-glanceclient-2.4.0[${PYTHON_USEDEP}]
+	>=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
+	>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+	>=dev-python/stevedore-1.16.0[${PYTHON_USEDEP}]
+	>=dev-python/setuptools-16.0[${PYTHON_USEDEP}]
+	!~dev-python/setuptools-24.0.0[${PYTHON_USEDEP}]
+	>=dev-python/websockify-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-3.14.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-utils-3.16.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-db-4.10.0[${PYTHON_USEDEP}]
+	!~dev-python/oslo-db-4.13.1[${PYTHON_USEDEP}]
+	!~dev-python/oslo-db-4.13.2[${PYTHON_USEDEP}]
+	>=dev-python/oslo-rootwrap-5.0.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-messaging-5.2.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-policy-1.9.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
+	>=dev-python/rfc3986-0.2.2[${PYTHON_USEDEP}]
+	>=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+	>=dev-python/psutil-1.1.1[${PYTHON_USEDEP}]
+	<dev-python/psutil-2.0.0[${PYTHON_USEDEP}]
+	>=dev-python/oslo-versionedobjects-1.13.0[${PYTHON_USEDEP}]
+	>=dev-python/os-brick-1.6.1[${PYTHON_USEDEP}]
+	>=dev-python/os-vif-1.1.0[${PYTHON_USEDEP}]
+	>=dev-python/os-win-0.2.3[${PYTHON_USEDEP}]
+	>=dev-python/castellan-0.4.0[${PYTHON_USEDEP}]
+	>=dev-python/microversion-parse-0.1.2[${PYTHON_USEDEP}]
+	>=dev-python/wsgiintercept-0.6.1[${PYTHON_USEDEP}]
+	dev-python/libvirt-python[${PYTHON_USEDEP}]
+	app-emulation/libvirt[iscsi?]
+	novncproxy? ( www-apps/novnc )
+	sys-apps/iproute2
+	openvswitch? ( <=net-misc/openvswitch-2.5.9999 )
+	rabbitmq? ( net-misc/rabbitmq-server )
+	memcached? (
+		net-misc/memcached
+		>=dev-python/python-memcached-1.58
+	)
+	sys-fs/sysfsutils
+	sys-fs/multipath-tools
+	net-misc/bridge-utils
+	compute? (
+		app-cdr/cdrkit
+		sys-fs/dosfstools
+		app-emulation/qemu
+	)
+	iscsi? (
+		sys-fs/lsscsi
+		>=sys-block/open-iscsi-2.0.873-r2
+	)"
+
+#PATCHES=(
+#)
+
+pkg_setup() {
+	linux-info_pkg_setup
+	CONFIG_CHECK_MODULES="BLK_DEV_NBD VHOST_NET IP6_NF_FILTER IP6_NF_IPTABLES IP_NF_TARGET_REJECT \
+	IP_NF_MANGLE IP_NF_TARGET_MASQUERADE NF_NAT_IPV4 IP_NF_FILTER IP_NF_IPTABLES \
+	NF_CONNTRACK_IPV4 NF_DEFRAG_IPV4 NF_NAT_IPV4 NF_NAT NF_CONNTRACK NETFILTER_XTABLES \
+	ISCSI_TCP SCSI_DH DM_MULTIPATH DM_SNAPSHOT"
+	if linux_config_exists; then
+		for module in ${CONFIG_CHECK_MODULES}; do
+			linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled in kernel"
+		done
+	fi
+	enewgroup nova
+	enewuser nova -1 -1 /var/lib/nova nova
+}
+
+python_prepare_all() {
+	sed -i '/^hacking/d' test-requirements.txt || die
+	distutils-r1_python_prepare_all
+}
+
+python_install() {
+	distutils-r1_python_install
+
+	if use !compute-only; then
+		for svc in api cert conductor consoleauth network scheduler spicehtml5proxy xvpvncproxy; do
+			newinitd "${FILESDIR}/nova.initd" "nova-${svc}"
+		done
+	fi
+	use compute && newinitd "${FILESDIR}/nova.initd" "nova-compute"
+	use novncproxy && newinitd "${FILESDIR}/nova.initd" "nova-novncproxy"
+
+	diropts -m 0750 -o nova -g qemu
+	dodir /var/log/nova /var/lib/nova/instances
+	diropts -m 0750 -o nova -g nova
+
+	insinto /etc/nova
+	insopts -m 0640 -o nova -g nova
+	newins "${DISTDIR}/newton-nova.conf.sample" "nova.conf.sample"
+	doins "${S}/etc/nova/"*
+	#rootwrap filters
+	insopts -m 0644
+	insinto /etc/nova/rootwrap.d
+	doins "etc/nova/rootwrap.d/api-metadata.filters"
+	doins "etc/nova/rootwrap.d/compute.filters"
+	doins "etc/nova/rootwrap.d/network.filters"
+	#copy migration conf file (not coppied on install via setup.py script)
+	insinto /usr/$(get_libdir)/python2.7/site-packages/nova/db/sqlalchemy/migrate_repo/
+	doins "nova/db/sqlalchemy/migrate_repo/migrate.cfg"
+	#copy the CA cert dir (not coppied on install via setup.py script)
+	cp -R "${S}/nova/CA" "${D}/usr/$(get_libdir)/python2.7/site-packages/nova/" || die "installing CA files failed"
+
+	#add sudoers definitions for user nova
+	insinto /etc/sudoers.d/
+	insopts -m 0600 -o root -g root
+	doins "${FILESDIR}/nova-sudoers"
+
+	if use iscsi ; then
+		# Install udev rules for handle iscsi disk with right links under /dev
+		udev_newrules "${FILESDIR}/openstack-scsi-disk.rules" 60-openstack-scsi-disk.rules
+
+		insinto /etc/nova/
+		doins "${FILESDIR}/scsi-openscsi-link.sh"
+	fi
+}
+
+pkg_postinst() {
+	if use iscsi ; then
+		elog "iscsid needs to be running if you want cinder to connect"
+	fi
+}
diff --git a/sys-cluster/openstack-meta/openstack-meta-2016.1.9999.ebuild b/sys-cluster/openstack-meta/openstack-meta-2016.1.9999.ebuild
index b37463d562d0..9c0a605d8f87 100644
--- a/sys-cluster/openstack-meta/openstack-meta-2016.1.9999.ebuild
+++ b/sys-cluster/openstack-meta/openstack-meta-2016.1.9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -14,7 +14,7 @@ IUSE="keystone swift neutron glance cinder nova"
 
 DEPEND=""
 RDEPEND="keystone? ( ~sys-auth/keystone-2016.1.9999 )
-		swift? ( ~sys-cluster/swift-2.7.0 )
+		swift? ( ~sys-cluster/swift-2.9.0 )
 		neutron? ( ~sys-cluster/neutron-2016.1.9999 )
 		glance? ( ~app-admin/glance-2016.1.9999 )
 		cinder? ( ~sys-cluster/cinder-2016.1.9999 )
diff --git a/sys-cluster/openstack-meta/openstack-meta-2016.2.9999.ebuild b/sys-cluster/openstack-meta/openstack-meta-2016.2.9999.ebuild
new file mode 100644
index 000000000000..12e6ba488b9b
--- /dev/null
+++ b/sys-cluster/openstack-meta/openstack-meta-2016.2.9999.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+DESCRIPTION="A openstack meta-package for installing the various openstack pieces"
+HOMEPAGE="https://openstack.org"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS=""
+IUSE="keystone swift neutron glance cinder nova"
+
+DEPEND=""
+RDEPEND="
+	keystone? ( ~sys-auth/keystone-${PV} )
+	swift? ( || ( ~sys-cluster/swift-2.9.0 ~sys-cluster/swift-2.10.0 ) )
+	neutron? ( ~sys-cluster/neutron-${PV} )
+	glance? ( ~app-admin/glance-${PV} )
+	cinder? ( ~sys-cluster/cinder-${PV} )
+	nova? ( ~sys-cluster/nova-${PV} )
+"
-- 
cgit v1.2.3-65-gdbad