Gentoo Archives: gentoo-commits

From: Matt Thode <prometheanfire@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-cluster/neutron/
Date: Tue, 30 Aug 2016 02:25:46
Message-Id: 1472523910.4d6960807c4c7074f5d78bdd2c2ffa3a3952c704.prometheanfire@gentoo
1 commit: 4d6960807c4c7074f5d78bdd2c2ffa3a3952c704
2 Author: Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 30 02:25:10 2016 +0000
4 Commit: Matt Thode <prometheanfire <AT> gentoo <DOT> org>
5 CommitDate: Tue Aug 30 02:25:10 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4d696080
7
8 sys-cluster/neutron: bup
9
10 Package-Manager: portage-2.2.28
11
12 sys-cluster/neutron/Manifest | 3 +
13 sys-cluster/neutron/neutron-8.2.0.ebuild | 216 +++++++++++++++++++++++++++++++
14 2 files changed, 219 insertions(+)
15
16 diff --git a/sys-cluster/neutron/Manifest b/sys-cluster/neutron/Manifest
17 index 929ce6c..acb9ed6 100644
18 --- a/sys-cluster/neutron/Manifest
19 +++ b/sys-cluster/neutron/Manifest
20 @@ -1,5 +1,8 @@
21 DIST neutron-8.1.2.tar.gz 2825641 SHA256 a3fdeed1421e1586bbdabd046474f1060bff4751257eacd90489f9e1b6eeff9d SHA512 70ae87033f8cc7c0b00373ed6fa82cd1406fdb12fa3688bb59e27f42c928944368e87099ee6c312f318375998cb3405ee70773feec8eaf4e20035d1a5442ff23 WHIRLPOOL f9313c89eebb7987dd9d6e3581179a9f49f8ce1c8e33de08136b6e32e0fb9486b49c91cd7ed9083a7609413f740c9dfb23d81f05db09edb0722d93f7601f80ab
22 +DIST neutron-8.2.0.tar.gz 2820699 SHA256 8d6edde5cacd5f77bf9f95c0ecee8acfcdceafa1ae4a2dd4ad3ea7ad7343811c SHA512 e7ec025678d23a13c7cbefa4a23f0a72afeefb7118f93419b8227d74de38661024d80a5797e0b67a0322dd5118010de3ef8c8a62106ea46cff4579f6f29f0d68 WHIRLPOOL e719d16d690cb6f0e99021854358758a1dc64c50239593785dae3313e1284068ada80566bb6f064666a2b140a64f988194d32d9ed0908575bbae651b5f5db0e5
23 DIST neutron-configs-2016.1.9999.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
24 DIST neutron-configs-8.1.2.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
25 +DIST neutron-configs-8.2.0.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
26 DIST neutron-ml2-plugins-2016.1.9999.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
27 DIST neutron-ml2-plugins-8.1.2.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
28 +DIST neutron-ml2-plugins-8.2.0.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
29
30 diff --git a/sys-cluster/neutron/neutron-8.2.0.ebuild b/sys-cluster/neutron/neutron-8.2.0.ebuild
31 new file mode 100644
32 index 00000000..1791c44
33 --- /dev/null
34 +++ b/sys-cluster/neutron/neutron-8.2.0.ebuild
35 @@ -0,0 +1,216 @@
36 +# Copyright 1999-2016 Gentoo Foundation
37 +# Distributed under the terms of the GNU General Public License v2
38 +# $Id$
39 +
40 +EAPI=6
41 +PYTHON_COMPAT=( python2_7 python3_4 )
42 +
43 +inherit distutils-r1 linux-info user
44 +
45 +DESCRIPTION="A virtual network service for Openstack"
46 +HOMEPAGE="https://launchpad.net/neutron"
47 +SRC_URI="https://tarballs.openstack.org/${PN}/${P}.tar.gz
48 + https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/mitaka/configs.tar.gz -> neutron-configs-${PV}.tar.gz
49 + https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/mitaka/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz"
50 +
51 +LICENSE="Apache-2.0"
52 +SLOT="0"
53 +KEYWORDS="~amd64 ~arm64 ~x86"
54 +IUSE="compute-only dhcp ipv6 l3 metadata openvswitch linuxbridge server sqlite mysql postgres"
55 +REQUIRED_USE="!compute-only? ( || ( mysql postgres sqlite ) )
56 + compute-only? ( !mysql !postgres !sqlite !dhcp !l3 !metadata !server
57 + || ( openvswitch linuxbridge ) )"
58 +
59 +CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
60 +DEPEND="
61 + dev-python/setuptools[${PYTHON_USEDEP}]
62 + ${CDEPEND}
63 + app-admin/sudo"
64 +
65 +RDEPEND="
66 + ${CDEPEND}
67 + dev-python/paste[${PYTHON_USEDEP}]
68 + >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
69 + >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
70 + !~dev-python/routes-2.0[${PYTHON_USEDEP}]
71 + !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
72 + <=dev-python/routes-2.2[${PYTHON_USEDEP}]
73 + >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
74 + >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
75 + >=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
76 + >=dev-python/greenlet-0.3.2[${PYTHON_USEDEP}]
77 + >=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
78 + >=dev-python/requests-2.8.1[${PYTHON_USEDEP}]
79 + !~dev-python/requests-2.9.0[${PYTHON_USEDEP}]
80 + >=dev-python/jinja-2.8[${PYTHON_USEDEP}]
81 + >=dev-python/keystonemiddleware-4.0.0[${PYTHON_USEDEP}]
82 + !=dev-python/keystonemiddleware-4.1.0[${PYTHON_USEDEP}]
83 + >=dev-python/netaddr-0.7.12[${PYTHON_USEDEP}]
84 + !~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
85 + >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
86 + >=dev-python/neutron-lib-0.0.1[${PYTHON_USEDEP}]
87 + >=dev-python/python-neutronclient-2.6.0[${PYTHON_USEDEP}]
88 + !~dev-python/python-neutronclient-4.1.0[${PYTHON_USEDEP}]
89 + >=dev-python/retrying-1.2.3[${PYTHON_USEDEP}]
90 + !~dev-python/retrying-1.3.0[${PYTHON_USEDEP}]
91 + >=dev-python/ryu-3.30[${PYTHON_USEDEP}]
92 + compute-only? (
93 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
94 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
95 + )
96 + sqlite? (
97 + >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
98 + <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
99 + )
100 + mysql? (
101 + dev-python/mysql-python
102 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
103 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
104 + )
105 + postgres? (
106 + dev-python/psycopg:2
107 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
108 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
109 + )
110 + >=dev-python/webob-1.2.3[${PYTHON_USEDEP}]
111 + >=dev-python/keystoneauth-2.1.0[${PYTHON_USEDEP}]
112 + >=dev-python/alembic-0.8.0[${PYTHON_USEDEP}]
113 + >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
114 + >=dev-python/stevedore-1.5.0[${PYTHON_USEDEP}]
115 + >=dev-python/oslo-concurrency-3.7.1[${PYTHON_USEDEP}]
116 + >=dev-python/oslo-config-3.7.0[${PYTHON_USEDEP}]
117 + >=dev-python/oslo-context-0.2.0[${PYTHON_USEDEP}]
118 + >=dev-python/oslo-db-4.1.0[${PYTHON_USEDEP}]
119 + >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
120 + >=dev-python/oslo-log-1.14.0[${PYTHON_USEDEP}]
121 + >=dev-python/oslo-messaging-4.0.0[${PYTHON_USEDEP}]
122 + >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
123 + >=dev-python/oslo-policy-0.5.0[${PYTHON_USEDEP}]
124 + >=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
125 + >=dev-python/oslo-rootwrap-2.0.0[${PYTHON_USEDEP}]
126 + >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
127 + >=dev-python/oslo-service-1.0.0[${PYTHON_USEDEP}]
128 + >=dev-python/oslo-utils-3.5.0[${PYTHON_USEDEP}]
129 + >=dev-python/oslo-versionedobjects-1.5.0[${PYTHON_USEDEP}]
130 + >=dev-python/ovs-2.4.0[$(python_gen_usedep 'python2_7')]
131 + >=dev-python/python-novaclient-2.29.0[${PYTHON_USEDEP}]
132 + !~dev-python/python-novaclient-2.33.0[${PYTHON_USEDEP}]
133 + >=dev-python/python-designateclient-1.5.0[${PYTHON_USEDEP}]
134 + dev-python/pyudev[${PYTHON_USEDEP}]
135 + sys-apps/iproute2
136 + net-misc/bridge-utils
137 + net-firewall/ipset
138 + net-firewall/iptables
139 + net-firewall/ebtables
140 + net-firewall/conntrack-tools
141 + openvswitch? ( <=net-misc/openvswitch-2.5.9999 )
142 + ipv6? (
143 + net-misc/radvd
144 + >=net-misc/dibbler-1.0.1
145 + )
146 + dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
147 +
148 +#PATCHES=(
149 +#)
150 +
151 +pkg_setup() {
152 + linux-info_pkg_setup
153 + CONFIG_CHECK_MODULES="VLAN_8021Q IP6_NF_FILTER IP6_NF_IPTABLES IP_NF_TARGET_REJECT \
154 + IP_NF_MANGLE IP_NF_TARGET_MASQUERADE NF_NAT_IPV4 NF_CONNTRACK_IPV4 NF_DEFRAG_IPV4 \
155 + NF_NAT_IPV4 NF_NAT NF_CONNTRACK IP_NF_FILTER IP_NF_IPTABLES NETFILTER_XTABLES"
156 + if linux_config_exists; then
157 + for module in ${CONFIG_CHECK_MODULES}; do
158 + linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled in kernel"
159 + done
160 + fi
161 + enewgroup neutron
162 + enewuser neutron -1 -1 /var/lib/neutron neutron
163 +}
164 +
165 +pkg_config() {
166 + fperms 0700 /var/log/neutron
167 + fowners neutron:neutron /var/log neutron
168 +}
169 +
170 +src_prepare() {
171 + sed -i '/^hacking/d' test-requirements.txt || die
172 + # it's /bin/ip not /sbin/ip
173 + sed -i 's/sbin\/ip\,/bin\/ip\,/g' etc/neutron/rootwrap.d/* || die
174 + distutils-r1_python_prepare_all
175 +}
176 +
177 +python_install() {
178 + distutils-r1_python_install
179 + if use server; then
180 + newinitd "${FILESDIR}/neutron.initd" "neutron-server"
181 + newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
182 + dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
183 + fi
184 + if use dhcp; then
185 + newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
186 + newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
187 + fi
188 + if use l3; then
189 + newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
190 + newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
191 + fi
192 + if use metadata; then
193 + newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
194 + newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
195 + fi
196 + if use openvswitch; then
197 + newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
198 + newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
199 + newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
200 + newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
201 + fi
202 + if use linuxbridge; then
203 + newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
204 + newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd.liberty" "neutron-linuxbridge-agent"
205 + fi
206 + diropts -m 755 -o neutron -g neutron
207 + dodir /var/log/neutron /var/lib/neutron
208 + keepdir /etc/neutron
209 + insinto /etc/neutron
210 + insopts -m 0640 -o neutron -g neutron
211 +
212 + doins etc/*
213 + # stupid renames
214 + insinto /etc/neutron
215 + doins -r "etc/neutron/plugins"
216 + insopts -m 0640 -o root -g root
217 + doins "etc/rootwrap.conf"
218 + doins -r "etc/neutron/rootwrap.d"
219 +
220 + insopts -m 0644
221 + insinto "/usr/lib64/python2.7/site-packages/neutron/db/migration/alembic_migrations/"
222 + doins -r "neutron/db/migration/alembic_migrations/versions"
223 +
224 + #add sudoers definitions for user neutron
225 + insinto /etc/sudoers.d/
226 + insopts -m 0440 -o root -g root
227 + newins "${FILESDIR}/neutron.sudoersd" neutron
228 +
229 + # add generated configs
230 + cd "${D}/etc/neutron" || die
231 + unpack "neutron-configs-${PV}.tar.gz"
232 + cd "${D}/etc/neutron/plugins/ml2" || die
233 + unpack "neutron-ml2-plugins-${PV}.tar.gz"
234 +
235 + # correcting perms
236 + fowners neutron:neutron -R "/etc/neutron"
237 + fperms o-rwx -R "/etc/neutron/"
238 +
239 + #remove superfluous stuff
240 + rm -R "${D}/usr/etc/"
241 +}
242 +
243 +pkg_postinst() {
244 + elog
245 + elog "neutron-server's conf.d file may need updating to include additional ini files"
246 + elog "We currently assume the ml2 plugin will be used but do not make assumptions"
247 + elog "on if you will use openvswitch or linuxbridge (or something else)"
248 + elog
249 + elog "Other conf.d files may need updating too, but should be good for the default use case"
250 + elog
251 +}