commit:     4f0ee8f5399588ebb9fd353db7e433be5ce83820
Author:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  6 16:21:56 2018 +0000
Commit:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
CommitDate: Tue Nov  6 16:39:43 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4f0ee8f5

sys-cluster/neutron: 11.0.6 12.0.5 13.0.2 bumps

Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Matthew Thode <prometheanfire <AT> gentoo.org>

 sys-cluster/neutron/Manifest              |   9 ++
 sys-cluster/neutron/neutron-11.0.6.ebuild | 255 +++++++++++++++++++++++++++++
 sys-cluster/neutron/neutron-12.0.5.ebuild | 256 ++++++++++++++++++++++++++++++
 sys-cluster/neutron/neutron-13.0.2.ebuild | 231 +++++++++++++++++++++++++++
 4 files changed, 751 insertions(+)

diff --git a/sys-cluster/neutron/Manifest b/sys-cluster/neutron/Manifest
index ac6694ea191..0bea4f95c73 100644
--- a/sys-cluster/neutron/Manifest
+++ b/sys-cluster/neutron/Manifest
@@ -1,15 +1,24 @@
 DIST neutron-11.0.5.tar.gz 10508647 BLAKE2B 
f1a44d78bf3464c825f104411e5fb388f464fb7ddc0c4a4607a32233a9ec820196b0efbb6d143c428dea301d5eb4ecc97bc7c8120190a9b4a590f872745e2f8e
 SHA512 
73f31156b9771aa404a116b7a3b8a8f9a6b97adf155fc9790b405a7b75cc4c9c6693b5984bcdd10453f85b63a1081fb28262cba4cf09de34a1e24017a920337f
+DIST neutron-11.0.6.tar.gz 10516797 BLAKE2B 
3d7ece145a96a299a2619e592b1d055365495938506ea357f10bfc951a5ac76588c18c3201f239529e999c670d483ee91b867db61d49948fd5edf0a1aff6ff0f
 SHA512 
35e1e95ff5a08986577b95457d09da078bcc5d9f67d3c0f325d2f934a489bc0481a2e3b6300ac37d91e4ba4c3a3523e39ff1bc53dc9cc7e757d12648f3f7ab1e
 DIST neutron-12.0.4.tar.gz 10438689 BLAKE2B 
c22470d8675e52bd7414a3c9b08a7cfd9dd151138a0c11d3eda66b310608dbb2230c77d3c3aa82d0b74256013e2ee716877faa59d6ad622cce5a2f0783797a7f
 SHA512 
fc6f9d8a180836124aa842c64840aefbe99f6489d6b6b9078fae6330177cf6b567016f09f9f97d32399dcc62eef4a8002e05c9f1784343424e7becbf64bb607b
+DIST neutron-12.0.5.tar.gz 10454003 BLAKE2B 
9aa617a824e00dcb8979e476bd902940f306a44d7b92f22e273e7793d93d121c0b2a5ab2d2ee21962b3aee124d00a31187df6cffa2319f799add1494fecd9afb
 SHA512 
a9e54ab43ae0a2b6798d37aad6a7cfa87ef6fa80d6121ca1b01817b93bf9480d436cffd0c526fe5d08a46256d885eb1d610039a0412a7a8cc69641db8bf1562b
 DIST neutron-13.0.1.tar.gz 10595397 BLAKE2B 
83cfeafa09028e27e6d092b228f986d85af27190f79f11c56cc7599c74f6a85031be729020fddf6ce4fec316fed4ce394aa664bfb8de80b7d89e876309ff05d1
 SHA512 
70333df77979f5d8408e2b9f67a1169aab3387b2ffdaf84c2a51d38652af66fee5867d36541f718b930c68738a9e7cf3ba3757025dcde215e54addb9be492dd6
+DIST neutron-13.0.2.tar.gz 10596419 BLAKE2B 
5d18c5ada86c2676ecab1c0121834c04e5c12d2c81a42ddb9554d0bdc2b7d472b5941b7290dc701c22b21b69442d04a44768c9423ff5d317b51d8cd37aa076bf
 SHA512 
