sys-cluster/neutron: bup

Package-Manager: portage-2.3.0
This commit is contained in:
Matthew Thode
2016-10-11 12:53:59 -05:00
parent 963d8c5f1f
commit eca594dc8c
3 changed files with 220 additions and 1 deletions

View File

@@ -1,10 +1,13 @@
DIST neutron-8.2.0.tar.gz 2820699 SHA256 8d6edde5cacd5f77bf9f95c0ecee8acfcdceafa1ae4a2dd4ad3ea7ad7343811c SHA512 e7ec025678d23a13c7cbefa4a23f0a72afeefb7118f93419b8227d74de38661024d80a5797e0b67a0322dd5118010de3ef8c8a62106ea46cff4579f6f29f0d68 WHIRLPOOL e719d16d690cb6f0e99021854358758a1dc64c50239593785dae3313e1284068ada80566bb6f064666a2b140a64f988194d32d9ed0908575bbae651b5f5db0e5
DIST neutron-8.3.0.tar.gz 2839603 SHA256 f1ac7563ed12eb3a6d5679966df606183a8f133db7abc51d1edffb5aadf6306c SHA512 6f53d437430e819402d0911a0319f421024c052f5ab9cf23ef456087ed5a9e8177410bdebce3a135e823268a578a4fdd54ac81d3d8b4dcc7f6487692fa470a93 WHIRLPOOL 85234f790c684763c133e09b99f7d2b2a206dec76764f31fc9a65f27bbf3fa78dad907546355db650d5bd3f90bd930a86b2e5828fea494496397e0b7a024798a
DIST neutron-9.0.0.tar.gz 3012055 SHA256 f8f46f9b9ae5a4673e557fa6f48314390ed992fa6c8f53ad890e3004488df8aa SHA512 4c404725e5ecbd6f306923b05276cfde63b2a3a83f972e39fa7e32876ccb9f70d5177717aa077b70daace993b993ca2c0e059ad860b8d5f9bf960e86fbeb999e WHIRLPOOL dde00afa5558a31b18f68f41df8a400114975e35020ba34edea4268c90b0789edcb8d25decd42003d357642827d45dec24aa61a37260301337bf94073e384403
DIST neutron-configs-2016.1.9999.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
DIST neutron-configs-2016.2.9999.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
DIST neutron-configs-8.2.0.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
DIST neutron-configs-8.3.0.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
DIST neutron-configs-9.0.0.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
DIST neutron-ml2-plugins-2016.1.9999.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
DIST neutron-ml2-plugins-2016.2.9999.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
DIST neutron-ml2-plugins-8.2.0.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
DIST neutron-ml2-plugins-8.3.0.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
DIST neutron-ml2-plugins-9.0.0.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671

View File

@@ -78,7 +78,7 @@ RDEPEND="
>=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.5.0[${PYTHON_USEDEP}]
>=dev-python/oslo-concurrency-3.5.0[${PYTHON_USEDEP}]
>=dev-python/oslo-concurrency-3.7.1[${PYTHON_USEDEP}]
>=dev-python/oslo-config-3.7.0[${PYTHON_USEDEP}]
>=dev-python/oslo-context-0.2.0[${PYTHON_USEDEP}]
>=dev-python/oslo-db-4.1.0[${PYTHON_USEDEP}]

View File

@@ -0,0 +1,216 @@
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=6
PYTHON_COMPAT=( python2_7 python3_4 )
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
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/mitaka/configs.tar.gz -> neutron-configs-${PV}.tar.gz
https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/mitaka/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.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.2[${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/greenlet-0.3.2[${PYTHON_USEDEP}]
>=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
>=dev-python/requests-2.8.1[${PYTHON_USEDEP}]
!~dev-python/requests-2.9.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/netaddr-0.7.12[${PYTHON_USEDEP}]
!~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
>=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
>=dev-python/neutron-lib-0.0.1[${PYTHON_USEDEP}]
>=dev-python/python-neutronclient-2.6.0[${PYTHON_USEDEP}]
!~dev-python/python-neutronclient-4.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}]
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/mysql-python
>=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
<dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
)
postgres? (
dev-python/psycopg:2
>=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.1.0[${PYTHON_USEDEP}]
>=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
>=dev-python/six-1.9.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-1.5.0[${PYTHON_USEDEP}]
>=dev-python/oslo-concurrency-3.7.1[${PYTHON_USEDEP}]
>=dev-python/oslo-config-3.7.0[${PYTHON_USEDEP}]
>=dev-python/oslo-context-0.2.0[${PYTHON_USEDEP}]
>=dev-python/oslo-db-4.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
>=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
>=dev-python/oslo-messaging-4.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-policy-0.5.0[${PYTHON_USEDEP}]
>=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
>=dev-python/oslo-rootwrap-2.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
>=dev-python/oslo-service-1.0.0[${PYTHON_USEDEP}]
>=dev-python/oslo-utils-3.5.0[${PYTHON_USEDEP}]
>=dev-python/oslo-versionedobjects-1.5.0[${PYTHON_USEDEP}]
>=dev-python/ovs-2.4.0[$(python_gen_usedep 'python2_7')]
>=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}]
dev-python/pyudev[${PYTHON_USEDEP}]
sys-apps/iproute2
net-misc/bridge-utils
net-firewall/ipset
net-firewall/iptables
net-firewall/ebtables
net-firewall/conntrack-tools
openvswitch? ( <=net-misc/openvswitch-2.5.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
}