mirror of
				https://github.com/jtesta/ssh-audit.git
				synced 2025-10-30 21:15:27 +01:00 
			
		
		
		
	Refactor tox.ini to be more versatile.
This commit is contained in:
		
							
								
								
									
										11
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								.travis.yml
									
									
									
									
									
								
							| @@ -1,4 +1,5 @@ | ||||
| language: python | ||||
| sudo: false | ||||
| matrix: | ||||
|   include: | ||||
|     - python: 2.6 | ||||
| @@ -33,19 +34,17 @@ install: | ||||
|   - pip install --upgrade tox coveralls codecov | ||||
| script: | ||||
|   - if [ -z "${TOXENV##*py3*}" ]; then | ||||
|       export MYPYBASE=python; | ||||
|       if [ -z "${TOXENV##*pypy3*}" ]; then | ||||
|         _pydir=$(dirname $(which python)); | ||||
|         ln -s -- "${_pydir}/python" "${_pydir}/pypy3"; | ||||
|         export TOXENV=${TOXENV},cov,lint; | ||||
|         export TOXENV=${TOXENV}-test,${TOXENV}-lint; | ||||
|       else | ||||
|         export TOXENV=${TOXENV},cov,type,lint; | ||||
|         export TOXENV=${TOXENV}-test,${TOXENV}-type,${TOXENV}-lint; | ||||
|       fi | ||||
|     else | ||||
|       export MYPYBASE=python-unknown; | ||||
|       export TOXENV=${TOXENV},cov,lint; | ||||
|       export TOXENV=${TOXENV}-test,${TOXENV}-lint; | ||||
|     fi | ||||
|   - tox -e $TOXENV | ||||
|   - tox -e $TOXENV,cov | ||||
| after_success: | ||||
|   - coveralls | ||||
|   - codecov | ||||
|   | ||||
							
								
								
									
										70
									
								
								tox.ini
									
									
									
									
									
								
							
							
						
						
									
										70
									
								
								tox.ini
									
									
									
									
									
								
							| @@ -1,20 +1,36 @@ | ||||