4fb343039a6f6a6930d9770b02d58be732c57910e36739c8364bf8027a7ed55dafc40201ef8c349278310afc2ab6ee80fea562af94896e38891c35eaeb1faced
 DIST neutron-configs-11.0.5.tar.gz 25030 BLAKE2B 
6ca7507571983cdf576cb943bb2981623351c3de4220ccf990ba478147bcbaea06f4d5218ba6ad65c98f2a0c60c820be03429e8a22a624cf10339b80fcf17bbd
 SHA512 
d82abfcfe5c911dc8a0689e23aaad810bb3aacaf64bd35439220f41390a71958e7cd34e60500580c24ea9e8b55a6fb0441ce4e5612fad9aba2e48d6f14d4d87a
+DIST neutron-configs-11.0.6.tar.gz 25030 BLAKE2B 
6ca7507571983cdf576cb943bb2981623351c3de4220ccf990ba478147bcbaea06f4d5218ba6ad65c98f2a0c60c820be03429e8a22a624cf10339b80fcf17bbd
 SHA512 
d82abfcfe5c911dc8a0689e23aaad810bb3aacaf64bd35439220f41390a71958e7cd34e60500580c24ea9e8b55a6fb0441ce4e5612fad9aba2e48d6f14d4d87a
 DIST neutron-configs-12.0.4.tar.gz 26252 BLAKE2B 
c1493e313dc590445e60dcf8df9fc2b89a8e96e57ce072577b3a73fe247218a9ef9805ca9c61b79d2bd4c7aa088933762389258c1184e4572975db03c1674869
 SHA512 
05c8774d142a59da3e294f2351f1cc89f8cd275aedf3771c11d8176305ceec472980673f0ed07b3f4219a8ff4b4bb6e79f836a1f11ddd8e003d1ccd49051e5ac
+DIST neutron-configs-12.0.5.tar.gz 26252 BLAKE2B 
c1493e313dc590445e60dcf8df9fc2b89a8e96e57ce072577b3a73fe247218a9ef9805ca9c61b79d2bd4c7aa088933762389258c1184e4572975db03c1674869
 SHA512 
05c8774d142a59da3e294f2351f1cc89f8cd275aedf3771c11d8176305ceec472980673f0ed07b3f4219a8ff4b4bb6e79f836a1f11ddd8e003d1ccd49051e5ac
 DIST neutron-configs-13.0.1.tar.gz 26109 BLAKE2B 
5de3b90dcb6f8c86ce659b3ab439a79dd920aaf57b66a1e1b29f1b0d0fd433b222335a634dca01ce2b0e07acc3011ff6bf25983071dc0ff00e78ac847ee3fdd6
 SHA512 
498f41ffec6c14597e9785da9a36c2d906138215b34017aa93f56d051078682279bcce05288d2534ff7ab8208b8251c9f721256488f6850173210e41bc6dd51c
+DIST neutron-configs-13.0.2.tar.gz 26109 BLAKE2B 
5de3b90dcb6f8c86ce659b3ab439a79dd920aaf57b66a1e1b29f1b0d0fd433b222335a634dca01ce2b0e07acc3011ff6bf25983071dc0ff00e78ac847ee3fdd6
 SHA512 
498f41ffec6c14597e9785da9a36c2d906138215b34017aa93f56d051078682279bcce05288d2534ff7ab8208b8251c9f721256488f6850173210e41bc6dd51c
 DIST neutron-configs-2017.2.9999.tar.gz 25030 BLAKE2B 
6ca7507571983cdf576cb943bb2981623351c3de4220ccf990ba478147bcbaea06f4d5218ba6ad65c98f2a0c60c820be03429e8a22a624cf10339b80fcf17bbd
 SHA512 
d82abfcfe5c911dc8a0689e23aaad810bb3aacaf64bd35439220f41390a71958e7cd34e60500580c24ea9e8b55a6fb0441ce4e5612fad9aba2e48d6f14d4d87a
 DIST neutron-configs-2018.1.9999.tar.gz 26252 BLAKE2B 
