sys-cluster/neutron: removing old

Package-Manager: portage-2.2.28
This commit is contained in:
Matthew Thode
2016-05-16 14:52:22 -05:00
parent d9d444c705
commit a6ef142643
4 changed files with 0 additions and 911 deletions

View File

@@ -1,6 +1,3 @@
DIST neutron-7.0.1.tar.gz 2500003 SHA256 99d9f2d05b225777f521a88849bd42691408e7986af76a6d76a18eeac736c19e SHA512 a072e7c44c55c00d4bcf1d17e0de8801b729849d354003c2eac2a14033fa9c81a5d7f83411bc235bdce070c55c1b76bbb86a836336eb17c3c04f00c2358ac953 WHIRLPOOL ce8ef78b8f0df852b561b336812b9101708cc8a036c28ccf8c7f7eee16d52ba0a61179f519f9ec469935e4920dacb7e9cdc6c3f37a8d71997885d29b7df58ba9
DIST neutron-7.0.2.tar.gz 2512153 SHA256 6e6988b301b87f21cc470c2ca7dd6fb91586860b477f958aba1be77c79afe51a SHA512 841e2e7aad0585a0f906aef90f67168ba9d95b4afdc94be0ac415fc1b975141c3488d31ae3096fc6d3eb47ef67d93d5e1e7980d9b95ea53e720aa0e08091d476 WHIRLPOOL 5a690ddbb0030df2d97e42c559c614b0d0eb003b814f8d0fd43cb62ac684109cd4b0b010a5cd827508fe83a14b0d580be32ab0ff775328b5666aa41b1515160e
DIST neutron-7.0.3.tar.gz 2522096 SHA256 07bc7ae4ef28937d371426c9dafb7a11e1233b1b4d1c7b2ce13c5751b76bb2f7 SHA512 a32623a65eba761ca4d10e5db817dd3253310d5b00babd6f2a54ff671296fde25802d35adbb9dc6c221752b1ad41bc5b210d40ec6f6f3dfac2835b58bda1160d WHIRLPOOL c7b633774af24ca143d7f991e55ce4f262274ca4912073db9e6d9b48be2f0420d3f621063018fa81f27daacf8ae8407dd8224b899b244a24c011da84b4539d74
DIST neutron-7.0.4.tar.gz 2535795 SHA256 6088bd85ffbf170d2463948de64b8eb8e0a5f42dcd1fdddb5283c6c5c91a5ee4 SHA512 2756681c0795b3ba0514c938c89d6b15f42c2a405371e99d547b4ed1b7bda383ae989a2d539950f782265badcce5e755f2cea9002e5875d263f1dfd8497c8d64 WHIRLPOOL 707d7c19c69a94788b45f6187cd0a3527cd67a3edacec4dea423b07f6a48cd98fdc77855d6edf2c126ce4c792f1ee8b70098aaca8c04db1fe0c332f4c8f46d04
DIST neutron-8.0.0.tar.gz 2842712 SHA256 c6b03f33ec7f3bb325914d79c290e086e3f9d884a30962d6e2d56d6c49296a22 SHA512 ef25b2401d5dd070a2cc69370c682de36ca3b729dcd2170130530a240f936486f5bec631a45e9e7203529c1b6a91ed05b5fc4aae78d7cb2e46fc208d4a21c5a8 WHIRLPOOL 4bf710708190db86d1a91346e276118f589fdf64fe615fbccdfd979caadd3080a944ec095fad3e831e3d1021eb1b79151a07f6ab1a68c339bed399c20a287d34
DIST neutron-8.1.0.tar.gz 2855010 SHA256 ec912b42a9058916ef65b35bf4c82aa934c181b8b3397ecfacb533b93720d362 SHA512 1bd622d9bb96241712140a0208596bc44f76d7b50c8010076125699a9857d50c34c9a37d03062b0b4db36f1859eb5368320a7564e73a8e293a6a30c44f4c3321 WHIRLPOOL d8cc0444a00326217b0194a979523a80f7761db7e8d7490cda475837ce8170d1682c850d2fec95a2ee129c4e53bcb5b6103bbc8cf36ff69b00969290d2dba8af

