#######################################################################################
# Copyright ETSI Contributors and Others.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#######################################################################################

[tox]
envlist = black, flake8, safety

[tox:jenkins]
toxworkdir = /tmp/.tox

[testenv]
usedevelop = True
basepython = python3
setenv = VIRTUAL_ENV={envdir}
         PYTHONDONTWRITEBYTECODE = 1
deps =  -r{toxinidir}/requirements.txt
parallel_show_output = true


#######################################################################################
[testenv:release_notes]
deps = reno
skip_install = true
whitelist_externals = bash
commands =
        reno new {posargs:new_feature}
        bash -c "sed -i -e '1 e head -16 tox.ini' releasenotes/notes/{posargs:new_feature}*.yaml"


#######################################################################################
[testenv:black]
deps = black
skip_install = true
commands =
        black --check --diff NG-RO
        black --check --diff RO-plugin
        black --check --diff RO-SDN-arista_cloudvision
        black --check --diff RO-SDN-dpb
        black --check --diff RO-SDN-dynpac
        black --check --diff RO-SDN-floodlight_openflow
        black --check --diff RO-SDN-ietfl2vpn
        black --check --diff RO-SDN-juniper_contrail
        black --check --diff RO-SDN-odl_openflow
        black --check --diff RO-SDN-onos_openflow
        black --check --diff RO-SDN-onos_vpls
        black --check --diff RO-VIM-aws
        black --check --diff RO-VIM-azure
        black --check --diff RO-VIM-openstack
        black --check --diff RO-VIM-openvim
        black --check --diff RO-VIM-vmware
        black --check --diff RO-VIM-gcp
        black --check --diff integration-tests


#######################################################################################
[testenv:cover]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dev.txt
        -r{toxinidir}/requirements-test.txt
skip_install = true
whitelist_externals = sh
commands =
        sh -c 'rm -f nosetests.xml'
        coverage erase
        # NG-RO
        nose2 -C --coverage NG-RO/osm_ng_ro -s NG-RO/osm_ng_ro
        sh -c 'mv .coverage .coverage_ng_ro'
        # RO-plugin
        nose2 -C --coverage RO-plugin/osm_ro_plugin -s RO-plugin/osm_ro_plugin
        sh -c 'mv .coverage .coverage_ro_plugin'
        # RO-SDN-arista_cloudvision
        nose2 -C --coverage RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision -s RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision
        sh -c 'mv .coverage .coverage_rosdn_arista_cloudvision'
        # RO-SDN-dpb
        nose2 -C --coverage RO-SDN-dpb/osm_rosdn_dpb -s RO-SDN-dpb/osm_rosdn_dpb
        sh -c 'mv .coverage .coverage_rosdn_dpb'
        # RO-SDN-dynpac
        nose2 -C --coverage RO-SDN-dynpac/osm_rosdn_dynpac -s RO-SDN-dynpac/osm_rosdn_dynpac
        sh -c 'mv .coverage .coverage_rosdn_dynpac'
        # RO-SDN-floodlight_openflow
        nose2 -C --coverage RO-SDN-floodlight_openflow/osm_rosdn_floodlightof -s RO-SDN-floodlight_openflow/osm_rosdn_floodlightof
        sh -c 'mv .coverage .coverage_rosdn_floodlightof'
        # RO-SDN-ietfl2vpn
        nose2 -C --coverage RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn -s RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn
        sh -c 'mv .coverage .coverage_rosdn_ietfl2vpn'
        # RO-SDN-juniper_contrail
        nose2 -C --coverage RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail -s RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail
        sh -c 'mv .coverage .coverage_rosdn_juniper_contrail'
        # RO-SDN-odl_openflow
        nose2 -C --coverage RO-SDN-odl_openflow/osm_rosdn_odlof -s RO-SDN-odl_openflow/osm_rosdn_odlof
        sh -c 'mv .coverage .coverage_rosdn_odlof'
        # RO-SDN-onos_openflow
        nose2 -C --coverage RO-SDN-onos_openflow/osm_rosdn_onosof -s RO-SDN-onos_openflow/osm_rosdn_onosof
        sh -c 'mv .coverage .coverage_rosdn_onosof'
        # RO-SDN-onos_vpls
        nose2 -C --coverage RO-SDN-onos_vpls/osm_rosdn_onos_vpls -s RO-SDN-onos_vpls/osm_rosdn_onos_vpls
        sh -c 'mv .coverage .coverage_rosdn_onos_vpls'
        # RO-VIM-aws
        nose2 -C --coverage RO-VIM-aws/osm_rovim_aws -s RO-VIM-aws/osm_rovim_aws
        sh -c 'mv .coverage .coverage_rovim_aws'
        # RO-VIM-azure
        nose2 -C --coverage RO-VIM-azure/osm_rovim_azure -s RO-VIM-azure/osm_rovim_azure
        sh -c 'mv .coverage .coverage_rovim_azure'
        # RO-VIM-openstack
        # nose2 -C --coverage RO-VIM-openstack/osm_rovim_openstack -s RO-VIM-openstack/osm_rovim_openstack
        # sh -c 'mv .coverage .coverage_rovim_openstack'
        # RO-VIM-openvim
        nose2 -C --coverage RO-VIM-openvim/osm_rovim_openvim -s RO-VIM-openvim/osm_rovim_openvim
        sh -c 'mv .coverage .coverage_rovim_openvim'
        # RO-VIM-vmware
        # nose2 -C --coverage RO-VIM-vmware/osm_rovim_vmware -s RO-VIM-vmware/osm_rovim_vmware
        # sh -c 'mv .coverage .coverage_rovim_vmware'
        # RO-VIM-gcp
        nose2 -C --coverage RO-VIM-gcp/osm_rovim_gcp -s RO-VIM-gcp/osm_rovim_gcp
        sh -c 'mv .coverage .coverage_rovim_gcp'
        # Combine results and generate reports
        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
        coverage report --omit='*tests*'
        coverage html -d ./cover --omit='*tests*'
        coverage xml -o coverage.xml --omit='*tests*'

