summaryrefslogtreecommitdiff
path: root/sys-cluster/neutron
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2020-05-30 11:44:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2020-05-30 11:44:06 +0100
commitf516638b7fe9592837389826a6152a7e1b251c54 (patch)
tree8bfecb640b7b6403d7a3d662d923eed630033da7 /sys-cluster/neutron
parent1a61119f9f7b057830e2ce0563f913ec86f282ad (diff)
gentoo resync : 30.05.2020
Diffstat (limited to 'sys-cluster/neutron')
-rw-r--r--sys-cluster/neutron/Manifest11
-rw-r--r--sys-cluster/neutron/neutron-15.1.0.ebuild229
-rw-r--r--sys-cluster/neutron/neutron-16.0.0.ebuild232
-rw-r--r--sys-cluster/neutron/neutron-2020.1.9999.ebuild232
4 files changed, 704 insertions, 0 deletions
diff --git a/sys-cluster/neutron/Manifest b/sys-cluster/neutron/Manifest
index 8d62778b65f0..bbc4fdad21fb 100644
--- a/sys-cluster/neutron/Manifest
+++ b/sys-cluster/neutron/Manifest
@@ -7,10 +7,21 @@ AUX neutron-server.confd 70 BLAKE2B 88309872ce864e4dfa9072c1472bd6f1e8116f71106f
AUX neutron.initd 530 BLAKE2B 48900bdde5770a0b0db90490d6ae8541dafc96e3fa2aa1c8d75eab5f547be35fa5adb792db8960f71a98bbeb71d56b29e5f5166a47735ebe85804019aa4e1f11 SHA512 c9c7386ae8d97205859f02edb0c7d601059af78def3f232f87e676131c5e6fcdb6e880ccee5b1b15397b1dffe83446421145c90ed448f5e9d55994efd1629f92
AUX neutron.sudoersd 117 BLAKE2B 30e903fd3d681b779ad7e4758b56bfd78df6165ae030f0a5017dccd1873570db450efd3e7b232f77d6d2e3fcb81cb64d9d44901802310ebe2d88f882d334acda SHA512 143f8a1faa7650bc66b2566d0bd62f71eb743231b9efc4c7df265e53d664418b23182e3f271b86845ed76c537b7f60157e87af59413cf659379f367924d14366
DIST neutron-15.0.2.tar.gz 10523237 BLAKE2B d900a95286549ede403a988b206315cee911c0dfde198101c2961a39f3059ed2121352ca0d232eac2a8deacb55344de3073b821312d40156331064b8aa00add8 SHA512 36a2adcbecf7b168a4a8141bae29453bc8122e3400bff9987d2cfe40728896a0a55040c2fd7d98ecade27162e49bbd0918be712940a0c2b7b31984d0677d1dbe
+DIST neutron-15.1.0.tar.gz 10549248 BLAKE2B f9e4dff7c8ae1568187284c2676a67a572902a67ccf08998dcc0620938e6a15320a69297771c9686dd19c93f4363c7193e1b9f3763ef7423c62a85df6ec155b6 SHA512 89d737c52fd098fab13bfe6548d9a723bfcf4c97e2f6669915d07efe55d5e707ab19ea1af8fa7c328b9426998cc835c5ddb619799949efb1a9291d0654ea7b1e
+DIST neutron-16.0.0.tar.gz 12746070 BLAKE2B 659ae3bc6971393522dc98ee5b4eccddd85aae17571734f24571e13892376ad2d9a25c09224e703a5b89511c2d696b69842469789649a1f239115ad2422af951 SHA512 f2c23a04d75328b8a671ac65163e6f84cd48880864331f6713793a037a23043779656cfdbe4aab6772fb4e5f5c606db9d97f3d4f3dc8f234920381a9929778cc
DIST neutron-configs-15.0.2.tar.gz 23546 BLAKE2B df706681e63e4f36b54be33a6619da15d642803f40afe737bd31426f9b3643a6a032cb8bfcb95899d1e67b759155fd14bb45f41460cefdc7d9f91d3377a90d5d SHA512 ef4555be50dfb81a0558ed28eb917a1d0634d913a2b0b58deeae3132a0e3c61521074b21d195e51e348a08b55c21919b537ac3c7122f4d5524ead824642292fe
+DIST neutron-configs-15.1.0.tar.gz 23546 BLAKE2B df706681e63e4f36b54be33a6619da15d642803f40afe737bd31426f9b3643a6a032cb8bfcb95899d1e67b759155fd14bb45f41460cefdc7d9f91d3377a90d5d SHA512 ef4555be50dfb81a0558ed28eb917a1d0634d913a2b0b58deeae3132a0e3c61521074b21d195e51e348a08b55c21919b537ac3c7122f4d5524ead824642292fe
+DIST neutron-configs-16.0.0.tar.gz 24350 BLAKE2B 8f6eeae762fa297651f07667387beac6677cfa9a6c0d13d3fc90ac09753022fd284fc56c53557ab83cda99ab4fe03acc2d2049e4bb62f9496b310b1cd6f42099 SHA512 b087b23a1aa19678d4b9a76ae82243d03fe82706712e8c37b759a8521062f79e83307769b4ba639f67aa402f8b03cdf12d3274d821c3f8ecfd17ded9f4f2c881
DIST neutron-configs-2019.2.9999.tar.gz 23546 BLAKE2B df706681e63e4f36b54be33a6619da15d642803f40afe737bd31426f9b3643a6a032cb8bfcb95899d1e67b759155fd14bb45f41460cefdc7d9f91d3377a90d5d SHA512 ef4555be50dfb81a0558ed28eb917a1d0634d913a2b0b58deeae3132a0e3c61521074b21d195e51e348a08b55c21919b537ac3c7122f4d5524ead824642292fe
+DIST neutron-configs-2020.1.9999.tar.gz 24350 BLAKE2B 8f6eeae762fa297651f07667387beac6677cfa9a6c0d13d3fc90ac09753022fd284fc56c53557ab83cda99ab4fe03acc2d2049e4bb62f9496b310b1cd6f42099 SHA512 b087b23a1aa19678d4b9a76ae82243d03fe82706712e8c37b759a8521062f79e83307769b4ba639f67aa402f8b03cdf12d3274d821c3f8ecfd17ded9f4f2c881
DIST neutron-ml2-plugins-15.0.2.tar.gz 8669 BLAKE2B 3c34a857c0e7dd4e5313f5f9a1bb22384aeae6d1e43e719c50eab8dc3e842e98f202eb12cbb788127603931292deeed802f0592bad232e6a05121939e3b26fe0 SHA512 0e6858425ee3d3e2233c8ebf19aa8e62b5ff849532a2fdceb953f384f3b33432137537afbb2878f23ec5eb57e185eda36a6d6ff71d8be5f32b43abcb5c186082
+DIST neutron-ml2-plugins-15.1.0.tar.gz 8669 BLAKE2B 3c34a857c0e7dd4e5313f5f9a1bb22384aeae6d1e43e719c50eab8dc3e842e98f202eb12cbb788127603931292deeed802f0592bad232e6a05121939e3b26fe0 SHA512 0e6858425ee3d3e2233c8ebf19aa8e62b5ff849532a2fdceb953f384f3b33432137537afbb2878f23ec5eb57e185eda36a6d6ff71d8be5f32b43abcb5c186082
+DIST neutron-ml2-plugins-16.0.0.tar.gz 8887 BLAKE2B 5887027ce4585a523bb3379c002acdde1faa9ed24d0c83c931f2a387b56e8baf8352ae9f82ba46c85a6a3e5b1d68792da1e1ca1fae9b6dde525e6f6c67849ac4 SHA512 4ae70fe3e386932e0327333d29dc526b5f0f0f800ac14d17faa4c1e3fc2dd8524760b84bbb4767e73e70647984aa50702e5e47dc42deb47f66c47c5e3e965111
DIST neutron-ml2-plugins-2019.2.9999.tar.gz 8669 BLAKE2B 3c34a857c0e7dd4e5313f5f9a1bb22384aeae6d1e43e719c50eab8dc3e842e98f202eb12cbb788127603931292deeed802f0592bad232e6a05121939e3b26fe0 SHA512 0e6858425ee3d3e2233c8ebf19aa8e62b5ff849532a2fdceb953f384f3b33432137537afbb2878f23ec5eb57e185eda36a6d6ff71d8be5f32b43abcb5c186082
+DIST neutron-ml2-plugins-2020.1.9999.tar.gz 8887 BLAKE2B 5887027ce4585a523bb3379c002acdde1faa9ed24d0c83c931f2a387b56e8baf8352ae9f82ba46c85a6a3e5b1d68792da1e1ca1fae9b6dde525e6f6c67849ac4 SHA512 4ae70fe3e386932e0327333d29dc526b5f0f0f800ac14d17faa4c1e3fc2dd8524760b84bbb4767e73e70647984aa50702e5e47dc42deb47f66c47c5e3e965111
EBUILD neutron-15.0.2.ebuild 8397 BLAKE2B c60c20f26aa5325428daf5634e03f85f9013471231389d65d62261cf670d7b544bbe4c40967788df6d0cdfb50b349403860d84a8f67dc2068d1a501df916eaeb SHA512 466a62192eed31b276395f4fab869ff2a8f186878242656cbc89f9f6a65cd26a17b1a5b0b5d90b9179f71a0213b49d7fe04a1688b132c11bdd12b0f548217909
+EBUILD neutron-15.1.0.ebuild 8399 BLAKE2B f03c192d5bb8c5012e614156ec69d96866ed99572a34f07aed36f7c88611e70cba4ea1ba416923c889b56fa89aa74f38cf87f4835a54fcd8d42220c4caf6aa4c SHA512 d2c67e02dd6796310595687210760e423d6f6fdadf29b5ec57576b36b4a18df263bb70e7004b739731b7f6b751d8a3152f68c06b205eb076f3498d28c678488d
+EBUILD neutron-16.0.0.ebuild 8511 BLAKE2B cbfd752ce6f8d0b3427673c807650917891fb4c501084828f346ad5e13c061fd3dd28a0c650b68449b81b0a39cddbb3e85c96d56189b2ab34d320343123741e5 SHA512 6a3544b2f66f5de8c31815389252d9c69f65bfb74d0b1d4568f23a7e68ca942fe4e121e4cc342baa4f6b8a81f992aa60acf38d71c985daffa8628aeca0eee8ec
EBUILD neutron-2019.2.9999.ebuild 8369 BLAKE2B cf0bf6af4b20180a5988827033b651806590363ff415624591b5a3dbbaec9acc192ba3d3f359e4a39f6dcc07e6b192a15c81525008fb28ce7f0e72525eeae90e SHA512 0182efe5ebf65fa111f7883f64fd329f7f7d5268371a2c9615c5f44b740ec56babecb3942bc8f32f11fe26ed472280ce69f479f2ab575c11df75e41b016d467d
+EBUILD neutron-2020.1.9999.ebuild 8511 BLAKE2B cbfd752ce6f8d0b3427673c807650917891fb4c501084828f346ad5e13c061fd3dd28a0c650b68449b81b0a39cddbb3e85c96d56189b2ab34d320343123741e5 SHA512 6a3544b2f66f5de8c31815389252d9c69f65bfb74d0b1d4568f23a7e68ca942fe4e121e4cc342baa4f6b8a81f992aa60acf38d71c985daffa8628aeca0eee8ec
MISC metadata.xml 1619 BLAKE2B 462b212e519778c98632ec3230e5f0d1a006a229edef034ed0d462559cb0c1763dafb997198241cca4f9c7cb056ebada214c82745dce35b269c2c27d554145a4 SHA512 8f9075719eeec3c3a939e8a1b05a5604bc1e801b227feb5775bfa9f2812e67c41165dc0b2b377685645d9fd9988523356ac77a8db8e73139ab3f035ae59b70ce
diff --git a/sys-cluster/neutron/neutron-15.1.0.ebuild b/sys-cluster/neutron/neutron-15.1.0.ebuild
new file mode 100644
index 000000000000..518d9465fd1a
--- /dev/null
+++ b/sys-cluster/neutron/neutron-15.1.0.ebuild
@@ -0,0 +1,229 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6,7} )
+# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
+
+inherit distutils-r1 linux-info
+
+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/train/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+ https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/train/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz"
+ EGIT_REPO_URI="https://github.com/openstack/neutron.git"
+ EGIT_BRANCH="stable/train"
+else
+ SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/train/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+ https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/train/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-4.0.0[${PYTHON_USEDEP}]"
+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/decorator-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+ !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
+ >=dev-python/pecan-1.3.2[${PYTHON_USEDEP}]
+ >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${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.29.1[${PYTHON_USEDEP}]
+ >=dev-python/python-neutronclient-6.3.0[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-3.2.1[${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.8.2[${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.26.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.37.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.32.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-upgradecheck-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-versionedobjects-1.35.1[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/os-ken-0.3.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.5.3[${PYTHON_USEDEP}]
+ >=dev-python/python-novaclient-9.1.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.31.2[${PYTHON_USEDEP}]
+ >=dev-python/python-designateclient-2.7.0[${PYTHON_USEDEP}]
+ >=dev-python/os-xenapi-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/os-vif-1.15.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 )
+ ipv6? (
+ net-misc/radvd
+ >=net-misc/dibbler-1.0.1
+ )
+ dhcp? ( net-dns/dnsmasq[dhcp-tools] )
+ acct-group/neutron
+ acct-user/neutron"
+
+#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_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 ../../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)
+ python_moduleinto neutron/db/migration/alembic_migrations
+ python_domodule "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-16.0.0.ebuild b/sys-cluster/neutron/neutron-16.0.0.ebuild
new file mode 100644
index 000000000000..b8a3ed95df97
--- /dev/null
+++ b/sys-cluster/neutron/neutron-16.0.0.ebuild
@@ -0,0 +1,232 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_7 )
+# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
+
+inherit distutils-r1 linux-info
+
+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/ussuri/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+ https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ussuri/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz"
+ EGIT_REPO_URI="https://github.com/openstack/neutron.git"
+ EGIT_BRANCH="stable/ussuri"
+else
+ SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ussuri/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+ https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ussuri/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-4.0.0[${PYTHON_USEDEP}]"
+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.19.0[${PYTHON_USEDEP}]
+ >=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+ !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
+ >=dev-python/pecan-1.3.2[${PYTHON_USEDEP}]
+ >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${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-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-neutronclient-6.3.0[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-4.4.0[${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.8.2[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.14.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.26.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.37.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.32.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-upgradecheck-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-versionedobjects-1.35.1[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/os-ken-0.3.0[${PYTHON_USEDEP}]
+ >=dev-python/ovs-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/ovsdbapp-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
+ >=dev-python/pyroute2-0.5.7[${PYTHON_USEDEP}]
+ >=dev-python/pyopenssl-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/python-novaclient-9.1.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.31.2[${PYTHON_USEDEP}]
+ >=dev-python/python-designateclient-2.7.0[${PYTHON_USEDEP}]
+ >=dev-python/os-xenapi-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/os-vif-1.15.1[${PYTHON_USEDEP}]
+ >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tooz-1.58.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 )
+ ipv6? (
+ net-misc/radvd
+ >=net-misc/dibbler-1.0.1
+ )
+ dhcp? ( net-dns/dnsmasq[dhcp-tools] )
+ acct-group/neutron
+ acct-user/neutron"
+
+#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_DEFRAG_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_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 ../../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)
+ python_moduleinto neutron/db/migration/alembic_migrations
+ python_domodule "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-2020.1.9999.ebuild b/sys-cluster/neutron/neutron-2020.1.9999.ebuild
new file mode 100644
index 000000000000..b8a3ed95df97
--- /dev/null
+++ b/sys-cluster/neutron/neutron-2020.1.9999.ebuild
@@ -0,0 +1,232 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_7 )
+# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
+
+inherit distutils-r1 linux-info
+
+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/ussuri/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+ https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ussuri/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz"
+ EGIT_REPO_URI="https://github.com/openstack/neutron.git"
+ EGIT_BRANCH="stable/ussuri"
+else
+ SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ussuri/configs.tar.gz -> neutron-configs-${PV}.tar.gz
+ https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ussuri/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-4.0.0[${PYTHON_USEDEP}]"
+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.19.0[${PYTHON_USEDEP}]
+ >=dev-python/decorator-3.4.0[${PYTHON_USEDEP}]
+ >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
+ !~dev-python/eventlet-0.20.1[${PYTHON_USEDEP}]
+ >=dev-python/pecan-1.3.2[${PYTHON_USEDEP}]
+ >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${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-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/python-neutronclient-6.3.0[${PYTHON_USEDEP}]
+ >=dev-python/tenacity-4.4.0[${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.8.2[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth-3.14.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.26.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-config-5.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-context-2.19.2[${PYTHON_USEDEP}]
+ >=dev-python/oslo-db-4.37.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.32.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-upgradecheck-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-versionedobjects-1.35.1[${PYTHON_USEDEP}]
+ >=dev-python/osprofiler-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/os-ken-0.3.0[${PYTHON_USEDEP}]
+ >=dev-python/ovs-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/ovsdbapp-1.0.0[${PYTHON_USEDEP}]
+ >=dev-python/psutil-3.2.2[${PYTHON_USEDEP}]
+ >=dev-python/pyroute2-0.5.7[${PYTHON_USEDEP}]
+ >=dev-python/pyopenssl-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/python-novaclient-9.1.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.31.2[${PYTHON_USEDEP}]
+ >=dev-python/python-designateclient-2.7.0[${PYTHON_USEDEP}]
+ >=dev-python/os-xenapi-0.3.1[${PYTHON_USEDEP}]
+ >=dev-python/os-vif-1.15.1[${PYTHON_USEDEP}]
+ >=dev-python/futurist-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tooz-1.58.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 )
+ ipv6? (
+ net-misc/radvd
+ >=net-misc/dibbler-1.0.1
+ )
+ dhcp? ( net-dns/dnsmasq[dhcp-tools] )
+ acct-group/neutron
+ acct-user/neutron"
+
+#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_DEFRAG_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_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 ../../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)
+ python_moduleinto neutron/db/migration/alembic_migrations
+ python_domodule "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
+}