[testenv]
usedevelop = True
-basepython = python3
+basepython = python3.10
setenv = VIRTUAL_ENV={envdir}
PYTHONDONTWRITEBYTECODE = 1
passenv = HOME
deps = -r{toxinidir}/requirements.txt
+skip_install = true
+parallel_show_output = true
#######################################################################################
#######################################################################################
[testenv:cover]
+skip_install = false
deps = {[testenv]deps}
-r{toxinidir}/requirements-test.txt
commands =
+ sh -c "patch {toxworkdir}/cover/lib/python3.10/site-packages/pyangbind/lib/yangtypes.py < pyangbind.patch"
sh -c 'make clean'
sh -c 'make models Q=""'
sh -c 'rm -f nosetests.xml'
coverage report --omit='*tests*'
coverage html -d ./cover --omit='*tests*'
coverage xml -o coverage.xml --omit=*tests*
-whitelist_externals = sh
+allowlist_externals = sh
#######################################################################################
#######################################################################################
[testenv:pip-compile]
-deps = pip-tools==5.5.0
+deps = pip-tools==6.13.0
+skip_install = true
+allowlist_externals = bash
+ [
commands =
- - sh -c 'for file in requirements*.in ; do pip-compile -rU --no-header $file ;\
- out=`echo $file | sed "s/.in/.txt/"` ; \
- head -16 tox.ini >> $out ;\
- done'
-whitelist_externals = sh
+ - bash -c "for file in requirements*.in ; do \
+ UNSAFE="" ; \
+ if [[ $file =~ 'dist' ]] ; then UNSAFE='--allow-unsafe' ; fi ; \
+ pip-compile --resolver=backtracking -rU --no-header $UNSAFE $file ;\
+ out=`echo $file | sed 's/.in/.txt/'` ; \
+ sed -i -e '1 e head -16 tox.ini' $out ;\
+ done"
#######################################################################################
# In the commands, we copy the requirements.txt to be presented as a source file (.py)
# so it gets included in the .deb package for others to consume
commands =
+ sh -c "patch {toxworkdir}/dist/lib/python3.10/site-packages/pyangbind/lib/yangtypes.py < pyangbind.patch"
sh -c 'make clean'
sh -c 'make Q=""'
sh -c 'cp requirements.txt osm_im/requirements.txt'
python3 setup.py --command-packages=stdeb.command sdist_dsc
sh -c 'cd deb_dist/osm-im*/ && dpkg-buildpackage -rfakeroot -uc -us'
sh -c 'rm osm_im/requirements.txt'
-whitelist_externals = sh
+allowlist_externals = sh
#######################################################################################
[flake8]