#######################################################################################
[testenv:flake8]
deps =  flake8
        flake8-import-order
skip_install = true
commands =
        flake8 NG-RO/osm_ng_ro/ NG-RO/setup.py
        flake8 RO-plugin/osm_ro_plugin/ RO-plugin/setup.py
        flake8 RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision/ RO-SDN-arista_cloudvision/setup.py
        flake8 RO-SDN-dpb/osm_rosdn_dpb/ RO-SDN-dpb/setup.py
        flake8 RO-SDN-dynpac/osm_rosdn_dynpac/ RO-SDN-dynpac/setup.py
        flake8 RO-SDN-floodlight_openflow/osm_rosdn_floodlightof/ RO-SDN-floodlight_openflow/setup.py
        flake8 RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn/ RO-SDN-ietfl2vpn/setup.py
        flake8 RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail/ RO-SDN-juniper_contrail/setup.py
        flake8 RO-SDN-odl_openflow/osm_rosdn_odlof/ RO-SDN-odl_openflow/setup.py
        flake8 RO-SDN-onos_openflow/osm_rosdn_onosof/ RO-SDN-onos_openflow/setup.py
        flake8 RO-SDN-onos_vpls/osm_rosdn_onos_vpls/ RO-SDN-onos_vpls/setup.py
        flake8 RO-VIM-aws/osm_rovim_aws/ RO-VIM-aws/setup.py
        flake8 RO-VIM-azure/osm_rovim_azure/ RO-VIM-azure/setup.py
        flake8 RO-VIM-openstack/osm_rovim_openstack/ RO-VIM-openstack/setup.py
        flake8 RO-VIM-openvim/osm_rovim_openvim/ RO-VIM-openvim/setup.py
        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
        flake8 RO-VIM-gcp/osm_rovim_gcp/ RO-VIM-gcp/setup.py
        flake8 integration-tests/


#######################################################################################
[testenv:pylint]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dev.txt
        -r{toxinidir}/requirements-test.txt
        pylint
skip_install = true
commands =
        - pylint -E NG-RO/osm_ng_ro
        - pylint -E RO-plugin/osm_ro_plugin
        - pylint -E RO-SDN-arista_cloudvision/osm_rosdn_arista_cloudvision
        - pylint -E RO-SDN-dpb/osm_rosdn_dpb
        - pylint -E RO-SDN-dynpac/osm_rosdn_dynpac
        - pylint -E RO-SDN-floodlight_openflow/osm_rosdn_floodlightof
        - pylint -E RO-SDN-ietfl2vpn/osm_rosdn_ietfl2vpn
        - pylint -E RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail
        - pylint -E RO-SDN-odl_openflow/osm_rosdn_odlof
        - pylint -E RO-SDN-onos_openflow/osm_rosdn_onosof
        - pylint -E RO-SDN-onos_vpls/osm_rosdn_onos_vpls
        - pylint -E RO-VIM-aws/osm_rovim_aws
        - pylint -E RO-VIM-azure/osm_rovim_azure
        - pylint -E RO-VIM-openstack/osm_rovim_openstack
        - pylint -E RO-VIM-openvim/osm_rovim_openvim
        - pylint -E RO-VIM-vmware/osm_rovim_vmware
        - pylint -E RO-VIM-gcp/osm_rovim_gcp