c1493e313dc590445e60dcf8df9fc2b89a8e96e57ce072577b3a73fe247218a9ef9805ca9c61b79d2bd4c7aa088933762389258c1184e4572975db03c1674869
 SHA512 
05c8774d142a59da3e294f2351f1cc89f8cd275aedf3771c11d8176305ceec472980673f0ed07b3f4219a8ff4b4bb6e79f836a1f11ddd8e003d1ccd49051e5ac
 DIST neutron-configs-2018.2.9999.tar.gz 26109 BLAKE2B 
5de3b90dcb6f8c86ce659b3ab439a79dd920aaf57b66a1e1b29f1b0d0fd433b222335a634dca01ce2b0e07acc3011ff6bf25983071dc0ff00e78ac847ee3fdd6
 SHA512 
498f41ffec6c14597e9785da9a36c2d906138215b34017aa93f56d051078682279bcce05288d2534ff7ab8208b8251c9f721256488f6850173210e41bc6dd51c
 DIST neutron-ml2-plugins-11.0.5.tar.gz 6885 BLAKE2B 
c953d7222932d09c545dcfe01923f77cbc9e76157f78e5cb85a8e3bb03c8f3b4ab2bcc7eb2fc213578f71cf70543c4182c98bc6e5947fc1a0cbffe3d845bce20
 SHA512 
e5acaed2fc370e99c9c8b54040cdc994cd35bfbd3d74682d3c03c381568c89b316a6a87356aa6ae538a19c2ae83b6b3c512095afcc778525c2885b9b6bef04bd
+DIST neutron-ml2-plugins-11.0.6.tar.gz 6885 BLAKE2B 
c953d7222932d09c545dcfe01923f77cbc9e76157f78e5cb85a8e3bb03c8f3b4ab2bcc7eb2fc213578f71cf70543c4182c98bc6e5947fc1a0cbffe3d845bce20
 SHA512 
e5acaed2fc370e99c9c8b54040cdc994cd35bfbd3d74682d3c03c381568c89b316a6a87356aa6ae538a19c2ae83b6b3c512095afcc778525c2885b9b6bef04bd
 DIST neutron-ml2-plugins-12.0.4.tar.gz 7060 BLAKE2B 
7690218233971ab50623900e01fe4311e2b599661838a232616cdc4b56bff1a7fd6e6c3b7fe77f79c78c024eb571525b0e21a306c18fd884bd0dfdd6b814f2b4
 SHA512 
259db5513c014c6dda97432834f90744dec3732292a2de71d488e537f0f660959ea09890cf3dd3d22206295b259dad83440a60ee28e84a5b125547f869e0016b
+DIST neutron-ml2-plugins-12.0.5.tar.gz 7060 BLAKE2B 
7690218233971ab50623900e01fe4311e2b599661838a232616cdc4b56bff1a7fd6e6c3b7fe77f79c78c024eb571525b0e21a306c18fd884bd0dfdd6b814f2b4
 SHA512 
259db5513c014c6dda97432834f90744dec3732292a2de71d488e537f0f660959ea09890cf3dd3d22206295b259dad83440a60ee28e84a5b125547f869e0016b
 DIST neutron-ml2-plugins-13.0.1.tar.gz 7068 BLAKE2B 
fa27bd84c1d67bd36c7c7e47b6e8f98dd100e09c7a3bfa7aec615ed24e3dadf240f8ef44874c868ff92f79452afbf4a21fba46b1b9aec191bad53a62767b1861
 SHA512 
add4697c78c592dfe5ebadd3b0cf9b9c2a2c33bd05130a8e1422abf7456d8a0cc926a0d46f6b49ceee87017304d7c9c3486c975086e46f178e3bc142844f836f
+DIST neutron-ml2-plugins-13.0.2.tar.gz 7068 BLAKE2B 
fa27bd84c1d67bd36c7c7e47b6e8f98dd100e09c7a3bfa7aec615ed24e3dadf240f8ef44874c868ff92f79452afbf4a21fba46b1b9aec191bad53a62767b1861
 SHA512 
