sys-cluster/neutron: bup 9.4.0 and 10.0.2

Package-Manager: Portage-2.3.5, Repoman-2.3.2
This commit is contained in:
Matthew Thode
2017-06-01 18:31:44 -05:00
parent 54f6802351
commit 8ffc39b0cc
3 changed files with 472 additions and 0 deletions

View File

@@ -1,10 +1,16 @@
DIST neutron-10.0.1.tar.gz 3139904 SHA256 1447feefdddbccb2ea2c778b75e5270513db8baa5ba32bd82108e7b58d3b411c SHA512 2d4d0416425e5b766993ccc3e263d2678af3325502b392b8d9cba075f9dfae64d2f2211a1a36e09b9bd43f102972491b737265844b81be03efcf3ee85b6896ac WHIRLPOOL 7a02c8185f77f260040fb05b932a478a8d3297b7e76087fc82a43429697d2674ba931a40af9444be4723bf36b5c330cdc7afea6f2f66360565f338da16434fc9
DIST neutron-10.0.2.tar.gz 3113218 SHA256 b3f67bc97ee17a48990f2baccf0d9ae67e308896cca25fc58c8bf5453139242e SHA512 9f1fb60ab4508d84039419a1e0ce5459235a351846027d809da98f7de568de3d0a3fb962001afe8d93029d1da0087a7666b57e6d6cedc245c3dac120bf8cf677 WHIRLPOOL a648e9af2a5a47d88a52bf7ec102d4c050ef440f14cd6bd7b1b4653ed7ffd444696c8abc2a7c84b95ab82c77423cdcd48d06479b022ca20f031df10212e7e526
DIST neutron-9.3.1.tar.gz 3041444 SHA256 d74bf8bcc749fea569421a190d5b68180837e80482531521c5623184c2c601cf SHA512 651d2172d375c30832eb01e1fadbe12ffde57495690194b942e83318996066040091106f4d00dc826db41727330ef8453e14f193005b0ec9732bf5d8cee9cbe2 WHIRLPOOL 84244e1ace8fce30253ab47a9cf7e09bb4b759c48514761951546530ba6092821d95f864970a22e596ab07029c1d23f940b1f2c44a9708bcafdc677c4ff004f2
DIST neutron-9.4.0.tar.gz 3050485 SHA256 b3290beaddb0554bb2fa248bbac199c91ef3a24677116100b89fcd3916a927ff SHA512 3f016bcefde149c9b46f8dc6a94c7b346aa734522e0c3966e85198b5e8b2afb0464b9b5964c1f4a7174717e406e79fd228c48a9bb65d85a51362f9ba75e7f385 WHIRLPOOL 8119c8bfd0b01ea132e61ecbcd0e4c04fb550e24387555de43a8fa2fd43738aa92750d0c7d78e54e321fdd454e673e1704e223fd3360b0ab368e910fa73d7953
DIST neutron-configs-10.0.1.tar.gz 25094 SHA256 7f210828b0c3fa9d859fca8c4735fd60aefad3cd5d0cf810b762af268df59269 SHA512 40ab9f2f4ea338c061c57d9aa5611ee3f3476ab8f5199ac50577f94fec032ccd27028bd072d9d9d0cc9f12327613e542b4d62a0403540730f9d6efbc4992a00d WHIRLPOOL dbdaff979a40e33cd171390657e39fb9b2a311c972e8d018e301af5361b0224ba62972241febfc4991a06bf9f16390e5c779de86823ed94eaebbee610c8c6657
DIST neutron-configs-10.0.2.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.3.1.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
DIST neutron-configs-9.4.0.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
DIST neutron-ml2-plugins-10.0.1.tar.gz 6811 SHA256 6ad759c8720563e502602fc32a72569884bdaad1443f4b8d23c8e9d240071f70 SHA512 51c01eab8f424b871f55b7dc45bbae6300d477e8bc7be4587c4945f75a4fc65f622ed69dbfe0c63db7fced2118987730204d259bce53e353a6b4d24df89dadcb WHIRLPOOL 5e4bf872895e8354fa9e6d7bb071f3d973f28c22297ea414f1bfc8f1bb3ae3102609ff61f19efda59f9d9d7a515fb8ae8216347a2935af64e4bdeeb6ec610863
DIST neutron-ml2-plugins-10.0.2.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.3.1.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
DIST neutron-ml2-plugins-9.4.0.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671

View File

@@ -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
}

View File

@@ -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
}