| [tox] | ||||
| envlist = py26,py27,py33,py34,py35,py36,py37,jython,pypy,pypy3,cov,type,lint | ||||
| envlist =  | ||||
| 	py{26,27,py,py3}-{test,pylint,flake8,vulture} | ||||
| 	py{33,34,35,36,37}-{test,mypy,pylint,flake8,vulture} | ||||
| 	cov | ||||
| skipsdist = true | ||||
| skip_missing_interpreters = true | ||||
|  | ||||
| [testenv] | ||||
| deps =  | ||||
| 	pytest==3.0.7 | ||||
| 	coverage==4.3.4 | ||||
| 	colorama==0.3.7 | ||||
| 	test: pytest==3.0.7 | ||||
| 	test,cov: {[testenv:cov]deps} | ||||
| 	test,py{33,34,35,36,37}-{type,mypy}: colorama==0.3.7 | ||||
| 	py{33,34,35,36,37}-{type,mypy}: {[testenv:mypy]deps} | ||||
| 	lint,pylint: {[testenv:pylint]deps} | ||||
| 	lint,flake8: {[testenv:flake8]deps} | ||||
| 	lint,vulture: {[testenv:vulture]deps} | ||||
| setenv = | ||||
| 	SSHAUDIT = {toxinidir}/ssh-audit.py | ||||
| 	COVERAGE_FILE = {toxinidir}/.coverage.{envname} | ||||
| 	test: COVERAGE_FILE = {toxinidir}/.coverage.{envname} | ||||
| 	type,mypy: MYPYPATH = {toxinidir}/test/stubs | ||||
| 	type,mypy: MYPYHTML = {toxinidir}/html/mypy | ||||
| commands = | ||||
| 	coverage run --source ssh-audit -m -- pytest -v {posargs:test} | ||||
| 	coverage report --show-missing | ||||
| 	coverage html -d {toxinidir}/html/coverage.{envname} | ||||
| 	test: coverage run --source ssh-audit -m -- pytest -v {posargs:test} | ||||
| 	test: coverage report --show-missing | ||||
| 	test: - coverage html -d {toxinidir}/html/coverage.{envname} | ||||
| 	py{33,34,35,36,37}-{type,mypy}: {[testenv:mypy]commands} | ||||
| 	lint,pylint: {[testenv:pylint]commands} | ||||
| 	lint,flake8: {[testenv:flake8]commands} | ||||
| 	lint,vulture: {[testenv:vulture]commands} | ||||
| ignore_outcome = | ||||
| 	type: true | ||||
| 	lint: true | ||||
|  | ||||
| [testenv:cov] | ||||
| deps = | ||||
| @@ -25,32 +41,25 @@ commands = | ||||
| 	coverage erase | ||||
| 	coverage combine | ||||
| 	coverage report --show-missing | ||||
| 	coverage html -d {toxinidir}/html/coverage | ||||
| ignore_outcome = true | ||||
| 	- coverage html -d {toxinidir}/html/coverage | ||||
|  | ||||
| [testenv:mypy] | ||||
| basepython = | ||||
| 	{env:MYPYBASE:python3.5} | ||||
| deps = | ||||
| 	colorama==0.3.7 | ||||
| 	mypy==0.501 | ||||
| 	lxml==3.7.3 | ||||
| setenv = | ||||
| 	{[testenv]setenv} | ||||
| 	MYPYPATH = {toxinidir}/test/stubs | ||||
| 	MYPYHTML = {toxinidir}/html/mypy | ||||
| commands = | ||||
| 	mypy \ | ||||
| 		--show-error-context \ | ||||
| 		--config-file {toxinidir}/tox.ini \ | ||||
| 		--html-report {env:MYPYHTML}.py3 \ | ||||
| 		--html-report {env:MYPYHTML}.py3.{envname} \ | ||||
| 		{posargs:{env:SSHAUDIT}} | ||||
| 	mypy \ | ||||
| 		-2 \ | ||||
| 		--no-warn-incomplete-stub \ | ||||
| 		--show-error-context \ | ||||
| 		--config-file {toxinidir}/tox.ini \ | ||||
| 		--html-report {env:MYPYHTML}.py2 \ | ||||
| 		--html-report {env:MYPYHTML}.py2.{envname} \ | ||||
| 		{posargs:{env:SSHAUDIT}} | ||||
|  | ||||
| [testenv:pylint] | ||||
| @@ -72,7 +81,8 @@ commands = | ||||
| 	flake8 {posargs:{env:SSHAUDIT}} | ||||
|  | ||||
| [testenv:vulture] | ||||
| deps = vulture | ||||
| deps = | ||||
| 	vulture | ||||
| commands = | ||||
| 	python -c "import sys; from subprocess import Popen, PIPE; \ | ||||
| 		a = ['vulture'] + r'{posargs:{env:SSHAUDIT}}'.split(' '); \ | ||||
| @@ -81,28 +91,6 @@ commands = | ||||
| 		print(b'\n'.join(l).decode('utf-8')); \ | ||||
| 		sys.exit(1 if len(l) > 0 else 0)" | ||||
|  | ||||
| [testenv:type] | ||||
| basepython = | ||||
| 	{[testenv:mypy]basepython} | ||||
| deps = | ||||
| 	{[testenv:mypy]deps} | ||||
| setenv = | ||||
| 	{[testenv:mypy]setenv} | ||||
| commands = | ||||
| 	{[testenv:mypy]commands} | ||||
| ignore_outcome = true | ||||
|  | ||||
| [testenv:lint] | ||||
| deps = | ||||
| 	{[testenv:pylint]deps} | ||||
| 	{[testenv:flake8]deps} | ||||
| 	{[testenv:vulture]deps} | ||||
| commands = | ||||
| 	{[testenv:pylint]commands} | ||||
| 	{[testenv:flake8]commands} | ||||
| 	{[testenv:vulture]commands} | ||||
| ignore_outcome = true | ||||
|  | ||||
|  | ||||
| [mypy] | ||||
| ignore_missing_imports = False | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Andris Raugulis
					Andris Raugulis