1 #######################################################################################
2 # Copyright ETSI Contributors and Others.
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
8 # http://www.apache.org/licenses/LICENSE-2.0
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #######################################################################################
19 envlist = black, flake8, safety
22 toxworkdir = /tmp/.tox
27 setenv = VIRTUAL_ENV={envdir}
28 PYTHONDONTWRITEBYTECODE = 1
29 deps = -r{toxinidir}/requirements.txt
30 parallel_show_output = true
33 #######################################################################################
34 [testenv:release_notes]
38 reno new
{posargs
:new_feature
}
41 #######################################################################################
46 black
--check
--diff NG
-RO
47 black
--check
--diff RO
-plugin
48 black
--check
--diff RO
-SDN
-arista_cloudvision
49 black
--check
--diff RO
-SDN
-dpb
50 black
--check
--diff RO
-SDN
-dynpac
51 black
--check
--diff RO
-SDN
-floodlight_openflow
52 black
--check
--diff RO
-SDN
-ietfl2vpn
53 black
--check
--diff RO
-SDN
-juniper_contrail
54 black
--check
--diff RO
-SDN
-odl_openflow
55 black
--check
--diff RO
-SDN
-onos_openflow
56 black
--check
--diff RO
-SDN
-onos_vpls
57 black
--check
--diff RO
-VIM
-aws
58 black
--check
--diff RO
-VIM
-azure
59 black
--check
--diff RO
-VIM
-openstack
60 black
--check
--diff RO
-VIM
-openvim
61 black
--check
--diff RO
-VIM
-vmware
62 black
--check
--diff RO
-VIM
-gcp
63 black
--check
--diff integration
-tests
66 #######################################################################################
68 deps = {[testenv]deps}
69 -r
{toxinidir
}/requirements
-dev.txt
70 -r
{toxinidir
}/requirements
-test.txt
73 sh
-c 'rm
-f nosetests.xml'
76 - nose2
-C
--coverage NG
-RO
/osm_ng_ro
77 sh
-c 'mv .coverage .coverage_ng_ro'
79 - nose2
-C
--coverage RO
-plugin
/osm_ro_plugin
80 sh
-c 'mv .coverage .coverage_ro_plugin'
81 # RO-SDN-arista_cloudvision
82 - nose2
-C
--coverage RO
-SDN
-arista_cloudvision
/osm_rosdn_arista_cloudvision
83 sh
-c 'mv .coverage .coverage_rosdn_arista_cloudvision'
85 - nose2
-C
--coverage RO
-SDN
-dpb
/osm_rosdn_dpb
86 sh
-c 'mv .coverage .coverage_rosdn_dpb'
88 - nose2
-C
--coverage RO
-SDN
-dynpac
/osm_rosdn_dynpac
89 sh
-c 'mv .coverage .coverage_rosdn_dynpac'
90 # RO-SDN-floodlight_openflow
91 - nose2
-C
--coverage RO
-SDN
-floodlight_openflow
/osm_rosdn_floodlightof
92 sh
-c 'mv .coverage .coverage_rosdn_floodlightof'
94 - nose2
-C
--coverage RO
-SDN
-ietfl2vpn
/osm_rosdn_ietfl2vpn
95 sh
-c 'mv .coverage .coverage_rosdn_ietfl2vpn'
96 # RO-SDN-juniper_contrail
97 - nose2
-C
--coverage RO
-SDN
-juniper_contrail
/osm_rosdn_juniper_contrail
98 sh
-c 'mv .coverage .coverage_rosdn_juniper_contrail'
100 - nose2
-C
--coverage RO
-SDN
-odl_openflow
/osm_rosdn_odlof
101 sh
-c 'mv .coverage .coverage_rosdn_odlof'
102 # RO-SDN-onos_openflow
103 - nose2
-C
--coverage RO
-SDN
-onos_openflow
/osm_rosdn_onosof
104 sh
-c 'mv .coverage .coverage_rosdn_onosof'
106 - nose2
-C
--coverage RO
-SDN
-onos_vpls
/osm_rosdn_onos_vpls
107 sh
-c 'mv .coverage .coverage_rosdn_onos_vpls'
109 - nose2
-C
--coverage RO
-VIM
-aws
/osm_rovim_aws
110 sh
-c 'mv .coverage .coverage_rovim_aws'
112 - nose2
-C
--coverage RO
-VIM
-azure
/osm_rovim_azure
113 sh
-c 'mv .coverage .coverage_rovim_azure'
115 - nose2
-C
--coverage RO
-VIM
-openstack
/osm_rovim_openstack
-s RO
-VIM
-openstack
/osm_rovim_openstack
116 sh
-c 'mv .coverage .coverage_rovim_openstack'
118 - nose2
-C
--coverage RO
-VIM
-openvim
/osm_rovim_openvim
119 sh
-c 'mv .coverage .coverage_rovim_openvim'
121 - nose2
-C
--coverage RO
-VIM
-vmware
/osm_rovim_vmware
-s RO
-VIM
-vmware
/osm_rovim_vmware
122 sh
-c 'mv .coverage .coverage_rovim_vmware'
124 - nose2
-C
--coverage RO
-VIM
-gcp
/osm_rovim_gcp
125 sh
-c 'mv .coverage .coverage_rovim_gcp'
126 # Combine results and generate reports
127 coverage combine .coverage_ng_ro .coverage_ro_plugin .coverage_rosdn_arista_cloudvision .coverage_rosdn_dpb .coverage_rosdn_dynpac .coverage_rosdn_floodlightof .coverage_rosdn_ietfl2vpn .coverage_rosdn_juniper_contrail .coverage_rosdn_odlof .coverage_rosdn_onos_vpls .coverage_rosdn_onosof .coverage_rovim_aws .coverage_rovim_azure .coverage_rovim_openvim .coverage_rovim_gcp # .coverage_rovim_openstack .coverage_rovim_vmware
128 coverage report --omit='*tests*'
129 coverage html -d ./cover --omit='*tests*'
130 coverage xml -o coverage.xml --omit='*tests*'
131 whitelist_externals = sh
134 #######################################################################################
139 - flake8 NG
-RO
/osm_ng_ro
/ NG
-RO
/setup.py
140 - flake8 RO
-plugin
/osm_ro_plugin
/ RO
-plugin
/setup.py
141 - flake8 RO
-SDN
-arista_cloudvision
/osm_rosdn_arista_cloudvision
/ RO
-SDN
-arista_cloudvision
/setup.py
142 - flake8 RO
-SDN
-dpb
/osm_rosdn_dpb
/ RO
-SDN
-dpb
/setup.py
143 - flake8 RO
-SDN
-dynpac
/osm_rosdn_dynpac
/ RO
-SDN
-dynpac
/setup.py
144 - flake8 RO
-SDN
-floodlight_openflow
/osm_rosdn_floodlightof
/ RO
-SDN
-floodlight_openflow
/setup.py
145 - flake8 RO
-SDN
-ietfl2vpn
/osm_rosdn_ietfl2vpn
/ RO
-SDN
-ietfl2vpn
/setup.py
146 - flake8 RO
-SDN
-juniper_contrail
/osm_rosdn_juniper_contrail
/ RO
-SDN
-juniper_contrail
/setup.py
147 - flake8 RO
-SDN
-odl_openflow
/osm_rosdn_odlof
/ RO
-SDN
-odl_openflow
/setup.py
148 - flake8 RO
-SDN
-onos_openflow
/osm_rosdn_onosof
/ RO
-SDN
-onos_openflow
/setup.py
149 - flake8 RO
-SDN
-onos_vpls
/osm_rosdn_onos_vpls
/ RO
-SDN
-onos_vpls
/setup.py
150 - flake8 RO
-VIM
-aws
/osm_rovim_aws
/ RO
-VIM
-aws
/setup.py
151 - flake8 RO
-VIM
-azure
/osm_rovim_azure
/ RO
-VIM
-azure
/setup.py
152 - flake8 RO
-VIM
-openstack
/osm_rovim_openstack
/ RO
-VIM
-openstack
/setup.py
153 - flake8 RO
-VIM
-openvim
/osm_rovim_openvim
/ RO
-VIM
-openvim
/setup.py
154 - flake8 RO
-VIM
-vmware
/osm_rovim_vmware
/vimconn_vmware.py RO
-VIM
-vmware
/osm_rovim_vmware
/tests
/test_vimconn_vmware.py RO
-VIM
-vmware
/setup.py
155 - flake8 RO
-VIM
-gcp
/osm_rovim_gcp
/ RO
-VIM
-gcp
/setup.py
156 - flake8 integration
-tests
/
159 #######################################################################################
161 deps = {[testenv]deps}
162 -r
{toxinidir
}/requirements
-dev.txt
163 -r
{toxinidir
}/requirements
-test.txt
167 - pylint
-E NG
-RO
/osm_ng_ro
168 - pylint
-E RO
-plugin
/osm_ro_plugin
169 - pylint
-E RO
-SDN
-arista_cloudvision
/osm_rosdn_arista_cloudvision
170 - pylint
-E RO
-SDN
-dpb
/osm_rosdn_dpb
171 - pylint
-E RO
-SDN
-dynpac
/osm_rosdn_dynpac
172 - pylint
-E RO
-SDN
-floodlight_openflow
/osm_rosdn_floodlightof
173 - pylint
-E RO
-SDN
-ietfl2vpn
/osm_rosdn_ietfl2vpn
174 - pylint
-E RO
-SDN
-juniper_contrail
/osm_rosdn_juniper_contrail
175 - pylint
-E RO
-SDN
-odl_openflow
/osm_rosdn_odlof
176 - pylint
-E RO
-SDN
-onos_openflow
/osm_rosdn_onosof
177 - pylint
-E RO
-SDN
-onos_vpls
/osm_rosdn_onos_vpls
178 - pylint
-E RO
-VIM
-aws
/osm_rovim_aws
179 - pylint
-E RO
-VIM
-azure
/osm_rovim_azure
180 - pylint
-E RO
-VIM
-openstack
/osm_rovim_openstack
181 - pylint
-E RO
-VIM
-openvim
/osm_rovim_openvim
182 - pylint
-E RO
-VIM
-vmware
/osm_rovim_vmware
183 - pylint
-E RO
-VIM
-gcp
/osm_rovim_gcp
186 #######################################################################################
191 deps = {[testenv]deps}
195 - safety check
--full
-report
198 #######################################################################################
199 [testenv:pip-compile]
200 deps = pip-tools==5.5.0
203 - sh
-c
"for file in requirements*.in ; do pip-compile -rU --no-header $file ;\
204 out=`echo $file | sed 's/.in/.txt/'` ; \
205 sed -i -e '1 e head -16 tox.ini' $out ;\
207 - sh
-c
"sed -i 's/.*RO-plugin/-e RO-plugin/g' requirements-test.txt"
208 whitelist_externals = sh
211 #######################################################################################
213 deps = {[testenv]deps}
214 -r
{toxinidir
}/requirements
-dist.txt
216 changedir = {toxinidir}/NG-RO
218 sh
-c 'rm
-rf osm_ng_ro
/requirements.txt deb_dist dist osm_ng_ro.egg
-info osm_ng_ro
*.tar.gz'
219 sh
-c 'cp ..
/requirements.txt osm_ng_ro
/requirements.txt'
220 python3 setup.py --command-packages=stdeb.command sdist_dsc
221 sh
-c 'cd deb_dist
/osm
-ng
-ro
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
222 whitelist_externals = sh
224 #######################################################################################
225 [testenv:dist_ro_plugin]
226 deps = {[testenv]deps}
227 -r
{toxinidir
}/requirements
-dist.txt
229 changedir = {toxinidir}/RO-plugin
231 sh
-c 'rm
-rf deb_dist dist osm_ro_plugin.egg
-info osm_ro_plugin
*.tar.gz'
232 python3 setup.py --command-packages=stdeb.command sdist_dsc
233 sh
-c 'cd deb_dist
/osm
-ro
-plugin
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
234 whitelist_externals = sh
236 #######################################################################################
237 [testenv:dist_ro_sdn_arista_cloudvision]
238 deps = {[testenv]deps}
239 -r
{toxinidir
}/requirements
-dist.txt
241 changedir = {toxinidir}/RO-SDN-arista_cloudvision
243 sh
-c 'rm
-rf deb_dist dist osm_rosdn_arista_cloudvision.egg
-info osm_rosdn_arista_cloudvision
*.tar.gz'
244 python3 setup.py --command-packages=stdeb.command sdist_dsc
245 sh
-c 'cd deb_dist
/osm
-rosdn
-arista
-cloudvision
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
246 whitelist_externals = sh
248 #######################################################################################
249 [testenv:dist_ro_sdn_dpb]
250 deps = {[testenv]deps}
251 -r
{toxinidir
}/requirements
-dist.txt
253 changedir = {toxinidir}/RO-SDN-dpb
255 sh
-c 'rm
-rf deb_dist dist osm_rosdn_dpb.egg
-info osm_rosdn_dpb
*.tar.gz'
256 python3 setup.py --command-packages=stdeb.command sdist_dsc
257 sh
-c 'cd deb_dist
/osm
-rosdn
-dpb
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
258 whitelist_externals = sh
260 #######################################################################################
261 [testenv:dist_ro_sdn_dynpac]
262 deps = {[testenv]deps}
263 -r
{toxinidir
}/requirements
-dist.txt
265 changedir = {toxinidir}/RO-SDN-dynpac
267 sh
-c 'rm
-rf deb_dist dist osm_rosdn_dynpac.egg
-info osm_rosdn_dynpac
*.tar.gz'
268 python3 setup.py --command-packages=stdeb.command sdist_dsc
269 sh
-c 'cd deb_dist
/osm
-rosdn
-dynpac
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
270 whitelist_externals = sh
272 #######################################################################################
273 [testenv:dist_ro_sdn_floodlight_of]
274 deps = {[testenv]deps}
275 -r
{toxinidir
}/requirements
-dist.txt
277 changedir = {toxinidir}/RO-SDN-floodlight_openflow
279 sh
-c 'rm
-rf deb_dist dist osm_rosdn_floodlightof.egg
-info osm_rosdn_floodlightof
*.tar.gz'
280 python3 setup.py --command-packages=stdeb.command sdist_dsc
281 sh
-c 'cd deb_dist
/osm
-rosdn
-floodlightof
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
282 whitelist_externals = sh
284 #######################################################################################
285 [testenv:dist_ro_sdn_ietfl2vpn]
286 deps = {[testenv]deps}
287 -r
{toxinidir
}/requirements
-dist.txt
289 changedir = {toxinidir}/RO-SDN-ietfl2vpn
291 sh
-c 'rm
-rf deb_dist dist osm_rosdn_ietfl2vpn.egg
-info osm_rosdn_ietfl2vpn
*.tar.gz'
292 python3 setup.py --command-packages=stdeb.command sdist_dsc
293 sh
-c 'cd deb_dist
/osm
-rosdn
-ietfl2vpn
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
294 whitelist_externals = sh
296 #######################################################################################
297 [testenv:dist_ro_sdn_juniper_contrail]
298 deps = {[testenv]deps}
299 -r
{toxinidir
}/requirements
-dist.txt
301 changedir = {toxinidir}/RO-SDN-juniper_contrail
303 sh
-c 'rm
-rf deb_dist dist osm_rosdn_juniper_contrail.egg
-info osm_rosdn_juniper_contrail
*.tar.gz'
304 python3 setup.py --command-packages=stdeb.command sdist_dsc
305 sh
-c 'cd deb_dist
/osm
-rosdn
-juniper
-contrail
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
306 whitelist_externals = sh
308 #######################################################################################
309 [testenv:dist_ro_sdn_odl_of]
310 deps = {[testenv]deps}
311 -r
{toxinidir
}/requirements
-dist.txt
313 changedir = {toxinidir}/RO-SDN-odl_openflow
315 sh
-c 'rm
-rf deb_dist dist osm_rosdn_odlof.egg
-info osm_rosdn_odlof
*.tar.gz'
316 python3 setup.py --command-packages=stdeb.command sdist_dsc
317 sh
-c 'cd deb_dist
/osm
-rosdn
-odlof
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
318 whitelist_externals = sh
320 #######################################################################################
321 [testenv:dist_ro_sdn_onos_of]
322 deps = {[testenv]deps}
323 -r
{toxinidir
}/requirements
-dist.txt
325 changedir = {toxinidir}/RO-SDN-onos_openflow
327 sh
-c 'rm
-rf deb_dist dist osm_rosdn_onosof.egg
-info osm_rosdn_onosof
*.tar.gz'
328 python3 setup.py --command-packages=stdeb.command sdist_dsc
329 sh
-c 'cd deb_dist
/osm
-rosdn
-onosof
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
330 whitelist_externals = sh
332 #######################################################################################
333 [testenv:dist_ro_sdn_onos_vpls]
334 deps = {[testenv]deps}
335 -r
{toxinidir
}/requirements
-dist.txt
337 changedir = {toxinidir}/RO-SDN-onos_vpls
339 sh
-c 'rm
-rf deb_dist dist osm_rosdn_onos_vpls.egg
-info osm_rosdn_onos_vpls
*.tar.gz'
340 python3 setup.py --command-packages=stdeb.command sdist_dsc
341 sh
-c 'cd deb_dist
/osm
-rosdn
-onos
-vpls
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
342 whitelist_externals = sh
344 #######################################################################################
345 [testenv:dist_ro_vim_aws]
346 deps = {[testenv]deps}
347 -r
{toxinidir
}/requirements
-dist.txt
349 changedir = {toxinidir}/RO-VIM-aws
351 sh
-c 'rm
-rf deb_dist dist osm_rovim_aws.egg
-info osm_rovim_aws
*.tar.gz'
352 python3 setup.py --command-packages=stdeb.command sdist_dsc
353 sh
-c 'cd deb_dist
/osm
-rovim
-aws
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
354 whitelist_externals = sh
356 #######################################################################################
357 [testenv:dist_ro_vim_azure]
358 deps = {[testenv]deps}
359 -r
{toxinidir
}/requirements
-dist.txt
361 changedir = {toxinidir}/RO-VIM-azure
363 sh
-c 'rm
-rf deb_dist dist osm_rovim_azure.egg
-info osm_rovim_azure
*.tar.gz'
364 python3 setup.py --command-packages=stdeb.command sdist_dsc
365 sh
-c 'cd deb_dist
/osm
-rovim
-azure
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
366 whitelist_externals = sh
368 #######################################################################################
369 [testenv:dist_ro_vim_openstack]
370 deps = {[testenv]deps}
371 -r
{toxinidir
}/requirements
-dist.txt
373 changedir = {toxinidir}/RO-VIM-openstack
375 sh
-c 'rm
-rf deb_dist dist osm_rovim_openstack.egg
-info osm_rovim_openstack
*.tar.gz'
376 python3 setup.py --command-packages=stdeb.command sdist_dsc
377 sh
-c 'cd deb_dist
/osm
-rovim
-openstack
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
378 whitelist_externals = sh
380 #######################################################################################
381 [testenv:dist_ro_vim_openvim]
382 deps = {[testenv]deps}
383 -r
{toxinidir
}/requirements
-dist.txt
385 changedir = {toxinidir}/RO-VIM-openvim
387 sh
-c 'rm
-rf deb_dist dist osm_rovim_openvim.egg
-info osm_rovim_openvim
*.tar.gz'
388 python3 setup.py --command-packages=stdeb.command sdist_dsc
389 sh
-c 'cd deb_dist
/osm
-rovim
-openvim
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
390 whitelist_externals = sh
392 #######################################################################################
393 [testenv:dist_ro_vim_vmware]
394 deps = {[testenv]deps}
395 -r
{toxinidir
}/requirements
-dist.txt
397 changedir = {toxinidir}/RO-VIM-vmware
399 sh
-c 'rm
-rf deb_dist dist osm_rovim_vmware.egg
-info osm_rovim_vmware
*.tar.gz'
400 python3 setup.py --command-packages=stdeb.command sdist_dsc
401 sh
-c 'cd deb_dist
/osm
-rovim
-vmware
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
402 whitelist_externals = sh
404 #######################################################################################
405 [testenv:dist_ro_vim_gcp]
406 deps = {[testenv]deps}
407 -r
{toxinidir
}/requirements
-dist.txt
409 changedir = {toxinidir}/RO-VIM-gcp
411 sh
-c 'rm
-rf deb_dist dist osm_rovim_gcp.egg
-info osm_rovim_gcp
*.tar.gz'
412 python3 setup.py --command-packages=stdeb.command sdist_dsc
413 sh
-c 'cd deb_dist
/osm
-rovim
-gcp
*/ && dpkg
-buildpackage
-rfakeroot
-uc
-us'
414 whitelist_externals = sh
417 #######################################################################################
433 max-line-length = 120