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: Mon, 27 Feb 2017 05:46:22
Message-Id: 1488174342.2ecb07877533c4512eed1731960b3a1522ad57d3.prometheanfire@gentoo
1 commit: 2ecb07877533c4512eed1731960b3a1522ad57d3
2 Author: Matthew Thode <prometheanfire <AT> gentoo <DOT> org>
3 AuthorDate: Mon Feb 27 05:44:55 2017 +0000
4 Commit: Matt Thode <prometheanfire <AT> gentoo <DOT> org>
5 CommitDate: Mon Feb 27 05:45:42 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2ecb0787
7
8 sys-cluster/neutron: OCATA
9
10 Package-Manager: Portage-2.3.3, Repoman-2.3.1
11
12 sys-cluster/neutron/Manifest | 5 +
13 sys-cluster/neutron/neutron-10.0.0.ebuild | 238 ++++++++++++++++++++++++
14 sys-cluster/neutron/neutron-2017.1.9999.ebuild | 239 +++++++++++++++++++++++++
15 3 files changed, 482 insertions(+)
16
17 diff --git a/sys-cluster/neutron/Manifest b/sys-cluster/neutron/Manifest
18 index d4b7f67821..21a2fd174d 100644
19 --- a/sys-cluster/neutron/Manifest
20 +++ b/sys-cluster/neutron/Manifest
21 @@ -1,13 +1,18 @@
22 +DIST neutron-10.0.0.tar.gz 3133746 SHA256 b90258d72230592eccf1f4f3f2dfe6e8a36f2bb0b5cba4c1da5d5ac879767d72 SHA512 02019952b7321524e531a8aaa34a90ab60d12b191de3714f4719dfea9f376e174908e748484b6365f023c1c712357fe75733bcc13a1d265ed283bf619eac151a WHIRLPOOL 0a0466e477890657d42528b15792ccd82b893407024dfe204e26693c5ca7034c6fcdbcfc10e18cd7ff4afdeecfe92722f7b76cc6e99b38cc0b5717ab9b29e129
23 DIST neutron-8.3.0.tar.gz 2839603 SHA256 f1ac7563ed12eb3a6d5679966df606183a8f133db7abc51d1edffb5aadf6306c SHA512 6f53d437430e819402d0911a0319f421024c052f5ab9cf23ef456087ed5a9e8177410bdebce3a135e823268a578a4fdd54ac81d3d8b4dcc7f6487692fa470a93 WHIRLPOOL 85234f790c684763c133e09b99f7d2b2a206dec76764f31fc9a65f27bbf3fa78dad907546355db650d5bd3f90bd930a86b2e5828fea494496397e0b7a024798a
24 DIST neutron-9.1.1.tar.gz 3020682 SHA256 37842c0c23665c71015d61f0f0ac00e8d9cab332c38e188cf02665c84eb0a5a3 SHA512 d4d1f6051c0e94a7dae05703c0cf119986df954276363794fefa78fd1a31742f4a173e3260a56f982a1cb4f8e1895312c8a0a73f39c08565231b2e109099eebb WHIRLPOOL 428cc5928bb4cea125fbf0377bbd08ac91f9526e4016059a041f8ad4447778a5e315c0420ae6136540c5d8b60b1f5c048bbe648201ec1d568c85ca0cf36f3dc7
25 DIST neutron-9.2.0.tar.gz 3027332 SHA256 7314e5047b989fe85f2206a6460ad25509b03ca8e47c3fc79940d91550d87631 SHA512 c2ae881e5eacf977b6858cdbf008f42e2bba0b6fc5501cf9895a2b1a3ee4119393d894f2686e431936e50f365fffaae29421ab548f95ed6d3e797b6c77c6a539 WHIRLPOOL 3a1fde19109df8bfd7b32fd0927dc0097abe6a5c91cc70d69a8a6869439e7600f7116be8f6563e5e2d800b64cf349bbf08dbec931ceb3f67ea29af44e8f0b7e1
26 +DIST neutron-configs-10.0.0.tar.gz 25094 SHA256 7f210828b0c3fa9d859fca8c4735fd60aefad3cd5d0cf810b762af268df59269 SHA512 40ab9f2f4ea338c061c57d9aa5611ee3f3476ab8f5199ac50577f94fec032ccd27028bd072d9d9d0cc9f12327613e542b4d62a0403540730f9d6efbc4992a00d WHIRLPOOL dbdaff979a40e33cd171390657e39fb9b2a311c972e8d018e301af5361b0224ba62972241febfc4991a06bf9f16390e5c779de86823ed94eaebbee610c8c6657
27 DIST neutron-configs-2016.1.9999.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
28 DIST neutron-configs-2016.2.9999.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
29 +DIST neutron-configs-2017.1.9999.tar.gz 25094 SHA256 7f210828b0c3fa9d859fca8c4735fd60aefad3cd5d0cf810b762af268df59269 SHA512 40ab9f2f4ea338c061c57d9aa5611ee3f3476ab8f5199ac50577f94fec032ccd27028bd072d9d9d0cc9f12327613e542b4d62a0403540730f9d6efbc4992a00d WHIRLPOOL dbdaff979a40e33cd171390657e39fb9b2a311c972e8d018e301af5361b0224ba62972241febfc4991a06bf9f16390e5c779de86823ed94eaebbee610c8c6657
30 DIST neutron-configs-8.3.0.tar.gz 11523 SHA256 906229c66882eb05d782a749b53b9368df28ae69eb99179cbaed2640996dd227 SHA512 95ff31ce599977b8bbd7f8783ba41c1f760a30721e8a6ea84fc8f0ecfc4f429d624dad29728d5bc026f7d76a4da6e19c0f4718fd1b58b65c50ff0470a3cf8f2d WHIRLPOOL 38868696cb444cd7c4eaaf704bfb8e2efb6486aa67a99951afd43de1a8e8ca7224e8b8592a2c28e09a7a43c1a9cf0ca02e44e05a50cc370bb9dacee873022a6d
31 DIST neutron-configs-9.1.1.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
32 DIST neutron-configs-9.2.0.tar.gz 13458 SHA256 111e940f7da24c18673794188f348285997a0e1f250446076700902bab101f71 SHA512 42f9a685f0869c491610c66f5bc5f952b959a0a8514687007814e0ca97e27fb491460bc64eaf8fc47e982c8519b1dc9b5e2b4a3c047535b52521b3325ba38d44 WHIRLPOOL bcceb81f46d69aa02876f2d2a76c642f9b48b472dc3e6217bef48649ecfa64d535c2361d224889f31f21b7fb40bb97930ab93443abe6d9cddfd56f19d84f5601
33 +DIST neutron-ml2-plugins-10.0.0.tar.gz 6811 SHA256 6ad759c8720563e502602fc32a72569884bdaad1443f4b8d23c8e9d240071f70 SHA512 51c01eab8f424b871f55b7dc45bbae6300d477e8bc7be4587c4945f75a4fc65f622ed69dbfe0c63db7fced2118987730204d259bce53e353a6b4d24df89dadcb WHIRLPOOL 5e4bf872895e8354fa9e6d7bb071f3d973f28c22297ea414f1bfc8f1bb3ae3102609ff61f19efda59f9d9d7a515fb8ae8216347a2935af64e4bdeeb6ec610863
34 DIST neutron-ml2-plugins-2016.1.9999.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
35 DIST neutron-ml2-plugins-2016.2.9999.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
36 +DIST neutron-ml2-plugins-2017.1.9999.tar.gz 6811 SHA256 6ad759c8720563e502602fc32a72569884bdaad1443f4b8d23c8e9d240071f70 SHA512 51c01eab8f424b871f55b7dc45bbae6300d477e8bc7be4587c4945f75a4fc65f622ed69dbfe0c63db7fced2118987730204d259bce53e353a6b4d24df89dadcb WHIRLPOOL 5e4bf872895e8354fa9e6d7bb071f3d973f28c22297ea414f1bfc8f1bb3ae3102609ff61f19efda59f9d9d7a515fb8ae8216347a2935af64e4bdeeb6ec610863
37 DIST neutron-ml2-plugins-8.3.0.tar.gz 2031 SHA256 af1f0436924a64d9a07f0770f06d0a2e48457b45389e1ab90e42c7157797557b SHA512 b0c194ad29d7e7a44c04b74a109523044cf268ebd8cb91965759a5cbba7cef47c252f7d0ab49bf888a74b1776891b99402dd54d45fd6099734fa03afd519350d WHIRLPOOL c279518f1868c54409a28dea03f32aa60a413af9dc3ce4387034aaab6387f1c96a937c370bcab3e6e96474a12f19f3794e7b3e0482cb067fb2b060ad09faabad
38 DIST neutron-ml2-plugins-9.1.1.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
39 DIST neutron-ml2-plugins-9.2.0.tar.gz 2073 SHA256 1e12e81673168860a2d7c5172deb00a7301d0a698014113dfcfba74759ba444d SHA512 bcde3a4d5e041c0080503cdf8f60c83e1c09f873010e78f4bc9066f57b17cf69394cf71cedbb8d3819a62d9cfdd545b102f16b53c0e3deb44b1d03136c14d711 WHIRLPOOL 099e19f4ec98fb54187e100af057711db3df3f86ae117a03f38afe37b6c5135666330aeb05867331cc015e8f14bee6e34942d1cb5aec63f92e01e7d6ae69f671
40
41 diff --git a/sys-cluster/neutron/neutron-10.0.0.ebuild b/sys-cluster/neutron/neutron-10.0.0.ebuild
42 new file mode 100644
43 index 0000000000..3474d2af6f
44 --- /dev/null
45 +++ b/sys-cluster/neutron/neutron-10.0.0.ebuild
46 @@ -0,0 +1,238 @@
47 +# Copyright 1999-2017 Gentoo Foundation
48 +# Distributed under the terms of the GNU General Public License v2
49 +# $Id$
50 +
51 +EAPI=6
52 +PYTHON_COMPAT=( python2_7 )
53 +# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
54 +
55 +inherit distutils-r1 linux-info user
56 +
57 +DESCRIPTION="A virtual network service for Openstack"
58 +HOMEPAGE="https://launchpad.net/neutron"
59 +SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ocata/configs.tar.gz -> neutron-configs-${PV}.tar.gz
60 + https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ocata/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz
61 + https://tarballs.openstack.org/${PN}/${P}.tar.gz"
62 +
63 +LICENSE="Apache-2.0"
64 +SLOT="0"
65 +KEYWORDS="~amd64 ~arm64 ~x86"
66 +IUSE="compute-only dhcp ipv6 l3 metadata openvswitch linuxbridge server sqlite mysql postgres"
67 +REQUIRED_USE="!compute-only? ( || ( mysql postgres sqlite ) )
68 + compute-only? ( !mysql !postgres !sqlite !dhcp !l3 !metadata !server
69 + || ( openvswitch linuxbridge ) )"
70 +
71 +CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
72 +DEPEND="
73 + dev-python/setuptools[${PYTHON_USEDEP}]
74 + ${CDEPEND}
75 + app-admin/sudo"
76 +
77 +RDEPEND="
78 + ${CDEPEND}
79 + dev-python/paste[${PYTHON_USEDEP}]
80 + >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
81 + >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
82 + !~dev-python/routes-2.0[${PYTHON_USEDEP}]
83 + !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
84 + !~dev-python/routes-2.3[${PYTHON_USEDEP}]
85 + >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
86 + >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
87 + >=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
88 + !~dev-python/pecan-1.0.2[${PYTHON_USEDEP}]
89 + !~dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
90 + !~dev-python/pecan-1.0.4[${PYTHON_USEDEP}]
91 + !~dev-python/pecan-1.2.0[${PYTHON_USEDEP}]
92 + >=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
93 + >=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
94 + !~dev-python/requests-2.12.2[${PYTHON_USEDEP}]
95 + >=dev-python/jinja-2.8[${PYTHON_USEDEP}]
96 + !~dev-python/jinja-2.9.0[${PYTHON_USEDEP}]
97 + !~dev-python/jinja-2.9.1[${PYTHON_USEDEP}]
98 + !~dev-python/jinja-2.9.2[${PYTHON_USEDEP}]
99 + !~dev-python/jinja-2.9.3[${PYTHON_USEDEP}]
100 + !~dev-python/jinja-2.9.4[${PYTHON_USEDEP}]
101 + >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
102 + >=dev-python/netaddr-0.7.13[${PYTHON_USEDEP}]
103 + !~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
104 + >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
105 + >=dev-python/neutron-lib-1.1.0[${PYTHON_USEDEP}]
106 + >=dev-python/python-neutronclient-5.1.0[${PYTHON_USEDEP}]
107 + >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
108 + >=dev-python/ryu-4.9[${PYTHON_USEDEP}]
109 + compute-only? (
110 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
111 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
112 + )
113 + sqlite? (
114 + >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
115 + <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
116 + )
117 + mysql? (
118 + >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
119 + !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
120 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
121 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
122 + )
123 + postgres? (
124 + >=dev-python/psycopg-2.5.0
125 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
126 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
127 + )
128 + >=dev-python/webob-1.6.0[${PYTHON_USEDEP}]
129 + >=dev-python/keystoneauth-2.18.0[${PYTHON_USEDEP}]
130 + >=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
131 + >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
132 + >=dev-python/stevedore-1.17.1[${PYTHON_USEDEP}]
133 + >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
134 + >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
135 + >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
136 + !~dev-python/oslo-config-3.18.0[${PYTHON_USEDEP}]
137 + >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
138 + >=dev-python/oslo-db-4.15.0[${PYTHON_USEDEP}]
139 + >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
140 + >=dev-python/oslo-log-3.11.0[${PYTHON_USEDEP}]
141 + >=dev-python/oslo-messaging-5.14.0[${PYTHON_USEDEP}]
142 + >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
143 + >=dev-python/oslo-policy-1.17.0[${PYTHON_USEDEP}]
144 + >=dev-python/oslo-privsep-1.9.0[${PYTHON_USEDEP}]
145 + >=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
146 + >=dev-python/oslo-rootwrap-5.0.0[${PYTHON_USEDEP}]
147 + >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
148 + >=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
149 + >=dev-python/oslo-utils-3.18.0[${PYTHON_USEDEP}]
150 + >=dev-python/oslo-versionedobjects-1.17.0[${PYTHON_USEDEP}]
151 + >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
152 + >=dev-python/ovs-2.6.1[${PYTHON_USEDEP}]
153 + >=dev-python/pyroute2-0.4.12[${PYTHON_USEDEP}]
154 + >=dev-python/weakrefmethod-1.0.2[$(python_gen_usedep 'python2_7')]
155 + >=dev-python/python-novaclient-6.0.0[${PYTHON_USEDEP}]
156 + !~dev-python/python-novaclient-7.0.0[${PYTHON_USEDEP}]
157 + >=dev-python/python-designateclient-1.5.0[${PYTHON_USEDEP}]
158 + virtual/python-singledispatch[${PYTHON_USEDEP}]
159 + dev-python/pyudev[${PYTHON_USEDEP}]
160 + sys-apps/iproute2
161 + net-misc/iputils[arping]
162 + net-misc/bridge-utils
163 + net-firewall/ipset
164 + net-firewall/iptables
165 + net-firewall/ebtables
166 + net-firewall/conntrack-tools
167 + openvswitch? ( <=net-misc/openvswitch-2.6.9999 )
168 + ipv6? (
169 + net-misc/radvd
170 + >=net-misc/dibbler-1.0.1
171 + )
172 + dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
173 +
174 +#PATCHES=(
175 +#)
176 +
177 +pkg_pretend() {
178 + linux-info_pkg_setup
179 + CONFIG_CHECK_MODULES="VLAN_8021Q IP6_NF_FILTER IP6_NF_IPTABLES IP_NF_TARGET_REJECT \
180 + IP_NF_MANGLE IP_NF_TARGET_MASQUERADE NF_NAT_IPV4 NF_CONNTRACK_IPV4 NF_DEFRAG_IPV4 \
181 + NF_NAT_IPV4 NF_NAT NF_CONNTRACK IP_NF_FILTER IP_NF_IPTABLES NETFILTER_XTABLES"
182 + if linux_config_exists; then
183 + for module in ${CONFIG_CHECK_MODULES}; do
184 + linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled in kernel"
185 + done
186 + fi
187 +}
188 +
189 +pkg_setup() {
190 + enewgroup neutron
191 + enewuser neutron -1 -1 /var/lib/neutron neutron
192 +}
193 +
194 +pkg_config() {
195 + fperms 0700 /var/log/neutron
196 + fowners neutron:neutron /var/log neutron
197 +}
198 +
199 +src_prepare() {
200 + sed -i '/^hacking/d' test-requirements.txt || die
201 + # it's /bin/ip not /sbin/ip
202 + sed -i 's/sbin\/ip\,/bin\/ip\,/g' etc/neutron/rootwrap.d/* || die
203 + distutils-r1_python_prepare_all
204 +}
205 +
206 +python_install_all() {
207 + distutils-r1_python_install_all
208 + if use server; then
209 + newinitd "${FILESDIR}/neutron.initd" "neutron-server"
210 + newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
211 + dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
212 + fi
213 + if use dhcp; then
214 + newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
215 + newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
216 + fi
217 + if use l3; then
218 + newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
219 + newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
220 + fi
221 + if use metadata; then
222 + newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
223 + newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
224 + fi
225 + if use openvswitch; then
226 + newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
227 + newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
228 + newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
229 + newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
230 + fi
231 + if use linuxbridge; then
232 + newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
233 + newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd" "neutron-linuxbridge-agent"
234 + fi
235 + diropts -m 755 -o neutron -g neutron
236 + dodir /var/log/neutron /var/lib/neutron
237 + keepdir /etc/neutron
238 + insinto /etc/neutron
239 + insopts -m 0640 -o neutron -g neutron
240 +
241 + doins etc/*
242 + # stupid renames
243 + insinto /etc/neutron
244 + doins -r "etc/neutron/plugins"
245 + insopts -m 0640 -o root -g root
246 + doins "etc/rootwrap.conf"
247 + doins -r "etc/neutron/rootwrap.d"
248 +
249 + #add sudoers definitions for user neutron
250 + insinto /etc/sudoers.d/
251 + insopts -m 0440 -o root -g root
252 + newins "${FILESDIR}/neutron.sudoersd" neutron
253 +
254 + # add generated configs
255 + cd "${D}/etc/neutron" || die
256 + unpack "neutron-configs-${PV}.tar.gz"
257 + cd "${D}/etc/neutron/plugins/ml2" || die
258 + unpack "neutron-ml2-plugins-${PV}.tar.gz"
259 +
260 + # correcting perms
261 + fowners neutron:neutron -R "/etc/neutron"
262 + fperms o-rwx -R "/etc/neutron/"
263 +
264 + #remove superfluous stuff
265 + rm -R "${D}/usr/etc/"
266 +}
267 +
268 +python_install() {
269 + distutils-r1_python_install
270 + # copy migration conf file (not coppied on install via setup.py script)
271 + insopts -m 0644
272 + insinto "/$(python_get_sitedir)/neutron/db/migration/alembic_migrations/"
273 + doins -r "neutron/db/migration/alembic_migrations/versions"
274 +}
275 +
276 +pkg_postinst() {
277 + elog
278 + elog "neutron-server's conf.d file may need updating to include additional ini files"
279 + elog "We currently assume the ml2 plugin will be used but do not make assumptions"
280 + elog "on if you will use openvswitch or linuxbridge (or something else)"
281 + elog
282 + elog "Other conf.d files may need updating too, but should be good for the default use case"
283 + elog
284 +}
285
286 diff --git a/sys-cluster/neutron/neutron-2017.1.9999.ebuild b/sys-cluster/neutron/neutron-2017.1.9999.ebuild
287 new file mode 100644
288 index 0000000000..24498c6862
289 --- /dev/null
290 +++ b/sys-cluster/neutron/neutron-2017.1.9999.ebuild
291 @@ -0,0 +1,239 @@
292 +# Copyright 1999-2017 Gentoo Foundation
293 +# Distributed under the terms of the GNU General Public License v2
294 +# $Id$
295 +
296 +EAPI=6
297 +PYTHON_COMPAT=( python2_7 )
298 +# still no 34 :( https://bugs.launchpad.net/neutron/+bug/1630439
299 +
300 +inherit distutils-r1 git-r3 linux-info user
301 +
302 +DESCRIPTION="A virtual network service for Openstack"
303 +HOMEPAGE="https://launchpad.net/neutron"
304 +SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ocata/configs.tar.gz -> neutron-configs-${PV}.tar.gz
305 + https://dev.gentoo.org/~prometheanfire/dist/openstack/neutron/ocata/ml2_plugins.tar.gz -> neutron-ml2-plugins-${PV}.tar.gz"
306 +EGIT_REPO_URI="https://github.com/openstack/neutron.git"
307 +EGIT_BRANCH="stable/ocata"
308 +
309 +LICENSE="Apache-2.0"
310 +SLOT="0"
311 +KEYWORDS=""
312 +IUSE="compute-only dhcp ipv6 l3 metadata openvswitch linuxbridge server sqlite mysql postgres"
313 +REQUIRED_USE="!compute-only? ( || ( mysql postgres sqlite ) )
314 + compute-only? ( !mysql !postgres !sqlite !dhcp !l3 !metadata !server
315 + || ( openvswitch linuxbridge ) )"
316 +
317 +CDEPEND=">=dev-python/pbr-1.8[${PYTHON_USEDEP}]"
318 +DEPEND="
319 + dev-python/setuptools[${PYTHON_USEDEP}]
320 + ${CDEPEND}
321 + app-admin/sudo"
322 +
323 +RDEPEND="
324 + ${CDEPEND}
325 + dev-python/paste[${PYTHON_USEDEP}]
326 + >=dev-python/pastedeploy-1.5.0-r1[${PYTHON_USEDEP}]
327 + >=dev-python/routes-1.12.3[${PYTHON_USEDEP}]
328 + !~dev-python/routes-2.0[${PYTHON_USEDEP}]
329 + !~dev-python/routes-2.1[$(python_gen_usedep 'python2_7')]
330 + !~dev-python/routes-2.3[${PYTHON_USEDEP}]
331 + >=dev-python/debtcollector-1.2.0[${PYTHON_USEDEP}]
332 + >=dev-python/eventlet-0.18.4[${PYTHON_USEDEP}]
333 + >=dev-python/pecan-1.0.0[${PYTHON_USEDEP}]
334 + !~dev-python/pecan-1.0.2[${PYTHON_USEDEP}]
335 + !~dev-python/pecan-1.0.3[${PYTHON_USEDEP}]
336 + !~dev-python/pecan-1.0.4[${PYTHON_USEDEP}]
337 + !~dev-python/pecan-1.2.0[${PYTHON_USEDEP}]
338 + >=dev-python/httplib2-0.7.5[${PYTHON_USEDEP}]
339 + >=dev-python/requests-2.10.0[${PYTHON_USEDEP}]
340 + !~dev-python/requests-2.12.2[${PYTHON_USEDEP}]
341 + >=dev-python/jinja-2.8[${PYTHON_USEDEP}]
342 + !~dev-python/jinja-2.9.0[${PYTHON_USEDEP}]
343 + !~dev-python/jinja-2.9.1[${PYTHON_USEDEP}]
344 + !~dev-python/jinja-2.9.2[${PYTHON_USEDEP}]
345 + !~dev-python/jinja-2.9.3[${PYTHON_USEDEP}]
346 + !~dev-python/jinja-2.9.4[${PYTHON_USEDEP}]
347 + >=dev-python/keystonemiddleware-4.12.0[${PYTHON_USEDEP}]
348 + >=dev-python/netaddr-0.7.13[${PYTHON_USEDEP}]
349 + !~dev-python/netaddr-0.7.16[${PYTHON_USEDEP}]
350 + >=dev-python/netifaces-0.10.4[${PYTHON_USEDEP}]
351 + >=dev-python/neutron-lib-1.1.0[${PYTHON_USEDEP}]
352 + >=dev-python/python-neutronclient-5.1.0[${PYTHON_USEDEP}]
353 + >=dev-python/tenacity-3.2.1[${PYTHON_USEDEP}]
354 + >=dev-python/ryu-4.9[${PYTHON_USEDEP}]
355 + compute-only? (
356 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
357 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
358 + )
359 + sqlite? (
360 + >=dev-python/sqlalchemy-1.0.10[sqlite,${PYTHON_USEDEP}]
361 + <dev-python/sqlalchemy-1.1.0[sqlite,${PYTHON_USEDEP}]
362 + )
363 + mysql? (
364 + >=dev-python/pymysql-0.7.6[${PYTHON_USEDEP}]
365 + !~dev-python/pymysql-0.7.7[${PYTHON_USEDEP}]
366 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
367 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
368 + )
369 + postgres? (
370 + >=dev-python/psycopg-2.5.0
371 + >=dev-python/sqlalchemy-1.0.10[${PYTHON_USEDEP}]
372 + <dev-python/sqlalchemy-1.1.0[${PYTHON_USEDEP}]
373 + )
374 + >=dev-python/webob-1.6.0[${PYTHON_USEDEP}]
375 + >=dev-python/keystoneauth-2.18.0[${PYTHON_USEDEP}]
376 + >=dev-python/alembic-0.8.10[${PYTHON_USEDEP}]
377 + >=dev-python/six-1.9.0[${PYTHON_USEDEP}]
378 + >=dev-python/stevedore-1.17.1[${PYTHON_USEDEP}]
379 + >=dev-python/oslo-cache-1.5.0[${PYTHON_USEDEP}]
380 + >=dev-python/oslo-concurrency-3.8.0[${PYTHON_USEDEP}]
381 + >=dev-python/oslo-config-3.14.0[${PYTHON_USEDEP}]
382 + !~dev-python/oslo-config-3.18.0[${PYTHON_USEDEP}]
383 + >=dev-python/oslo-context-2.9.0[${PYTHON_USEDEP}]
384 + >=dev-python/oslo-db-4.15.0[${PYTHON_USEDEP}]
385 + >=dev-python/oslo-i18n-2.1.0[${PYTHON_USEDEP}]
386 + >=dev-python/oslo-log-3.11.0[${PYTHON_USEDEP}]
387 + >=dev-python/oslo-messaging-5.14.0[${PYTHON_USEDEP}]
388 + >=dev-python/oslo-middleware-3.0.0[${PYTHON_USEDEP}]
389 + >=dev-python/oslo-policy-1.17.0[${PYTHON_USEDEP}]
390 + >=dev-python/oslo-privsep-1.9.0[${PYTHON_USEDEP}]
391 + >=dev-python/oslo-reports-0.6.0[${PYTHON_USEDEP}]
392 + >=dev-python/oslo-rootwrap-5.0.0[${PYTHON_USEDEP}]
393 + >=dev-python/oslo-serialization-1.10.0[${PYTHON_USEDEP}]
394 + >=dev-python/oslo-service-1.10.0[${PYTHON_USEDEP}]
395 + >=dev-python/oslo-utils-3.18.0[${PYTHON_USEDEP}]
396 + >=dev-python/oslo-versionedobjects-1.17.0[${PYTHON_USEDEP}]
397 + >=dev-python/osprofiler-1.4.0[${PYTHON_USEDEP}]
398 + >=dev-python/ovs-2.6.1[${PYTHON_USEDEP}]
399 + >=dev-python/pyroute2-0.4.12[${PYTHON_USEDEP}]
400 + >=dev-python/weakrefmethod-1.0.2[$(python_gen_usedep 'python2_7')]
401 + >=dev-python/python-novaclient-6.0.0[${PYTHON_USEDEP}]
402 + !~dev-python/python-novaclient-7.0.0[${PYTHON_USEDEP}]
403 + >=dev-python/python-designateclient-1.5.0[${PYTHON_USEDEP}]
404 + virtual/python-singledispatch[${PYTHON_USEDEP}]
405 + dev-python/pyudev[${PYTHON_USEDEP}]
406 + sys-apps/iproute2
407 + net-misc/iputils[arping]
408 + net-misc/bridge-utils
409 + net-firewall/ipset
410 + net-firewall/iptables
411 + net-firewall/ebtables
412 + net-firewall/conntrack-tools
413 + openvswitch? ( <=net-misc/openvswitch-2.6.9999 )
414 + ipv6? (
415 + net-misc/radvd
416 + >=net-misc/dibbler-1.0.1
417 + )
418 + dhcp? ( net-dns/dnsmasq[dhcp-tools] )"
419 +
420 +#PATCHES=(
421 +#)
422 +
423 +pkg_pretend() {
424 + linux-info_pkg_setup
425 + CONFIG_CHECK_MODULES="VLAN_8021Q IP6_NF_FILTER IP6_NF_IPTABLES IP_NF_TARGET_REJECT \
426 + IP_NF_MANGLE IP_NF_TARGET_MASQUERADE NF_NAT_IPV4 NF_CONNTRACK_IPV4 NF_DEFRAG_IPV4 \
427 + NF_NAT_IPV4 NF_NAT NF_CONNTRACK IP_NF_FILTER IP_NF_IPTABLES NETFILTER_XTABLES"
428 + if linux_config_exists; then
429 + for module in ${CONFIG_CHECK_MODULES}; do
430 + linux_chkconfig_present ${module} || ewarn "${module} needs to be enabled in kernel"
431 + done
432 + fi
433 +}
434 +
435 +pkg_setup() {
436 + enewgroup neutron
437 + enewuser neutron -1 -1 /var/lib/neutron neutron
438 +}
439 +
440 +pkg_config() {
441 + fperms 0700 /var/log/neutron
442 + fowners neutron:neutron /var/log neutron
443 +}
444 +
445 +src_prepare() {
446 + sed -i '/^hacking/d' test-requirements.txt || die
447 + # it's /bin/ip not /sbin/ip
448 + sed -i 's/sbin\/ip\,/bin\/ip\,/g' etc/neutron/rootwrap.d/* || die
449 + distutils-r1_python_prepare_all
450 +}
451 +
452 +python_install_all() {
453 + distutils-r1_python_install_all
454 + if use server; then
455 + newinitd "${FILESDIR}/neutron.initd" "neutron-server"
456 + newconfd "${FILESDIR}/neutron-server.confd" "neutron-server"
457 + dosym /etc/neutron/plugin.ini /etc/neutron/plugins/ml2/ml2_conf.ini
458 + fi
459 + if use dhcp; then
460 + newinitd "${FILESDIR}/neutron.initd" "neutron-dhcp-agent"
461 + newconfd "${FILESDIR}/neutron-dhcp-agent.confd" "neutron-dhcp-agent"
462 + fi
463 + if use l3; then
464 + newinitd "${FILESDIR}/neutron.initd" "neutron-l3-agent"
465 + newconfd "${FILESDIR}/neutron-l3-agent.confd" "neutron-l3-agent"
466 + fi
467 + if use metadata; then
468 + newinitd "${FILESDIR}/neutron.initd" "neutron-metadata-agent"
469 + newconfd "${FILESDIR}/neutron-metadata-agent.confd" "neutron-metadata-agent"
470 + fi
471 + if use openvswitch; then
472 + newinitd "${FILESDIR}/neutron.initd" "neutron-openvswitch-agent"
473 + newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-openvswitch-agent"
474 + newinitd "${FILESDIR}/neutron.initd" "neutron-ovs-cleanup"
475 + newconfd "${FILESDIR}/neutron-openvswitch-agent.confd" "neutron-ovs-cleanup"
476 + fi
477 + if use linuxbridge; then
478 + newinitd "${FILESDIR}/neutron.initd" "neutron-linuxbridge-agent"
479 + newconfd "${FILESDIR}/neutron-linuxbridge-agent.confd" "neutron-linuxbridge-agent"
480 + fi
481 + diropts -m 755 -o neutron -g neutron
482 + dodir /var/log/neutron /var/lib/neutron
483 + keepdir /etc/neutron
484 + insinto /etc/neutron
485 + insopts -m 0640 -o neutron -g neutron
486 +
487 + doins etc/*
488 + # stupid renames
489 + insinto /etc/neutron
490 + doins -r "etc/neutron/plugins"
491 + insopts -m 0640 -o root -g root
492 + doins "etc/rootwrap.conf"
493 + doins -r "etc/neutron/rootwrap.d"
494 +
495 + #add sudoers definitions for user neutron
496 + insinto /etc/sudoers.d/
497 + insopts -m 0440 -o root -g root
498 + newins "${FILESDIR}/neutron.sudoersd" neutron
499 +
500 + # add generated configs
501 + cd "${D}/etc/neutron" || die
502 + unpack "neutron-configs-${PV}.tar.gz"
503 + cd "${D}/etc/neutron/plugins/ml2" || die
504 + unpack "neutron-ml2-plugins-${PV}.tar.gz"
505 +
506 + # correcting perms
507 + fowners neutron:neutron -R "/etc/neutron"
508 + fperms o-rwx -R "/etc/neutron/"
509 +
510 + #remove superfluous stuff
511 + rm -R "${D}/usr/etc/"
512 +}
513 +
514 +python_install() {
515 + distutils-r1_python_install
516 + # copy migration conf file (not coppied on install via setup.py script)
517 + insopts -m 0644
518 + insinto "/$(python_get_sitedir)/neutron/db/migration/alembic_migrations/"
519 + doins -r "neutron/db/migration/alembic_migrations/versions"
520 +}
521 +
522 +pkg_postinst() {
523 + elog
524 + elog "neutron-server's conf.d file may need updating to include additional ini files"
525 + elog "We currently assume the ml2 plugin will be used but do not make assumptions"
526 + elog "on if you will use openvswitch or linuxbridge (or something else)"
527 + elog
528 + elog "Other conf.d files may need updating too, but should be good for the default use case"
529 + elog
530 +}