commit:     49f09a314bcbeaf741edc53908372bc828063f15
Author:     Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 28 02:02:45 2017 +0000
Commit:     Matt Thode <prometheanfire <AT> gentoo <DOT> org>
CommitDate: Mon Aug 28 02:11:08 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49f09a31

sys-cluster/neutron: 9.4.1 and 10.0.3 bup

Package-Manager: Portage-2.3.6, Repoman-2.3.3

 sys-cluster/neutron/Manifest              |   6 +
 sys-cluster/neutron/neutron-10.0.3.ebuild | 237 ++++++++++++++++++++++++++++++
 sys-cluster/neutron/neutron-9.4.1.ebuild  | 229 +++++++++++++++++++++++++++++
 3 files changed, 472 insertions(+)

diff --git a/sys-cluster/neutron/Manifest b/sys-cluster/neutron/Manifest
index d91a6593708..490344a17a9 100644
--- a/sys-cluster/neutron/Manifest
+++ b/sys-cluster/neutron/Manifest
@@ -1,10 +1,16 @@
 DIST neutron-10.0.2.tar.gz 3113218 SHA256 
b3f67bc97ee17a48990f2baccf0d9ae67e308896cca25fc58c8bf5453139242e SHA512 
9f1fb60ab4508d84039419a1e0ce5459235a351846027d809da98f7de568de3d0a3fb962001afe8d93029d1da0087a7666b57e6d6cedc245c3dac120bf8cf677
 WHIRLPOOL 
a648e9af2a5a47d88a52bf7ec102d4c050ef440f14cd6bd7b1b4653ed7ffd444696c8abc2a7c84b95ab82c77423cdcd48d06479b022ca20f031df10212e7e526
+DIST neutron-10.0.3.tar.gz 3125880 SHA256 
7f4c455d54647f5f32871b61acac0d66de32dd1e7a589bad04b266560d0ba7ef SHA512 
615c5ece84d61c1e3878566cc538af15f32d92a3a3def0bfe627e804c44c9d64cb1160f7adf4f136596e687348036a795035c773213f7d57e79422fb149f560e
 WHIRLPOOL 
1c249112c5f850b6244db7264f2295106ef2b8b68cc472eafe19e407f36c6afcfd8024ac160d9b2e7da85a60c86a88f70bd385763bdd8c22fc276000151ff46c
 DIST neutron-9.4.0.tar.gz 3050485 SHA256 
b3290beaddb0554bb2fa248bbac199c91ef3a24677116100b89fcd3916a927ff SHA512 
3f016bcefde149c9b46f8dc6a94c7b346aa734522e0c3966e85198b5e8b2afb0464b9b5964c1f4a7174717e406e79fd228c48a9bb65d85a51362f9ba75e7f385
 WHIRLPOOL 
8119c8bfd0b01ea132e61ecbcd0e4c04fb550e24387555de43a8fa2fd43738aa92750d0c7d78e54e321fdd454e673e1704e223fd3360b0ab368e910fa73d7953
+DIST neutron-9.4.1.tar.gz 3060881 SHA256 
c8a4c5a9f696b3d4455ef4b823d47d2cccfdfff7a160981e4d26c61a9cf41d0a SHA512 
94a374a2f03ab9d586d6be6a612aabcc9cb71565d5ec2415442cfdb09463811418b04d1f159f4b5a286798020ae3e83196bb0c9db3f27c43e5abedfe66ecdb33
 WHIRLPOOL 
db09caef44b969fec9b80b1898cab4293bb62d6188938aa943ccd00bc736a64e5b8f85f4a07f12de2866b4b76966e55d01b991f0db82d648b73fc8710095659d
 DIST neutron-configs-10.0.2.tar.gz 25094 SHA256 
7f210828b0c3fa9d859fca8c4735fd60aefad3cd5d0cf810b762af268df59269 SHA512 
40ab9f2f4ea338c061c57d9aa5611ee3f3476ab8f5199ac50577f94fec032ccd27028bd072d9d9d0cc9f12327613e542b4d62a0403540730f9d6efbc4992a00d
 WHIRLPOOL 
dbdaff979a40e33cd171390657e39fb9b2a311c972e8d018e301af5361b0224ba62972241febfc4991a06bf9f16390e5c779de86823ed94eaebbee610c8c6657
+DIST neutron-configs-10.0.3.tar.gz 25094 SHA256 
7f210828b0c3fa9d859fca8c4735fd60aefad3cd5d0cf810b762af268df59269 SHA512 
40ab9f2f4ea338c061c57d9aa5611ee3f3476ab8f5199ac50577f94fec032ccd27028bd072d9d9d0cc9f12327613e542b4d62a0403540730f9d6efbc4992a00d
 WHIRLPOOL 
dbdaff979a40e33cd171390657e39fb9b2a311c972e8d018e301af5361b0224ba62972241febfc4991a06bf9f16390e5c779de86823ed94eaebbee610c8c6657
 DIST neutron-configs-2016.2.9999.tar.gz 13458 SHA256 
111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 
42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44
 WHIRLPOOL 
bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
 DIST neutron-configs-2017.1.9999.tar.gz 25094 SHA256 
7f210828b0c3fa9d859fca8c4735fd60aefad3cd5d0cf810b762af268df59269 SHA512 
40ab9f2f4ea338c061c57d9aa5611ee3f3476ab8f5199ac50577f94fec032ccd27028bd072d9d9d0cc9f12327613e542b4d62a0403540730f9d6efbc4992a00d
 WHIRLPOOL 