View File

@@ -1,300 +0,0 @@
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit distutils-r1 linux-info user
DESCRIPTION="A virtual network service for Openstack"
HOMEPAGE="https://launchpad.net/neutron"
SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="compute-only dhcp doc ipv6 l3 metadata openvswitch linuxbridge server test 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
test? (
${RDEPEND}
>=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
<=dev-python/cliff-1.15.0[${PYTHON_USEDEP}]
>=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
>=dev-python/coverage-3.6[${PYTHON_USEDEP}]
<=dev-python/coverage-4.0.3[${PYTHON_USEDEP}]
>=dev-python/fixtures-1.3.1[${PYTHON_USEDEP}]
<=dev-python/fixtures-1.4.0-r9999[${PYTHON_USEDEP}]
>=dev-python/mock-1.2[${PYTHON_USEDEP}]
<=dev-python/mock-1.3.0[${PYTHON_USEDEP}]
>=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
<=dev-python/subunit-1.2.0[${PYTHON_USEDEP}]
>=dev-python/requests-mock-0.6.0[${PYTHON_USEDEP}]
<=dev-python/requests-mock-0.7.0[${PYTHON_USEDEP}]
>=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}]
!~dev-python/sphinx-1.2.0[${PYTHON_USEDEP}]
<dev-python/sphinx-1.3[${PYTHON_USEDEP}]
>=dev-python/oslo-sphinx-2.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-sphinx-4.1.0[${PYTHON_USEDEP}]
>=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
<=dev-python/testrepository-0.0.20[${PYTHON_USEDEP}]
>=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
<=dev-python/testtools-1.8.1[${PYTHON_USEDEP}]
>=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
<=dev-python/testresources-1.0.0-r9999[${PYTHON_USEDEP}]
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
<=dev-python/testscenarios-0.5[${PYTHON_USEDEP}]
>=dev-python/webtest-2.0[${PYTHON_USEDEP}]
<=dev-python/webtest-2.0.20[${PYTHON_USEDEP}]
>=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
<=dev-python/oslotest-2.0.0[${PYTHON_USEDEP}]
>=dev-python/os-testr-0.1.0[${PYTHON_USEDEP}]
<=dev-python/os-testr-0.4.2[${PYTHON_USEDEP}]
>=dev-python/tempest-lib-0.8.0[${PYTHON_USEDEP}]
<=dev-python/tempest-lib-0.11.0[${PYTHON_USEDEP}]
>=dev-python/ddt-0.7.0[${PYTHON_USEDEP}]
<=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
~dev-python/pylint-1.4.4[${PYTHON_USEDEP}]
>=dev-python/reno-0.1.1[${PYTHON_USEDEP}]
)"
RDEPEND="
<=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
>=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
<=dev-python/pastedeploy-1.5.2[${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.2[${PYTHON_USEDEP}]
>=dev-python/debtcollector-0.3.0[${PYTHON_USEDEP}]
<=dev-python/debtcollector-1.1.0[${PYTHON_USEDEP}]
~dev-python/eventlet-0.17.4[${PYTHON_USEDEP}]
>=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
<=dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
>=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
<=dev-python/greenlet-0.4.9[${PYTHON_USEDEP}]
>=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
<=dev-python/httplib2-0.9.2[${PYTHON_USEDEP}]
>=dev-python/requests-2.5.2[${PYTHON_USEDEP}]
!~dev-python/requests-2.8.0[${PYTHON_USEDEP}]
<=dev-python/requests-2.8.1[${PYTHON_USEDEP}]
>=dev-python/jinja-2.6[${PYTHON_USEDEP}]
<=dev-python/jinja-2.8[${PYTHON_USEDEP}]
>=dev-python/keystonemiddleware-2.0.0[${PYTHON_USEDEP}]
!=dev-python/keystonemiddleware-2.4.0[${PYTHON_USEDEP}]
<=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
>=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
!~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
<=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
>=dev-python/python-neutronclient-2.6.0[${PYTHON_USEDEP}]
<=dev-python/python-neutronclient-3.1.0[${PYTHON_USEDEP}]
>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
<=dev-python/retrying-1.3.3[${PYTHON_USEDEP}]
>=dev-python/ryu-3.23.2[${PYTHON_USEDEP}]
<=dev-python/ryu-3.26[${PYTHON_USEDEP}]
compute-only? (
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
sqlite? (
>=dev-python/sqlalchemy-0.9.9[sqlite,${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
)
mysql? (
dev-python/mysql-python
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
postgres? (
dev-python/psycopg:2
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
>=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
<=dev-python/webob-1.5.1[${PYTHON_USEDEP}]
>=dev-python/python-keystoneclient-1.6.0[${PYTHON_USEDEP}]
!~dev-python/python-keystoneclient-1.8.0[${PYTHON_USEDEP}]
<=dev-python/python-keystoneclient-2.0.0-r9999[${PYTHON_USEDEP}]
>=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
<=dev-python/alembic-0.8.3[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
<=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.5.0[${PYTHON_USEDEP}]
<=dev-python/stevedore-1.10.0[${PYTHON_USEDEP}]
>=dev-python/oslo-concurrency-2.3.0[${PYTHON_USEDEP}]
<=dev-python/oslo-concurrency-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-config-2.3.0[${PYTHON_USEDEP}]
<=dev-python/oslo-config-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-context-0.2.0[${PYTHON_USEDEP}]
<=dev-python/oslo-context-1.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-db-2.4.1[${PYTHON_USEDEP}]
<=dev-python/oslo-db-4.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-i18n-1.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-i18n-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-log-1.8.0[${PYTHON_USEDEP}]
<=dev-python/oslo-log-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-messaging-1.16.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-1.17.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-1.17.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.6.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.6.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.7.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.8.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.8.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.9.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-3.1.0[${PYTHON_USEDEP}]
<=dev-python/oslo-messaging-3.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-middleware-2.8.0[${PYTHON_USEDEP}]
<=dev-python/oslo-middleware-3.3.0[${PYTHON_USEDEP}]
>=dev-python/oslo-policy-0.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-policy-1.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-rootwrap-2.0.0[${PYTHON_USEDEP}]
<=dev-python/oslo-rootwrap-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-serialization-1.4.0[${PYTHON_USEDEP}]
<=dev-python/oslo-serialization-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-service-0.7.0[${PYTHON_USEDEP}]
<=dev-python/oslo-service-1.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-utils-2.0.0[${PYTHON_USEDEP}]
!~dev-python/oslo-utils-2.6.0[${PYTHON_USEDEP}]
<=dev-python/oslo-utils-3.2.0[${PYTHON_USEDEP}]
>=dev-python/oslo-versionedobjects-0.9.0[${PYTHON_USEDEP}]
<=dev-python/oslo-versionedobjects-1.1.0[${PYTHON_USEDEP}]
>=dev-python/python-novaclient-2.28.1[${PYTHON_USEDEP}]
!~dev-python/python-novaclient-2.33.0[${PYTHON_USEDEP}]
<=dev-python/python-novaclient-2.35.0[${PYTHON_USEDEP}]
<=dev-python/pyudev-0.18[${PYTHON_USEDEP}]
sys-apps/iproute2
net-misc/bridge-utils
net-firewall/ipset
net-firewall/iptables
net-firewall/ebtables
openvswitch? ( <=net-misc/openvswitch-2.5.9999 )
ipv6? ( net-misc/radvd )
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_compile_all() {
use doc && make -C doc html
}
python_test() {
# https://bugs.launchpad.net/neutron/+bug/1234857
# https://bugs.launchpad.net/swift/+bug/1249727
# https://bugs.launchpad.net/neutron/+bug/1251657
# Move tests out that attempt net connection, have failures
mv $(find . -name test_ovs_tunnel.py) . || die
sed -e 's:test_app_using_ipv6_and_ssl:_&:' \
-e 's:test_start_random_port_with_ipv6:_&:' \
-i neutron/tests/unit/test_wsgi.py || die
testr init
testr run --parallel || die "failed testsuite under python2.7"
}
python_install() {
distutils-r1_python_install
if use server; then
newinitd "${FILESDIR}/neutron.initd" "neutron-server"
newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
fi
if use dhcp; then
newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
fi
if use l3; then
newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
fi
if use metadata; then
newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
fi
if use openvswitch; then
newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
fi
if use linuxbridge; then
newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd.liberty" "neutron-linuxbridge-agent"
fi
diropts -m 755 -o neutron -g neutron
dodir /var/log/neutron /var/lib/neutron
keepdir /etc/neutron
insinto /etc/neutron
insopts -m 0640 -o neutron -g neutron
doins etc/*
# stupid renames
rm "${D}etc/neutron/quantum"
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
#remove superfluous stuff
rm -R "${D}/usr/etc/"
}
python_install_all() {
use doc && local HTML_DOCS=( doc/build/html/. )
distutils-r1_python_install_all
}
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

@@ -1,304 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit distutils-r1 linux-info user
DESCRIPTION="A virtual network service for Openstack"
HOMEPAGE="https://launchpad.net/neutron"
SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="compute-only dhcp doc ipv6 l3 metadata openvswitch linuxbridge server test 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
test? (
${RDEPEND}
>=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
<=dev-python/cliff-1.15.0[${PYTHON_USEDEP}]
>=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
>=dev-python/coverage-3.6[${PYTHON_USEDEP}]
<=dev-python/coverage-4.0.3[${PYTHON_USEDEP}]
>=dev-python/fixtures-1.3.1[${PYTHON_USEDEP}]
<=dev-python/fixtures-1.4.0-r9999[${PYTHON_USEDEP}]
>=dev-python/mock-1.2[${PYTHON_USEDEP}]
<=dev-python/mock-1.3.0[${PYTHON_USEDEP}]
>=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
<=dev-python/subunit-1.2.0[${PYTHON_USEDEP}]
>=dev-python/requests-mock-0.6.0[${PYTHON_USEDEP}]
<=dev-python/requests-mock-0.7.0[${PYTHON_USEDEP}]
>=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}]
!~dev-python/sphinx-1.2.0[${PYTHON_USEDEP}]
<dev-python/sphinx-1.3[${PYTHON_USEDEP}]
>=dev-python/oslo-sphinx-2.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-sphinx-4.1.0[${PYTHON_USEDEP}]
>=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
<=dev-python/testrepository-0.0.20[${PYTHON_USEDEP}]
>=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
<=dev-python/testtools-1.8.1[${PYTHON_USEDEP}]
>=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
<=dev-python/testresources-1.0.0-r9999[${PYTHON_USEDEP}]
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
<=dev-python/testscenarios-0.5[${PYTHON_USEDEP}]
>=dev-python/webtest-2.0[${PYTHON_USEDEP}]
<=dev-python/webtest-2.0.20[${PYTHON_USEDEP}]
>=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
<=dev-python/oslotest-2.0.0[${PYTHON_USEDEP}]
>=dev-python/os-testr-0.1.0[${PYTHON_USEDEP}]
<=dev-python/os-testr-0.4.2[${PYTHON_USEDEP}]
>=dev-python/tempest-lib-0.8.0[${PYTHON_USEDEP}]
<=dev-python/tempest-lib-0.11.0[${PYTHON_USEDEP}]
>=dev-python/ddt-0.7.0[${PYTHON_USEDEP}]
<=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
~dev-python/pylint-1.4.4[${PYTHON_USEDEP}]
>=dev-python/reno-0.1.1[${PYTHON_USEDEP}]
)"
RDEPEND="
<=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
>=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
<=dev-python/pastedeploy-1.5.2[${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.2[${PYTHON_USEDEP}]
>=dev-python/debtcollector-0.3.0[${PYTHON_USEDEP}]
<=dev-python/debtcollector-1.1.0[${PYTHON_USEDEP}]
~dev-python/eventlet-0.17.4[${PYTHON_USEDEP}]
>=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
<=dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
>=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
<=dev-python/greenlet-0.4.9[${PYTHON_USEDEP}]
>=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
<=dev-python/httplib2-0.9.2[${PYTHON_USEDEP}]
>=dev-python/requests-2.5.2[${PYTHON_USEDEP}]
!~dev-python/requests-2.8.0[${PYTHON_USEDEP}]
!~dev-python/requests-2.9.0[${PYTHON_USEDEP}]
<=dev-python/requests-2.8.1[${PYTHON_USEDEP}]
>=dev-python/jinja-2.6[${PYTHON_USEDEP}]
<=dev-python/jinja-2.8[${PYTHON_USEDEP}]
>=dev-python/keystonemiddleware-2.0.0[${PYTHON_USEDEP}]
!=dev-python/keystonemiddleware-2.4.0[${PYTHON_USEDEP}]
<=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
>=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
!~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
<=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
>=dev-python/python-neutronclient-2.6.0[${PYTHON_USEDEP}]
<=dev-python/python-neutronclient-3.1.0[${PYTHON_USEDEP}]
>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
<=dev-python/retrying-1.3.3[${PYTHON_USEDEP}]
>=dev-python/ryu-3.23.2[${PYTHON_USEDEP}]
<=dev-python/ryu-3.26[${PYTHON_USEDEP}]
compute-only? (
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
sqlite? (
>=dev-python/sqlalchemy-0.9.9[sqlite,${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
)
mysql? (
dev-python/mysql-python
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
postgres? (
dev-python/psycopg:2
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
>=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
<=dev-python/webob-1.5.1[${PYTHON_USEDEP}]
>=dev-python/python-keystoneclient-1.6.0[${PYTHON_USEDEP}]
!~dev-python/python-keystoneclient-1.8.0[${PYTHON_USEDEP}]
<=dev-python/python-keystoneclient-2.0.0-r9999[${PYTHON_USEDEP}]
>=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
<=dev-python/alembic-0.8.3[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
<=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.5.0[${PYTHON_USEDEP}]
<=dev-python/stevedore-1.10.0[${PYTHON_USEDEP}]
>=dev-python/oslo-concurrency-2.3.0[${PYTHON_USEDEP}]
<=dev-python/oslo-concurrency-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-config-2.3.0[${PYTHON_USEDEP}]
<=dev-python/oslo-config-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-context-0.2.0[${PYTHON_USEDEP}]
<=dev-python/oslo-context-1.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-db-2.4.1[${PYTHON_USEDEP}]
<=dev-python/oslo-db-4.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-i18n-1.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-i18n-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-log-1.8.0[${PYTHON_USEDEP}]
<=dev-python/oslo-log-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-messaging-1.16.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-1.17.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-1.17.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.6.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.6.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.7.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.8.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.8.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.9.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-3.1.0[${PYTHON_USEDEP}]
<=dev-python/oslo-messaging-3.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-middleware-2.8.0[${PYTHON_USEDEP}]
!~dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
!~dev-python/oslo-middleware-3.1.0[${PYTHON_USEDEP}]
!~dev-python/oslo-middleware-3.2.0[${PYTHON_USEDEP}]
<=dev-python/oslo-middleware-3.3.0[${PYTHON_USEDEP}]
>=dev-python/oslo-policy-0.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-policy-1.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-rootwrap-2.0.0[${PYTHON_USEDEP}]
<=dev-python/oslo-rootwrap-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-serialization-1.4.0[${PYTHON_USEDEP}]
<=dev-python/oslo-serialization-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-service-0.7.0[${PYTHON_USEDEP}]
<=dev-python/oslo-service-1.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-utils-2.0.0[${PYTHON_USEDEP}]
!~dev-python/oslo-utils-2.6.0[${PYTHON_USEDEP}]
<=dev-python/oslo-utils-3.2.0[${PYTHON_USEDEP}]
>=dev-python/oslo-versionedobjects-0.9.0[${PYTHON_USEDEP}]
<=dev-python/oslo-versionedobjects-1.1.0[${PYTHON_USEDEP}]
>=dev-python/python-novaclient-2.28.1[${PYTHON_USEDEP}]
!~dev-python/python-novaclient-2.33.0[${PYTHON_USEDEP}]
<=dev-python/python-novaclient-2.35.0[${PYTHON_USEDEP}]
<=dev-python/pyudev-0.18[${PYTHON_USEDEP}]
sys-apps/iproute2
net-misc/bridge-utils
net-firewall/ipset
net-firewall/iptables
net-firewall/ebtables
openvswitch? ( <=net-misc/openvswitch-2.5.9999 )
ipv6? ( net-misc/radvd )
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_compile_all() {
use doc && make -C doc html
}
python_test() {
# https://bugs.launchpad.net/neutron/+bug/1234857
# https://bugs.launchpad.net/swift/+bug/1249727
# https://bugs.launchpad.net/neutron/+bug/1251657
# Move tests out that attempt net connection, have failures
mv $(find . -name test_ovs_tunnel.py) . || die
sed -e 's:test_app_using_ipv6_and_ssl:_&:' \
-e 's:test_start_random_port_with_ipv6:_&:' \
-i neutron/tests/unit/test_wsgi.py || die
testr init
testr run --parallel || die "failed testsuite under python2.7"
}
python_install() {
distutils-r1_python_install
if use server; then
newinitd "${FILESDIR}/neutron.initd" "neutron-server"
newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
fi
if use dhcp; then
newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
fi
if use l3; then
newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
fi
if use metadata; then
newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
fi
if use openvswitch; then
newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
fi
if use linuxbridge; then
newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd.liberty" "neutron-linuxbridge-agent"
fi
diropts -m 755 -o neutron -g neutron
dodir /var/log/neutron /var/lib/neutron
keepdir /etc/neutron
insinto /etc/neutron
insopts -m 0640 -o neutron -g neutron
doins etc/*
# stupid renames
rm "${D}etc/neutron/quantum"
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
#remove superfluous stuff
rm -R "${D}/usr/etc/"
}
python_install_all() {
use doc && local HTML_DOCS=( doc/build/html/. )
distutils-r1_python_install_all
}
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

@@ -1,304 +0,0 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit distutils-r1 linux-info user
DESCRIPTION="A virtual network service for Openstack"
HOMEPAGE="https://launchpad.net/neutron"
SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="compute-only dhcp doc ipv6 l3 metadata openvswitch linuxbridge server test 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
test? (
${RDEPEND}
>=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
<=dev-python/cliff-1.15.0[${PYTHON_USEDEP}]
>=dev-python/cliff-1.14.0[${PYTHON_USEDEP}]
>=dev-python/coverage-3.6[${PYTHON_USEDEP}]
<=dev-python/coverage-4.0.3[${PYTHON_USEDEP}]
>=dev-python/fixtures-1.3.1[${PYTHON_USEDEP}]
<=dev-python/fixtures-1.4.0-r9999[${PYTHON_USEDEP}]
>=dev-python/mock-1.2[${PYTHON_USEDEP}]
<=dev-python/mock-1.3.0[${PYTHON_USEDEP}]
>=dev-python/subunit-0.0.18[${PYTHON_USEDEP}]
<=dev-python/subunit-1.2.0[${PYTHON_USEDEP}]
>=dev-python/requests-mock-0.6.0[${PYTHON_USEDEP}]
<=dev-python/requests-mock-0.7.0[${PYTHON_USEDEP}]
>=dev-python/sphinx-1.1.2[${PYTHON_USEDEP}]
!~dev-python/sphinx-1.2.0[${PYTHON_USEDEP}]
<dev-python/sphinx-1.3[${PYTHON_USEDEP}]
>=dev-python/oslo-sphinx-2.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-sphinx-4.1.0[${PYTHON_USEDEP}]
>=dev-python/testrepository-0.0.18[${PYTHON_USEDEP}]
<=dev-python/testrepository-0.0.20[${PYTHON_USEDEP}]
>=dev-python/testtools-1.4.0[${PYTHON_USEDEP}]
<=dev-python/testtools-1.8.1[${PYTHON_USEDEP}]
>=dev-python/testresources-0.2.4[${PYTHON_USEDEP}]
<=dev-python/testresources-1.0.0-r9999[${PYTHON_USEDEP}]
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
<=dev-python/testscenarios-0.5[${PYTHON_USEDEP}]
>=dev-python/webtest-2.0[${PYTHON_USEDEP}]
<=dev-python/webtest-2.0.20[${PYTHON_USEDEP}]
>=dev-python/oslotest-1.10.0[${PYTHON_USEDEP}]
<=dev-python/oslotest-2.0.0[${PYTHON_USEDEP}]
>=dev-python/os-testr-0.1.0[${PYTHON_USEDEP}]
<=dev-python/os-testr-0.6.0[${PYTHON_USEDEP}]
>=dev-python/tempest-lib-0.8.0[${PYTHON_USEDEP}]
<=dev-python/tempest-lib-0.11.0[${PYTHON_USEDEP}]
>=dev-python/ddt-0.7.0[${PYTHON_USEDEP}]
<=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
~dev-python/pylint-1.4.4[${PYTHON_USEDEP}]
>=dev-python/reno-0.1.1[${PYTHON_USEDEP}]
)"
RDEPEND="
<=dev-python/paste-2.0.2[${PYTHON_USEDEP}]
>=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
<=dev-python/pastedeploy-1.5.2[${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.2[${PYTHON_USEDEP}]
>=dev-python/debtcollector-0.3.0[${PYTHON_USEDEP}]
<=dev-python/debtcollector-1.1.0[${PYTHON_USEDEP}]
~dev-python/eventlet-0.17.4[${PYTHON_USEDEP}]
>=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
<=dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
>=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
<=dev-python/greenlet-0.4.9[${PYTHON_USEDEP}]
>=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
<=dev-python/httplib2-0.9.2[${PYTHON_USEDEP}]
>=dev-python/requests-2.5.2[${PYTHON_USEDEP}]
!~dev-python/requests-2.8.0[${PYTHON_USEDEP}]
!~dev-python/requests-2.9.0[${PYTHON_USEDEP}]
<=dev-python/requests-2.8.1[${PYTHON_USEDEP}]
>=dev-python/jinja-2.6[${PYTHON_USEDEP}]
<=dev-python/jinja-2.8[${PYTHON_USEDEP}]
>=dev-python/keystonemiddleware-2.0.0[${PYTHON_USEDEP}]
!=dev-python/keystonemiddleware-2.4.0[${PYTHON_USEDEP}]
<=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
>=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
!~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
<=dev-python/netaddr-0.7.18[${PYTHON_USEDEP}]
>=dev-python/python-neutronclient-2.6.0[${PYTHON_USEDEP}]
<=dev-python/python-neutronclient-3.1.0[${PYTHON_USEDEP}]
>=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
!~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
<=dev-python/retrying-1.3.3[${PYTHON_USEDEP}]
>=dev-python/ryu-3.23.2[${PYTHON_USEDEP}]
<=dev-python/ryu-3.26[${PYTHON_USEDEP}]
compute-only? (
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
sqlite? (
>=dev-python/sqlalchemy-0.9.9[sqlite,${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
)
mysql? (
dev-python/mysql-python
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
postgres? (
dev-python/psycopg:2
>=dev-python/sqlalchemy-0.9.9[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
)
>=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
<=dev-python/webob-1.5.1[${PYTHON_USEDEP}]
>=dev-python/python-keystoneclient-1.6.0[${PYTHON_USEDEP}]
!~dev-python/python-keystoneclient-1.8.0[${PYTHON_USEDEP}]
<=dev-python/python-keystoneclient-2.0.0-r9999[${PYTHON_USEDEP}]
>=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
<=dev-python/alembic-0.8.3[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
<=dev-python/six-1.10.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.5.0[${PYTHON_USEDEP}]
<=dev-python/stevedore-1.10.0[${PYTHON_USEDEP}]
>=dev-python/oslo-concurrency-2.3.0[${PYTHON_USEDEP}]
<=dev-python/oslo-concurrency-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-config-2.3.0[${PYTHON_USEDEP}]
<=dev-python/oslo-config-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-context-0.2.0[${PYTHON_USEDEP}]
<=dev-python/oslo-context-1.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-db-2.4.1[${PYTHON_USEDEP}]
<=dev-python/oslo-db-4.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-i18n-1.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-i18n-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-log-1.8.0[${PYTHON_USEDEP}]
<=dev-python/oslo-log-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-messaging-1.16.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-1.17.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-1.17.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.6.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.6.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.7.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.8.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.8.1[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-2.9.0[${PYTHON_USEDEP}]
!~dev-python/oslo-messaging-3.1.0[${PYTHON_USEDEP}]
<=dev-python/oslo-messaging-3.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-middleware-2.8.0[${PYTHON_USEDEP}]
!~dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
!~dev-python/oslo-middleware-3.1.0[${PYTHON_USEDEP}]
!~dev-python/oslo-middleware-3.2.0[${PYTHON_USEDEP}]
<=dev-python/oslo-middleware-3.3.0[${PYTHON_USEDEP}]
>=dev-python/oslo-policy-0.5.0[${PYTHON_USEDEP}]
<=dev-python/oslo-policy-1.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-rootwrap-2.0.0[${PYTHON_USEDEP}]
<=dev-python/oslo-rootwrap-3.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-serialization-1.4.0[${PYTHON_USEDEP}]
<=dev-python/oslo-serialization-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-service-0.7.0[${PYTHON_USEDEP}]
<=dev-python/oslo-service-1.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-utils-2.0.0[${PYTHON_USEDEP}]
!~dev-python/oslo-utils-2.6.0[${PYTHON_USEDEP}]
<=dev-python/oslo-utils-3.2.0[${PYTHON_USEDEP}]
>=dev-python/oslo-versionedobjects-0.9.0[${PYTHON_USEDEP}]
<=dev-python/oslo-versionedobjects-1.1.0[${PYTHON_USEDEP}]
>=dev-python/python-novaclient-2.28.1[${PYTHON_USEDEP}]
!~dev-python/python-novaclient-2.33.0[${PYTHON_USEDEP}]
<=dev-python/python-novaclient-2.35.0[${PYTHON_USEDEP}]
<=dev-python/pyudev-0.18[${PYTHON_USEDEP}]
sys-apps/iproute2
net-misc/bridge-utils
net-firewall/ipset
net-firewall/iptables
net-firewall/ebtables
openvswitch? ( <=net-misc/openvswitch-2.5.9999 )
ipv6? ( net-misc/radvd )
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_compile_all() {
use doc && make -C doc html
}
python_test() {
# https://bugs.launchpad.net/neutron/+bug/1234857
# https://bugs.launchpad.net/swift/+bug/1249727
# https://bugs.launchpad.net/neutron/+bug/1251657
# Move tests out that attempt net connection, have failures
mv $(find . -name test_ovs_tunnel.py) . || die
sed -e 's:test_app_using_ipv6_and_ssl:_&:' \
-e 's:test_start_random_port_with_ipv6:_&:' \
-i neutron/tests/unit/test_wsgi.py || die
testr init
testr run --parallel || die "failed testsuite under python2.7"
}
python_install() {
distutils-r1_python_install
if use server; then
newinitd "${FILESDIR}/neutron.initd" "neutron-server"
newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
fi
if use dhcp; then
newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
fi
if use l3; then
newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
fi
if use metadata; then
newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
fi
if use openvswitch; then
newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
fi
if use linuxbridge; then
newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd.liberty" "neutron-linuxbridge-agent"
fi
diropts -m 755 -o neutron -g neutron
dodir /var/log/neutron /var/lib/neutron
keepdir /etc/neutron
insinto /etc/neutron
insopts -m 0640 -o neutron -g neutron
doins etc/*
# stupid renames
rm "${D}etc/neutron/quantum"
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
#remove superfluous stuff
rm -R "${D}/usr/etc/"
}
python_install_all() {
use doc && local HTML_DOCS=( doc/build/html/. )
distutils-r1_python_install_all
}
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
}