Adding initial release notes
[osm/RO.git] / tox.ini
1 #######################################################################################
2 # Copyright ETSI Contributors and Others.
3 #
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
7 #
8 # http://www.apache.org/licenses/LICENSE-2.0
9 #
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
13 # implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
16 #######################################################################################
17
18 [tox]
19 envlist = black, cover, flake8, pylint, safety
20
21 [tox:jenkins]
22 toxworkdir = /tmp/.tox
23
24 [testenv]
25 usedevelop = True
26 basepython = python3
27 setenv = VIRTUAL_ENV={envdir}
28 PYTHONDONTWRITEBYTECODE = 1
29 deps = -r{toxinidir}/requirements.txt
30 parallel_show_output = true
31
32
33 #######################################################################################
34 [testenv:black]
35 deps = black
36 skip_install = true
37 commands =
38 - black --check --diff NG-RO
39 - black --check --diff RO-plugin
40 - black --check --diff RO-SDN-arista_cloudvision
41 - black --check --diff RO-SDN-dpb
42 - black --check --diff RO-SDN-dynpac
43 - black --check --diff RO-SDN-floodlight_openflow
44 - black --check --diff RO-SDN-ietfl2vpn
45 - black --check --diff RO-SDN-juniper_contrail
46 - black --check --diff RO-SDN-odl_openflow
47 - black --check --diff RO-SDN-onos_openflow
48 - black --check --diff RO-SDN-onos_vpls
49 - black --check --diff RO-VIM-aws
50 - black --check --diff RO-VIM-azure
51 - black --check --diff RO-VIM-fos
52 - black --check --diff RO-VIM-opennebula
53 - black --check --diff RO-VIM-openstack
54 - black --check --diff RO-VIM-openvim
55 - black --check --diff RO-VIM-vmware
56
57
58 #######################################################################################
59 [testenv:cover]
60 deps = {[testenv]deps}
61 -r{toxinidir}/requirements-dev.txt
62 -r{toxinidir}/requirements-test.txt
63 skip_install = true
64 commands =
65 sh -c 'rm -f nosetests.xml'
66 coverage erase
67 # NG-RO
68 - nose2 -C --coverage NG-RO/osm_ng_ro
69 sh -c 'mv .coverage .coverage_ng_ro'
70 # RO-plugin
71 - nose2 -C --coverage RO-plugin/osm_ro_plugin
72 sh -c 'mv .coverage .coverage_ro_plugin'
73 # RO-SDN-arista_cloudvision
74 - nose2 -C --coverage RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision
75 sh -c 'mv .coverage .coverage_rosdn_arista_cloudvision'
76 # RO-SDN-dpb
77 - nose2 -C --coverage RO-SDN-dpb/osm_rosdn_dpb
78 sh -c 'mv .coverage .coverage_rosdn_dpb'
79 # RO-SDN-dynpac
80 - nose2 -C --coverage RO-SDN-dynpac/osm_rosdn_dynpac
81 sh -c 'mv .coverage .coverage_rosdn_dynpac'
82 # RO-SDN-floodlight_openflow
83 - nose2 -C --coverage RO-SDN-floodlight_openflow/osm_rosdn_floodlightof
84 sh -c 'mv .coverage .coverage_rosdn_floodlightof'
85 # RO-SDN-ietfl2vpn
86 - nose2 -C --coverage RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn
87 sh -c 'mv .coverage .coverage_rosdn_ietfl2vpn'
88 # RO-SDN-juniper_contrail
89 - nose2 -C --coverage RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail
90 sh -c 'mv .coverage .coverage_rosdn_juniper_contrail'
91 # RO-SDN-odl_openflow
92 - nose2 -C --coverage RO-SDN-odl_openflow/osm_rosdn_odlof
93 sh -c 'mv .coverage .coverage_rosdn_odlof'
94 # RO-SDN-onos_openflow
95 - nose2 -C --coverage RO-SDN-onos_openflow/osm_rosdn_onosof
96 sh -c 'mv .coverage .coverage_rosdn_onosof'
97 # RO-SDN-onos_vpls
98 - nose2 -C --coverage RO-SDN-onos_vpls/osm_rosdn_onos_vpls
99 sh -c 'mv .coverage .coverage_rosdn_onos_vpls'
100 # RO-VIM-aws
101 - nose2 -C --coverage RO-VIM-aws/osm_rovim_aws
102 sh -c 'mv .coverage .coverage_rovim_aws'
103 # RO-VIM-azure
104 - nose2 -C --coverage RO-VIM-azure/osm_rovim_azure
105 sh -c 'mv .coverage .coverage_rovim_azure'
106 # RO-VIM-fos
107 - nose2 -C --coverage RO-VIM-fos/osm_rovim_fos
108 sh -c 'mv .coverage .coverage_rovim_fos'
109 # RO-VIM-opennebula
110 - nose2 -C --coverage RO-VIM-opennebula/osm_rovim_opennebula
111 sh -c 'mv .coverage .coverage_rovim_opennebula'
112 # RO-VIM-openstack
113 - nose2 -C --coverage RO-VIM-openstack/osm_rovim_openstack -s RO-VIM-openstack/osm_rovim_openstack
114 sh -c 'mv .coverage .coverage_rovim_openstack'
115 # RO-VIM-openvim
116 - nose2 -C --coverage RO-VIM-openvim/osm_rovim_openvim
117 sh -c 'mv .coverage .coverage_rovim_openvim'
118 # RO-VIM-vmware
119 - nose2 -C --coverage RO-VIM-vmware/osm_rovim_vmware -s RO-VIM-vmware/osm_rovim_vmware
120 sh -c 'mv .coverage .coverage_rovim_vmware'
121 # Combine results and generate reports
122 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_fos .coverage_rovim_opennebula .coverage_rovim_openstack .coverage_rovim_openvim .coverage_rovim_vmware
123 coverage report --omit='*tests*'
124 coverage html -d ./cover --omit='*tests*'
125 coverage xml -o coverage.xml --omit='*tests*'
126 whitelist_externals = sh
127
128
129 #######################################################################################
130 [testenv:flake8]
131 deps = flake8
132 skip_install = true
133 commands =
134 - flake8 NG-RO/osm_ng_ro/ NG-RO/setup.py
135 - flake8 RO-plugin/osm_ro_plugin/ RO-plugin/setup.py
136 - flake8 RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision/ RO-SDN-arista_cloudvision/setup.py
137 - flake8 RO-SDN-dpb/osm_rosdn_dpb/ RO-SDN-dpb/setup.py
138 - flake8 RO-SDN-dynpac/osm_rosdn_dynpac/ RO-SDN-dynpac/setup.py
139 - flake8 RO-SDN-floodlight_openflow/osm_rosdn_floodlightof/ RO-SDN-floodlight_openflow/setup.py
140 - flake8 RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn/ RO-SDN-ietfl2vpn/setup.py
141 - flake8 RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail/ RO-SDN-juniper_contrail/setup.py
142 - flake8 RO-SDN-odl_openflow/osm_rosdn_odlof/ RO-SDN-odl_openflow/setup.py
143 - flake8 RO-SDN-onos_openflow/osm_rosdn_onosof/ RO-SDN-onos_openflow/setup.py
144 - flake8 RO-SDN-onos_vpls/osm_rosdn_onos_vpls/ RO-SDN-onos_vpls/setup.py
145 - flake8 RO-VIM-aws/osm_rovim_aws/ RO-VIM-aws/setup.py
146 - flake8 RO-VIM-azure/osm_rovim_azure/ RO-VIM-azure/setup.py
147 - flake8 RO-VIM-fos/osm_rovim_fos/ RO-VIM-fos/setup.py
148 - flake8 RO-VIM-opennebula/osm_rovim_opennebula/ RO-VIM-opennebula/setup.py
149 - flake8 RO-VIM-openstack/osm_rovim_openstack/ RO-VIM-openstack/setup.py
150 - flake8 RO-VIM-openvim/osm_rovim_openvim/ RO-VIM-openvim/setup.py
151 - 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
152
153
154 #######################################################################################
155 [testenv:pylint]
156 deps = {[testenv]deps}
157 -r{toxinidir}/requirements-dev.txt
158 -r{toxinidir}/requirements-test.txt
159 pylint
160 skip_install = true
161 commands =
162 - pylint -E NG-RO/osm_ng_ro
163 - pylint -E RO-plugin/osm_ro_plugin
164 - pylint -E RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision
165 - pylint -E RO-SDN-dpb/osm_rosdn_dpb
166 - pylint -E RO-SDN-dynpac/osm_rosdn_dynpac
167 - pylint -E RO-SDN-floodlight_openflow/osm_rosdn_floodlightof
168 - pylint -E RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn
169 - pylint -E RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail
170 - pylint -E RO-SDN-odl_openflow/osm_rosdn_odlof
171 - pylint -E RO-SDN-onos_openflow/osm_rosdn_onosof
172 - pylint -E RO-SDN-onos_vpls/osm_rosdn_onos_vpls
173 - pylint -E RO-VIM-aws/osm_rovim_aws
174 - pylint -E RO-VIM-azure/osm_rovim_azure
175 - pylint -E RO-VIM-fos/osm_rovim_fos
176 - pylint -E RO-VIM-opennebula/osm_rovim_opennebula
177 - pylint -E RO-VIM-openstack/osm_rovim_openstack
178 - pylint -E RO-VIM-openvim/osm_rovim_openvim
179 - pylint -E RO-VIM-vmware/osm_rovim_vmware
180
181
182 #######################################################################################
183 [testenv:safety]
184 setenv =
185 LC_ALL=C.UTF-8
186 LANG=C.UTF-8
187 deps = {[testenv]deps}
188 safety
189 skip_install = true
190 commands =
191 - safety check --full-report
192
193
194 #######################################################################################
195 [testenv:pip-compile]
196 deps = pip-tools==5.5.0
197 skip_install = true
198 commands =
199 - sh -c "for file in requirements*.in ; do pip-compile -rU --no-header $file ;\
200 out=`echo $file | sed 's/.in/.txt/'` ; \
201 sed -i -e '1 e head -16 tox.ini' $out ;\
202 done"
203 whitelist_externals = sh
204
205
206 #######################################################################################
207 [testenv:dist_ng_ro]
208 deps = {[testenv]deps}
209 -r{toxinidir}/requirements-dist.txt
210 skip_install = true
211 changedir = {toxinidir}/NG-RO
212 commands =
213 sh -c 'rm -rf osm_ng_ro/requirements.txt deb_dist dist osm_ng_ro.egg-info osm_ng_ro*.tar.gz'
214 sh -c 'cp ../requirements.txt osm_ng_ro/requirements.txt'
215 python3 setup.py --command-packages=stdeb.command sdist_dsc
216 sh -c 'cd deb_dist/osm-ng-ro*/ && dpkg-buildpackage -rfakeroot -uc -us'
217 whitelist_externals = sh
218
219 #######################################################################################
220 [testenv:dist_ro_plugin]
221 deps = {[testenv]deps}
222 -r{toxinidir}/requirements-dist.txt
223 skip_install = true
224 changedir = {toxinidir}/RO-plugin
225 commands =
226 sh -c 'rm -rf deb_dist dist osm_ro_plugin.egg-info osm_ro_plugin*.tar.gz'
227 python3 setup.py --command-packages=stdeb.command sdist_dsc
228 sh -c 'cd deb_dist/osm-ro-plugin*/ && dpkg-buildpackage -rfakeroot -uc -us'
229 whitelist_externals = sh
230
231 #######################################################################################
232 [testenv:dist_ro_sdn_arista_cloudvision]
233 deps = {[testenv]deps}
234 -r{toxinidir}/requirements-dist.txt
235 skip_install = true
236 changedir = {toxinidir}/RO-SDN-arista_cloudvision
237 commands =
238 sh -c 'rm -rf deb_dist dist osm_rosdn_arista_cloudvision.egg-info osm_rosdn_arista_cloudvision*.tar.gz'
239 python3 setup.py --command-packages=stdeb.command sdist_dsc
240 sh -c 'cd deb_dist/osm-rosdn-arista-cloudvision*/ && dpkg-buildpackage -rfakeroot -uc -us'
241 whitelist_externals = sh
242
243 #######################################################################################
244 [testenv:dist_ro_sdn_dpb]
245 deps = {[testenv]deps}
246 -r{toxinidir}/requirements-dist.txt
247 skip_install = true
248 changedir = {toxinidir}/RO-SDN-dpb
249 commands =
250 sh -c 'rm -rf deb_dist dist osm_rosdn_dpb.egg-info osm_rosdn_dpb*.tar.gz'
251 python3 setup.py --command-packages=stdeb.command sdist_dsc
252 sh -c 'cd deb_dist/osm-rosdn-dpb*/ && dpkg-buildpackage -rfakeroot -uc -us'
253 whitelist_externals = sh
254
255 #######################################################################################
256 [testenv:dist_ro_sdn_dynpac]
257 deps = {[testenv]deps}
258 -r{toxinidir}/requirements-dist.txt
259 skip_install = true
260 changedir = {toxinidir}/RO-SDN-dynpac
261 commands =
262 sh -c 'rm -rf deb_dist dist osm_rosdn_dynpac.egg-info osm_rosdn_dynpac*.tar.gz'
263 python3 setup.py --command-packages=stdeb.command sdist_dsc
264 sh -c 'cd deb_dist/osm-rosdn-dynpac*/ && dpkg-buildpackage -rfakeroot -uc -us'
265 whitelist_externals = sh
266
267 #######################################################################################
268 [testenv:dist_ro_sdn_floodlight_of]
269 deps = {[testenv]deps}
270 -r{toxinidir}/requirements-dist.txt
271 skip_install = true
272 changedir = {toxinidir}/RO-SDN-floodlight_openflow
273 commands =
274 sh -c 'rm -rf deb_dist dist osm_rosdn_floodlightof.egg-info osm_rosdn_floodlightof*.tar.gz'
275 python3 setup.py --command-packages=stdeb.command sdist_dsc
276 sh -c 'cd deb_dist/osm-rosdn-floodlightof*/ && dpkg-buildpackage -rfakeroot -uc -us'
277 whitelist_externals = sh
278
279 #######################################################################################
280 [testenv:dist_ro_sdn_ietfl2vpn]
281 deps = {[testenv]deps}
282 -r{toxinidir}/requirements-dist.txt
283 skip_install = true
284 changedir = {toxinidir}/RO-SDN-ietfl2vpn
285 commands =
286 sh -c 'rm -rf deb_dist dist osm_rosdn_ietfl2vpn.egg-info osm_rosdn_ietfl2vpn*.tar.gz'
287 python3 setup.py --command-packages=stdeb.command sdist_dsc
288 sh -c 'cd deb_dist/osm-rosdn-ietfl2vpn*/ && dpkg-buildpackage -rfakeroot -uc -us'
289 whitelist_externals = sh
290
291 #######################################################################################
292 [testenv:dist_ro_sdn_juniper_contrail]
293 deps = {[testenv]deps}
294 -r{toxinidir}/requirements-dist.txt
295 skip_install = true
296 changedir = {toxinidir}/RO-SDN-juniper_contrail
297 commands =
298 sh -c 'rm -rf deb_dist dist osm_rosdn_juniper_contrail.egg-info osm_rosdn_juniper_contrail*.tar.gz'
299 python3 setup.py --command-packages=stdeb.command sdist_dsc
300 sh -c 'cd deb_dist/osm-rosdn-juniper-contrail*/ && dpkg-buildpackage -rfakeroot -uc -us'
301 whitelist_externals = sh
302
303 #######################################################################################
304 [testenv:dist_ro_sdn_odl_of]
305 deps = {[testenv]deps}
306 -r{toxinidir}/requirements-dist.txt
307 skip_install = true
308 changedir = {toxinidir}/RO-SDN-odl_openflow
309 commands =
310 sh -c 'rm -rf deb_dist dist osm_rosdn_odlof.egg-info osm_rosdn_odlof*.tar.gz'
311 python3 setup.py --command-packages=stdeb.command sdist_dsc
312 sh -c 'cd deb_dist/osm-rosdn-odlof*/ && dpkg-buildpackage -rfakeroot -uc -us'
313 whitelist_externals = sh
314
315 #######################################################################################
316 [testenv:dist_ro_sdn_onos_of]
317 deps = {[testenv]deps}
318 -r{toxinidir}/requirements-dist.txt
319 skip_install = true
320 changedir = {toxinidir}/RO-SDN-onos_openflow
321 commands =
322 sh -c 'rm -rf deb_dist dist osm_rosdn_onosof.egg-info osm_rosdn_onosof*.tar.gz'
323 python3 setup.py --command-packages=stdeb.command sdist_dsc
324 sh -c 'cd deb_dist/osm-rosdn-onosof*/ && dpkg-buildpackage -rfakeroot -uc -us'
325 whitelist_externals = sh
326
327 #######################################################################################
328 [testenv:dist_ro_sdn_onos_vpls]
329 deps = {[testenv]deps}
330 -r{toxinidir}/requirements-dist.txt
331 skip_install = true
332 changedir = {toxinidir}/RO-SDN-onos_vpls
333 commands =
334 sh -c 'rm -rf deb_dist dist osm_rosdn_onos_vpls.egg-info osm_rosdn_onos_vpls*.tar.gz'
335 python3 setup.py --command-packages=stdeb.command sdist_dsc
336 sh -c 'cd deb_dist/osm-rosdn-onos-vpls*/ && dpkg-buildpackage -rfakeroot -uc -us'
337 whitelist_externals = sh
338
339 #######################################################################################
340 [testenv:dist_ro_vim_aws]
341 deps = {[testenv]deps}
342 -r{toxinidir}/requirements-dist.txt
343 skip_install = true
344 changedir = {toxinidir}/RO-VIM-aws
345 commands =
346 sh -c 'rm -rf deb_dist dist osm_rovim_aws.egg-info osm_rovim_aws*.tar.gz'
347 python3 setup.py --command-packages=stdeb.command sdist_dsc
348 sh -c 'cd deb_dist/osm-rovim-aws*/ && dpkg-buildpackage -rfakeroot -uc -us'
349 whitelist_externals = sh
350
351 #######################################################################################
352 [testenv:dist_ro_vim_azure]
353 deps = {[testenv]deps}
354 -r{toxinidir}/requirements-dist.txt
355 skip_install = true
356 changedir = {toxinidir}/RO-VIM-azure
357 commands =
358 sh -c 'rm -rf deb_dist dist osm_rovim_azure.egg-info osm_rovim_azure*.tar.gz'
359 python3 setup.py --command-packages=stdeb.command sdist_dsc
360 sh -c 'cd deb_dist/osm-rovim-azure*/ && dpkg-buildpackage -rfakeroot -uc -us'
361 whitelist_externals = sh
362
363 #######################################################################################
364 [testenv:dist_ro_vim_fos]
365 deps = {[testenv]deps}
366 -r{toxinidir}/requirements-dist.txt
367 skip_install = true
368 changedir = {toxinidir}/RO-VIM-fos
369 commands =
370 sh -c 'rm -rf deb_dist dist osm_rovim_fos.egg-info osm_rovim_fos*.tar.gz'
371 python3 setup.py --command-packages=stdeb.command sdist_dsc
372 sh -c 'cd deb_dist/osm-rovim-fos*/ && dpkg-buildpackage -rfakeroot -uc -us'
373 whitelist_externals = sh
374
375 #######################################################################################
376 [testenv:dist_ro_vim_opennebula]
377 deps = {[testenv]deps}
378 -r{toxinidir}/requirements-dist.txt
379 skip_install = true
380 changedir = {toxinidir}/RO-VIM-opennebula
381 commands =
382 sh -c 'rm -rf deb_dist dist osm_rovim_opennebula.egg-info osm_rovim_opennebula*.tar.gz'
383 python3 setup.py --command-packages=stdeb.command sdist_dsc
384 sh -c 'cd deb_dist/osm-rovim-opennebula*/ && dpkg-buildpackage -rfakeroot -uc -us'
385 whitelist_externals = sh
386
387 #######################################################################################
388 [testenv:dist_ro_vim_openstack]
389 deps = {[testenv]deps}
390 -r{toxinidir}/requirements-dist.txt
391 skip_install = true
392 changedir = {toxinidir}/RO-VIM-openstack
393 commands =
394 sh -c 'rm -rf deb_dist dist osm_rovim_openstack.egg-info osm_rovim_openstack*.tar.gz'
395 python3 setup.py --command-packages=stdeb.command sdist_dsc
396 sh -c 'cd deb_dist/osm-rovim-openstack*/ && dpkg-buildpackage -rfakeroot -uc -us'
397 whitelist_externals = sh
398
399 #######################################################################################
400 [testenv:dist_ro_vim_openvim]
401 deps = {[testenv]deps}
402 -r{toxinidir}/requirements-dist.txt
403 skip_install = true
404 changedir = {toxinidir}/RO-VIM-openvim
405 commands =
406 sh -c 'rm -rf deb_dist dist osm_rovim_openvim.egg-info osm_rovim_openvim*.tar.gz'
407 python3 setup.py --command-packages=stdeb.command sdist_dsc
408 sh -c 'cd deb_dist/osm-rovim-openvim*/ && dpkg-buildpackage -rfakeroot -uc -us'
409 whitelist_externals = sh
410
411 #######################################################################################
412 [testenv:dist_ro_vim_vmware]
413 deps = {[testenv]deps}
414 -r{toxinidir}/requirements-dist.txt
415 skip_install = true
416 changedir = {toxinidir}/RO-VIM-vmware
417 commands =
418 sh -c 'rm -rf deb_dist dist osm_rovim_vmware.egg-info osm_rovim_vmware*.tar.gz'
419 python3 setup.py --command-packages=stdeb.command sdist_dsc
420 sh -c 'cd deb_dist/osm-rovim-vmware*/ && dpkg-buildpackage -rfakeroot -uc -us'
421 whitelist_externals = sh
422
423 #######################################################################################
424 [flake8]
425 ignore =
426 W291,
427 W293,
428 W503,
429 W605,
430 E123,
431 E125,
432 E203,
433 E226,
434 E241
435 exclude =
436 .git,
437 __pycache__,
438 .tox,
439 max-line-length = 120
440 show-source = True
441 builtins = _