#######################################################################################
[testenv:safety]
setenv =
        LC_ALL=C.UTF-8
        LANG=C.UTF-8
deps =  {[testenv]deps}
        safety
skip_install = true
commands =
        - safety check --full-report


#######################################################################################
[testenv:pip-compile]
deps =  pip-tools==6.4.0
skip_install = true
whitelist_externals = bash
        [
commands =
        - bash -c "for file in requirements*.in ; do \
        UNSAFE="" ; \
        if [[ $file =~ 'dist' ]] ; then UNSAFE='--allow-unsafe' ; fi ; \
        pip-compile -rU --no-header $UNSAFE $file ;\
        out=`echo $file | sed 's/.in/.txt/'` ; \
        sed -i -e '1 e head -16 tox.ini' $out ;\
        done"
        - bash -c "sed -i 's/.*RO-plugin/-e RO-plugin/g' requirements-test.txt"


#######################################################################################
[testenv:dist_ng_ro]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/NG-RO
commands =
        sh -c 'rm -rf osm_ng_ro/requirements.txt deb_dist dist osm_ng_ro.egg-info osm_ng_ro*.tar.gz'
        sh -c 'cp ../requirements.txt osm_ng_ro/requirements.txt'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-ng-ro*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_plugin]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-plugin
commands =
        sh -c 'rm -rf deb_dist dist osm_ro_plugin.egg-info osm_ro_plugin*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-ro-plugin*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_arista_cloudvision]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-arista_cloudvision
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_arista_cloudvision.egg-info osm_rosdn_arista_cloudvision*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-arista-cloudvision*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_dpb]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-dpb
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_dpb.egg-info osm_rosdn_dpb*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-dpb*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_dynpac]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-dynpac
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_dynpac.egg-info osm_rosdn_dynpac*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-dynpac*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_floodlight_of]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-floodlight_openflow
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_floodlightof.egg-info osm_rosdn_floodlightof*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-floodlightof*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_ietfl2vpn]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-ietfl2vpn
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_ietfl2vpn.egg-info osm_rosdn_ietfl2vpn*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-ietfl2vpn*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_juniper_contrail]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-juniper_contrail
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_juniper_contrail.egg-info osm_rosdn_juniper_contrail*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-juniper-contrail*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_odl_of]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-odl_openflow
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_odlof.egg-info osm_rosdn_odlof*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-odlof*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_onos_of]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-onos_openflow
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_onosof.egg-info osm_rosdn_onosof*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-onosof*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_sdn_onos_vpls]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-SDN-onos_vpls
commands =
        sh -c 'rm -rf deb_dist dist osm_rosdn_onos_vpls.egg-info osm_rosdn_onos_vpls*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rosdn-onos-vpls*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_vim_aws]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-VIM-aws
commands =
        sh -c 'rm -rf deb_dist dist osm_rovim_aws.egg-info osm_rovim_aws*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rovim-aws*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_vim_azure]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-VIM-azure
commands =
        sh -c 'rm -rf deb_dist dist osm_rovim_azure.egg-info osm_rovim_azure*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rovim-azure*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_vim_openstack]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-VIM-openstack
commands =
        sh -c 'rm -rf deb_dist dist osm_rovim_openstack.egg-info osm_rovim_openstack*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rovim-openstack*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_vim_openvim]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-VIM-openvim
commands =
        sh -c 'rm -rf deb_dist dist osm_rovim_openvim.egg-info osm_rovim_openvim*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rovim-openvim*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_vim_vmware]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-VIM-vmware
commands =
        sh -c 'rm -rf deb_dist dist osm_rovim_vmware.egg-info osm_rovim_vmware*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rovim-vmware*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[testenv:dist_ro_vim_gcp]
deps =  {[testenv]deps}
        -r{toxinidir}/requirements-dist.txt
skip_install = true
whitelist_externals = sh
changedir = {toxinidir}/RO-VIM-gcp
commands =
        sh -c 'rm -rf deb_dist dist osm_rovim_gcp.egg-info osm_rovim_gcp*.tar.gz'
        python3 setup.py --command-packages=stdeb.command sdist_dsc
        sh -c 'cd deb_dist/osm-rovim-gcp*/ && dpkg-buildpackage -rfakeroot -uc -us'


#######################################################################################
[flake8]
ignore =
        W291,
        W293,
        W503,
        W605,
        E123,
        E125,
        E203,
        E226,
        E241
exclude =
        .git,
        __pycache__,
        .tox,
max-line-length = 120
show-source = True
builtins = _
import-order-style = google