dbdaff979a40e33cd171390657e39fb9b2a311c972e8d018e301af5361b0224ba62972241febfc4991a06bf9f16390e5c779de86823ed94eaebbee610c8c6657
 DIST neutron-configs-9.4.0.tar.gz 13458 SHA256 
111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 
42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44
 WHIRLPOOL 
bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
+DIST neutron-configs-9.4.1.tar.gz 13458 SHA256 
111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 
42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44
 WHIRLPOOL 
bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
 DIST neutron-ml2-plugins-10.0.2.tar.gz 6811 SHA256 
6ad759c8720563e502602fc32a72569884bdaad1443f4b8d23c8e9d240071f70 SHA512 
51c01eab8f424b871f55b7dc45bbae6300d477e8bc7be4587c4945f75a4fc65f622ed69dbfe0c63db7fced2118987730204d259bce53e353a6b4d24df89dadcb
 WHIRLPOOL 
5e4bf872895e8354fa9e6d7bb071f3d973f28c22297ea414f1bfc8f1bb3ae3102609ff61f19efda59f9d9d7a515fb8ae8216347a2935af64e4bdeeb6ec610863
+DIST neutron-ml2-plugins-10.0.3.tar.gz 6811 SHA256 
6ad759c8720563e502602fc32a72569884bdaad1443f4b8d23c8e9d240071f70 SHA512 
51c01eab8f424b871f55b7dc45bbae6300d477e8bc7be4587c4945f75a4fc65f622ed69dbfe0c63db7fced2118987730204d259bce53e353a6b4d24df89dadcb
 WHIRLPOOL 
5e4bf872895e8354fa9e6d7bb071f3d973f28c22297ea414f1bfc8f1bb3ae3102609ff61f19efda59f9d9d7a515fb8ae8216347a2935af64e4bdeeb6ec610863
 DIST neutron-ml2-plugins-2016.2.9999.tar.gz 2073 SHA256 
1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 
bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711
 WHIRLPOOL 
099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
 DIST neutron-ml2-plugins-2017.1.9999.tar.gz 6811 SHA256 
6ad759c8720563e502602fc32a72569884bdaad1443f4b8d23c8e9d240071f70 SHA512 
51c01eab8f424b871f55b7dc45bbae6300d477e8bc7be4587c4945f75a4fc65f622ed69dbfe0c63db7fced2118987730204d259bce53e353a6b4d24df89dadcb
 WHIRLPOOL 
5e4bf872895e8354fa9e6d7bb071f3d973f28c22297ea414f1bfc8f1bb3ae3102609ff61f19efda59f9d9d7a515fb8ae8216347a2935af64e4bdeeb6ec610863
 DIST neutron-ml2-plugins-9.4.0.tar.gz 2073 SHA256 
1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 
bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711
 WHIRLPOOL 
099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
+DIST neutron-ml2-plugins-9.4.1.tar.gz 2073 SHA256 
1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 
bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711
 WHIRLPOOL 
099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671

diff --git a/sys-cluster/neutron/neutron-10.0.3.ebuild 
b/sys-cluster/neutron/neutron-10.0.3.ebuild
new file mode 100644
index 00000000000..3d7f813965c
--- /dev/null
+++ b/sys-cluster/neutron/neutron-10.0.3.ebuild
@@ -0,0 +1,237 @@
+# Copyright 1999-2017 Gentoo Foundation
+# 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/ocata/configs.tar.gz
 -> neutron-configs-${PV}.tar.gz
+       
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ocata/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 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/pecan-1.2.0[${PYTHON_USEDEP}]
+       >=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
+       >=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
+       !~dev-python/requests-2.12.2[${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.1.0[${PYTHON_USEDEP}]
+       >=dev-python/python-neutronclient-5.1.0[${PYTHON_USEDEP}]
+       >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
+       >=dev-python/ryu-4.9[${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.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.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.6.0[${PYTHON_USEDEP}]
+       >=dev-python/keystoneauth-2.18.0[${PYTHON_USEDEP}]
+       >=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
+       >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
+       >=dev-python/stevedore-1.17.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-3.14.0[${PYTHON_USEDEP}]
+       !~dev-python/oslo-config-3.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-db-4.15.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-log-3.11.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-messaging-5.14.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-policy-1.17.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.18.0[${PYTHON_USEDEP}]
+       >=dev-python/oslo-versionedobjects-1.17.0[${PYTHON_USEDEP}]
+       >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
+       >=dev-python/ovs-2.6.1[${PYTHON_USEDEP}]
+       >=dev-python/pyroute2-0.4.12[${PYTHON_USEDEP}]
+       >=dev-python/weakrefmethod-1.0.2[$(python_gen_usedep 'python2_7')]
+       >=dev-python/python-novaclient-6.0.0[${PYTHON_USEDEP}]
+       !~dev-python/python-novaclient-7.0.0[${PYTHON_USEDEP}]
+       >=dev-python/python-designateclient-1.5.0[${PYTHON_USEDEP}]
+       virtual/python-singledispatch[${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
+       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_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-9.4.1.ebuild 
b/sys-cluster/neutron/neutron-9.4.1.ebuild
new file mode 100644
index 00000000000..f883ce813c2
--- /dev/null
+++ b/sys-cluster/neutron/neutron-9.4.1.ebuild
@@ -0,0 +1,229 @@
+# Copyright 1999-2017 Gentoo Foundation
+# 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/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
+       https://tarballs.openstack.org/${PN}/${P}.tar.gz";
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+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}]
+       virtual/python-singledispatch[${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
+       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" 
"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
+}

Reply via email to