add4697c78c592dfe5ebadd3b0cf9b9c2a2c33bd05130a8e1422abf7456d8a0cc926a0d46f6b49ceee87017304d7c9c3486c975086e46f178e3bc142844f836f
 DIST neutron-ml2-plugins-2017.2.9999.tar.gz 6885 BLAKE2B 
c953d7222932d09c545dcfe01923f77cbc9e76157f78e5cb85a8e3bb03c8f3b4ab2bcc7eb2fc213578f71cf70543c4182c98bc6e5947fc1a0cbffe3d845bce20
 SHA512 
e5acaed2fc370e99c9c8b54040cdc994cd35bfbd3d74682d3c03c381568c89b316a6a87356aa6ae538a19c2ae83b6b3c512095afcc778525c2885b9b6bef04bd
 DIST neutron-ml2-plugins-2018.1.9999.tar.gz 7060 BLAKE2B 
7690218233971ab50623900e01fe4311e2b599661838a232616cdc4b56bff1a7fd6e6c3b7fe77f79c78c024eb571525b0e21a306c18fd884bd0dfdd6b814f2b4
 SHA512 
259db5513c014c6dda97432834f90744dec3732292a2de71d488e537f0f660959ea09890cf3dd3d22206295b259dad83440a60ee28e84a5b125547f869e0016b
 DIST neutron-ml2-plugins-2018.2.9999.tar.gz 7068 BLAKE2B 
fa27bd84c1d67bd36c7c7e47b6e8f98dd100e09c7a3bfa7aec615ed24e3dadf240f8ef44874c868ff92f79452afbf4a21fba46b1b9aec191bad53a62767b1861
 SHA512 
add4697c78c592dfe5ebadd3b0cf9b9c2a2c33bd05130a8e1422abf7456d8a0cc926a0d46f6b49ceee87017304d7c9c3486c975086e46f178e3bc142844f836f

diff --git a/sys-cluster/neutron/neutron-11.0.6.ebuild 
b/sys-cluster/neutron/neutron-11.0.6.ebuild
new file mode 100644
index 00000000000..b4e678b3ad4
--- /dev/null
+++ b/sys-cluster/neutron/neutron-11.0.6.ebuild
@@ -0,0 +1,255 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
+
+inherit distutils-r1 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/pike/configs.tar.gz
 -> neutron-configs-${PV}.tar.gz
+       
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/pike/ml2_plugins.tar.gz
 -> neutron-ml2-plugins-${PV}.tar.gz
