Use pip==20.2.4 in tox venv
[functest-kubernetes.git] / tox.ini
diff --git a/tox.ini b/tox.ini
index 6b90f06..b62b2c3 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -1,14 +1,22 @@
 [tox]
-envlist = pep8,pylint,yamllint,py27,py35,cover
+envlist = pep8,pylint,yamllint,ansiblelint,bashate,py27,py36,bandit
 
 [testenv]
+pip_version = pip==20.2.4
 usedevelop = True
 deps =
-  -chttps://git.opnfv.org/functest/plain/upper-constraints.txt
-  -c{toxinidir}/upper-constraints.txt
+  -chttps://git.opnfv.org/functest/plain/upper-constraints.txt?h=stable/hunter
+  -c{env:UPPER_CONSTRAINTS_FILE:https://opendev.org/openstack/requirements/raw/branch/stable/rocky/upper-constraints.txt}
   -r{toxinidir}/requirements.txt
   -r{toxinidir}/test-requirements.txt
 install_command = pip install {opts} {packages}
+commands = nosetests --with-xunit \
+  --with-coverage \
+  --cover-tests \
+  --cover-package=functest_kubernetes \
+  --cover-xml \
+  --cover-html \
+  functest_kubernetes
 
 [testenv:pep8]
 basepython = python2.7
@@ -16,20 +24,42 @@ commands = flake8
 
 [testenv:pylint]
 basepython = python2.7
-whitelist_externals = bash
-modules =
-  functest_kubernetes
-commands =
-  pylint --disable=locally-disabled --reports=n {[testenv:pylint]modules}
+commands = pylint \
+    --ignore-imports=y --min-similarity-lines=10 \
+    --disable=locally-disabled,super-on-old-class --reports=n functest_kubernetes
 
 [testenv:yamllint]
 basepython = python2.7
 files =
+  .travis.yml
   docker
 commands =
   yamllint {[testenv:yamllint]files}
 
-[testenv:cover]
+[testenv:ansiblelint]
+basepython = python2.7
+commands = ansible-lint -x303 ansible/site.yml
+
+[testenv:bandit]
+basepython = python2.7
+commands = bandit -r functest_kubernetes -x tests -n 5 -ll
+
+[testenv:py36]
+commands = nosetests functest_kubernetes
+
+[testenv:bashate]
 basepython = python2.7
-commands = nosetests --with-coverage --cover-tests \
-  --cover-package functest_kubernetes functest_kubernetes
+files =
+  build.sh
+commands = bashate -e E005,E006,E042,E043 {[testenv:bashate]files}
+
+[testenv:perm]
+basepython = python2.7
+whitelist_externals = bash
+path=. -not -path './.tox/*' -not -path './.git/*' -not -path './doc/pres/reveal.js/*'
+commands =
+  bash -c "\
+    find {[testenv:perm]path} \( -type f -not -perm 644 -o -type d -not -perm 755 \) \
+    -exec ls -l \{\} + | grep '.' && exit 1 || exit 0"
+  bash -c "\
+    find {[testenv:perm]path} -exec file \{\} + | grep CRLF && exit 1 || exit 0"