+       https://tarballs.openstack.org/${PN}/${P}.tar.gz";
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="compute-only dhcp haproxy 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-2.0.0[${PYTHON_USEDEP}]
+       !~dev-python/pbr-2.1.0"
+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-2.3.1[${PYTHON_USEDEP}]
+       >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+       !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
+       <dev-python/eventlet-0.21.0[${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/pecan-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
+       >=dev-python/jinja-2.8[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.0[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.1[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.2[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.3[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.4[${PYTHON_USEDEP}]
+       >=dev-python/keystonemiddleware-4.12.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-1.9.0[${PYTHON_USEDEP}]
+       >=dev-python/python-neutronclient-6.3.0[${PYTHON_USEDEP}]
+       >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
+       >=dev-python/ryu-4.14[${PYTHON_USEDEP}]
+       compute-only? (
+               >=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}]
+       )
+       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/webob-1.7.1[${PYTHON_USEDEP}]
+       >=dev-python/keystoneauth-3.1.0[${PYTHON_USEDEP}]
+       >=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
+       >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+       >=dev-python/stevedore-1.20.1[${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-config-3.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-context-2.14.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-messaging-5.24.2[${PYTHON_USEDEP}]
+       !~dev-python/oslo-messaging-5.25.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-middleware-3.27.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-policy-1.23.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-privsep-1.9.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-privsep-1.17.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-serialization-2.19.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-utils-3.20.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-versionedobjects-1.17.0[${PYTHON_USEDEP}]
+       >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+       >=dev-python/ovs-2.7.0[${PYTHON_USEDEP}]
+       >=dev-python/ovsdbapp-0.4.0[${PYTHON_USEDEP}]
+       >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
+       >=dev-python/pyroute2-0.4.21[${PYTHON_USEDEP}]
+       >=dev-python/weakrefmethod-1.0.2[$(python_gen_usedep 'python2_7')]
+       >=dev-python/python-novaclient-9.0.0[${PYTHON_USEDEP}]
+       >=dev-python/python-designateclient-1.5.0[${PYTHON_USEDEP}]
+       >=dev-python/os-xenapi-0.2.0[${PYTHON_USEDEP}]
+       dev-python/pyudev[${PYTHON_USEDEP}]
+       sys-apps/iproute2
+       net-misc/iputils[arping]
+       net-misc/bridge-utils
+       net-firewall/ipset
+       net-firewall/iptables
+       net-firewall/ebtables
+       net-firewall/conntrack-tools
+       haproxy? ( net-proxy/haproxy )
+       openvswitch? ( <=net-misc/openvswitch-2.8.9999 )
+       ipv6? (
+               net-misc/radvd
+               >=net-misc/dibbler-1.0.1
+       )
+       dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
+
+#PATCHES=(
+#)
+
+pkg_pretend() {
+       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
+}
+
+pkg_setup() {
+       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_all() {
+       distutils-r1_python_install_all
+       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" 
"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"
+
+       #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/"
+}
+
+python_install() {
+       distutils-r1_python_install
+       # copy migration conf file (not coppied on install via setup.py script)
+       insopts -m 0644
+       insinto 
"/$(python_get_sitedir)/neutron/db/migration/alembic_migrations/"
+       doins -r "neutron/db/migration/alembic_migrations/versions"
+}
+
+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/neutron/neutron-12.0.5.ebuild 
b/sys-cluster/neutron/neutron-12.0.5.ebuild
new file mode 100644
index 00000000000..9ba383d1f14
--- /dev/null
+++ b/sys-cluster/neutron/neutron-12.0.5.ebuild
@@ -0,0 +1,256 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{5,6} )
+# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
+
+inherit distutils-r1 linux-info user
+
+DESCRIPTION="A virtual network service for Openstack"
+HOMEPAGE="https://launchpad.net/neutron";
+if [[ ${PV} == *9999 ]];then
+       inherit git-r3
+       
SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/queens/configs.tar.gz
 -> neutron-configs-${PV}.tar.gz
+       
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/queens/ml2_plugins.tar.gz
 -> neutron-ml2-plugins-${PV}.tar.gz"
+       EGIT_REPO_URI="https://github.com/openstack/neutron.git";
+       EGIT_BRANCH="stable/queens"
+else
+       
SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/queens/configs.tar.gz
 -> neutron-configs-${PV}.tar.gz
+       
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/queens/ml2_plugins.tar.gz
 -> neutron-ml2-plugins-${PV}.tar.gz
+       https://tarballs.openstack.org/${PN}/${P}.tar.gz";
+       KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="compute-only dhcp haproxy 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-2.0.0[${PYTHON_USEDEP}]
+       !~dev-python/pbr-2.1.0"
+DEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       ${CDEPEND}
+       app-admin/sudo"
+
+RDEPEND="
+       ${CDEPEND}
+       >=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
+       >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
+       >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
+       >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+       !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
+       <dev-python/eventlet-0.21.0[${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/pecan-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+       >=dev-python/jinja-2.8[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.0[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.1[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.2[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.3[${PYTHON_USEDEP}]
+       !~dev-python/jinja-2.9.4[${PYTHON_USEDEP}]
+       >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+       >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+       >=dev-python/neutron-lib-1.13.0[${PYTHON_USEDEP}]
+       >=dev-python/python-neutronclient-6.3.0[${PYTHON_USEDEP}]
+       >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
+       >=dev-python/ryu-4.14[${PYTHON_USEDEP}]
+       compute-only? (
+               >=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}]
+       )
+       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/webob-1.7.1[${PYTHON_USEDEP}]
+       >=dev-python/keystoneauth-3.3.0[${PYTHON_USEDEP}]
+       >=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
+       >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+       >=dev-python/stevedore-1.20.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-cache-1.26.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-concurrency-3.25.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-config-5.1.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+       >=dev-python/oslo-db-4.27.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+       >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-messaging-5.29.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-middleware-3.31.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-policy-1.30.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-privsep-1.23.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-reports-1.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-rootwrap-5.8.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-service-1.24.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-service-1.28.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-versionedobjects-1.31.2[${PYTHON_USEDEP}]
+       >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+       >=dev-python/ovs-2.8.0[${PYTHON_USEDEP}]
+       >=dev-python/ovsdbapp-0.8.0[${PYTHON_USEDEP}]
+       >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
+       >=dev-python/pyroute2-0.4.21[${PYTHON_USEDEP}]
+       >=dev-python/weakrefmethod-1.0.2[$(python_gen_usedep 'python2_7')]
+       >=dev-python/python-novaclient-9.1.0[${PYTHON_USEDEP}]
+       >=dev-python/python-designateclient-2.7.0[${PYTHON_USEDEP}]
+       >=dev-python/os-xenapi-0.3.1[${PYTHON_USEDEP}]
+       dev-python/pyudev[${PYTHON_USEDEP}]
+       sys-apps/iproute2
+       net-misc/iputils[arping]
+       net-misc/bridge-utils
+       net-firewall/ipset
+       net-firewall/iptables
+       net-firewall/ebtables
+       net-firewall/conntrack-tools
+       haproxy? ( net-proxy/haproxy )
+       openvswitch? ( <=net-misc/openvswitch-2.8.9999 )
+       ipv6? (
+               net-misc/radvd
+               >=net-misc/dibbler-1.0.1
+       )
+       dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
+
+#PATCHES=(
+#)
+
+pkg_pretend() {
+       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
+}
+
+pkg_setup() {
+       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_all() {
+       distutils-r1_python_install_all
+       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" 
"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"
+
+       #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/"
+}
+
+python_install() {
+       distutils-r1_python_install
+       # copy migration conf file (not coppied on install via setup.py script)
+       insopts -m 0644
+       insinto 
"/$(python_get_sitedir)/neutron/db/migration/alembic_migrations/"
+       doins -r "neutron/db/migration/alembic_migrations/versions"
+}
+
+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/neutron/neutron-13.0.2.ebuild 
b/sys-cluster/neutron/neutron-13.0.2.ebuild
new file mode 100644
index 00000000000..cbcd62260d5
--- /dev/null
+++ b/sys-cluster/neutron/neutron-13.0.2.ebuild
@@ -0,0 +1,231 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{5,6} )
+# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
+
+inherit distutils-r1 linux-info user
+
+DESCRIPTION="A virtual network service for Openstack"
+HOMEPAGE="https://launchpad.net/neutron";
+if [[ ${PV} == *9999 ]];then
+       inherit git-r3
+       
SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/rocky/configs.tar.gz
 -> neutron-configs-${PV}.tar.gz
+       
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/rocky/ml2_plugins.tar.gz
 -> neutron-ml2-plugins-${PV}.tar.gz"
+       EGIT_REPO_URI="https://github.com/openstack/neutron.git";
+       EGIT_BRANCH="stable/rocky"
+else
+       
SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/rocky/configs.tar.gz
 -> neutron-configs-${PV}.tar.gz
+       
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/rocky/ml2_plugins.tar.gz
 -> neutron-ml2-plugins-${PV}.tar.gz
+       https://tarballs.openstack.org/${PN}/${P}.tar.gz";
+       KEYWORDS="~amd64 ~arm64 ~x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="compute-only dhcp haproxy 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-2.0.0[${PYTHON_USEDEP}]
+       !~dev-python/pbr-2.1.0"
+DEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       ${CDEPEND}
+       app-admin/sudo"
+
+RDEPEND="
+       ${CDEPEND}
+       >=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
+       >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
+       >=dev-python/routes-2.3.1[${PYTHON_USEDEP}]
+       >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+       !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
+       >=dev-python/pecan-1.1.1[${PYTHON_USEDEP}]
+       !~dev-python/pecan-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+       >=dev-python/jinja-2.10[${PYTHON_USEDEP}]
+       >=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
+       >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
+       >=dev-python/neutron-lib-1.18.0[${PYTHON_USEDEP}]
+       >=dev-python/python-neutronclient-6.3.0[${PYTHON_USEDEP}]
+       >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
+       >=dev-python/ryu-4.24[${PYTHON_USEDEP}]
+       compute-only? (
+               >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+       )
+       sqlite? (
+               >=dev-python/sqlalchemy-1.2.0[sqlite,${PYTHON_USEDEP}]
+       )
+       mysql? (
+               >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
+               !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
+               >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+       )
+       postgres? (
+               >=dev-python/psycopg-2.5.0[${PYTHON_USEDEP}]
+               >=dev-python/sqlalchemy-1.2.0[${PYTHON_USEDEP}]
+       )
+       >=dev-python/webob-1.7.1[${PYTHON_USEDEP}]
+       >=dev-python/keystoneauth-3.4.0[${PYTHON_USEDEP}]
+       >=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
+       >=dev-python/six-1.10.0[${PYTHON_USEDEP}]
+       >=dev-python/stevedore-1.20.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-cache-1.26.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-concurrency-3.25.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-config-5.1.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+       >=dev-python/oslo-db-4.27.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-i18n-3.15.3[${PYTHON_USEDEP}]
+       >=dev-python/oslo-log-3.36.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-messaging-5.29.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-middleware-3.31.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-policy-1.30.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-privsep-1.23.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-reports-1.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-rootwrap-5.8.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-serialization-1.18.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-serialization-2.19.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-service-1.24.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-service-1.28.1[${PYTHON_USEDEP}]
+       >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-versionedobjects-1.31.2[${PYTHON_USEDEP}]
+       >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+       >=dev-python/ovs-2.8.0[${PYTHON_USEDEP}]
+       >=dev-python/ovsdbapp-0.9.1[${PYTHON_USEDEP}]
+       >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
+       >=dev-python/pyroute2-0.4.21[${PYTHON_USEDEP}]
+       >=dev-python/weakrefmethod-1.0.2[$(python_gen_usedep 'python2_7')]
+       >=dev-python/python-novaclient-9.1.0[${PYTHON_USEDEP}]
+       >=dev-python/python-designateclient-2.7.0[${PYTHON_USEDEP}]
+       >=dev-python/os-xenapi-0.3.1[${PYTHON_USEDEP}]
+       dev-python/pyudev[${PYTHON_USEDEP}]
+       sys-apps/iproute2
+       net-misc/iputils[arping]
+       net-misc/bridge-utils
+       net-firewall/ipset
+       net-firewall/iptables
+       net-firewall/ebtables
+       net-firewall/conntrack-tools
+       haproxy? ( net-proxy/haproxy )
+       openvswitch? ( <=net-misc/openvswitch-2.8.9999 )
+       ipv6? (
+               net-misc/radvd
+               >=net-misc/dibbler-1.0.1
+       )
+       dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
+
+#PATCHES=(
+#)
+
+pkg_pretend() {
+       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
+}
+
+pkg_setup() {
+       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_all() {
+       distutils-r1_python_install_all
+       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" 
"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"
+
+       #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/"
+}
+
+python_install() {
+       distutils-r1_python_install
+       # copy migration conf file (not coppied on install via setup.py script)
+       insopts -m 0644
+       insinto 
"/$(python_get_sitedir)/neutron/db/migration/alembic_migrations/"
+       doins -r "neutron/db/migration/alembic_migrations/versions"
+}
+
+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
+}

Reply via email to