2016-11-25 2 views
0

tox.ini 내에 임의의 변수를 설정하는 방법이 있습니까?tox.ini 변수를 만드는 방법

예제는 다양한 방식으로 사용될 수있는 프로젝트 이름입니다. 다소 복잡한 tox.ini를 사용하면 변수를 상단에 설정해야하는 곳을 복사하여 붙여 넣을 수 있습니다.

는 참고로, 예 tox.ini : 당신은 {[section]varname}와 tox.ini 내에서 변수를 참조 할 수 있습니다

[tox] 
envlist = clean, py{27,35,py}, license, style 
skipsdist = True 
skip_missing_interpreters = True 
sitepackages = False 

[testenv:clean] 
deps = coverage 
skip_install = true 
commands = 
    hash -r 
    find {toxinidir} -name '*.pyc' -delete 
    find {toxinidir} -name '__pycache__' -delete 
    coverage erase 
    rm -Rf {toxinidir}/docs/_build {toxinidir}/docs/coverage {toxinidir}/docs/reports 

[testenv] 
passenv = * 
whitelist_externals = * 
install_command = {envpython} -m pip install -q --process-dependency-links {opts} {packages} 
envdir = {env:WORKON_HOME}/tox-<project_name>/{envname} 
sitepackages = False 
recreate = True 
commands = 
    # hash -r 
    py{27,35,py}: {envpython} -m pytest --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    smoke: {envpython} -m pytest -m smoke --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    unit: {envpython} -m pytest -m unit --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    integration: {envpython} -m pytest -m integration --long-running --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    requirements: {envpython} -m pytest --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    license: {envpython} -m pytest -m license --license --cov-append --html=docs/reports/{envname}-report.html {posargs} 
    py{27,35,py}-smoke: {envpython} -m pytest -m smoke --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    py{27,35,py}-unit: {envpython} -m pytest -m unit --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    py{27,35,py}-integration: {envpython} -m pytest -m integration --long-running --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    py{27,35,py}-requirements: {envpython} -m pytest --cov-append --cov=<project_name> --html=docs/reports/{envname}-report.html {posargs} 
    py{27,35,py}-license: {envpython} -m pytest -m license --cov-append --html=docs/reports/{envname}-report.html {posargs} 
deps = 
    --editable=file:///{toxinidir}[tests] 
    --editable=file:///{toxinidir} 
    py{27,35,py}-requirements: -r{toxinidir}/requirements.txt 


[testenv:coverage-report] 
deps = coverage 
skip_install = true 
whitelist_externals = * 
commands = 
    hash -r 
    coverage combine 
    coverage report -m 

[testenv:docs] 
sitepackages = False 
whitelist_externals = * 
recreate = True 
deps = --editable=file:///{toxinidir}[docs] 
commands = 
    hash -r 
    coverage html --directory=docs/coverage 
    coverage html 
    {envpython} setup.py build_sphinx 

[testenv:style] 
whitelist_externals = * 
sitepackages = False 
recreate = True 
commands = 
    py.test -q --flake8 <project_name>/ --html=docs/reports/{envname}-report.html {posargs} 

[testenv:vagrant] 
passenv = * 
whitelist_externals = * 
sitepackages = False 
recreate = False 
skip_install = true 
changedir = {toxinidir}/provision/vagrant 
commands = 
    hash -r 
    vagrant destroy --force 
    vagrant up 
+0

는,이 임의의 변수는 독극물 파일 전체 변수를 참조 할 수 있도록이다 명확히하려면? 즉 한 곳에서 정의하십시오. – idjaw

+0

예. 실제로 위의 예제에서

답변

2

.

이것은 당신이 변수 ignore_list 작업 할 수있는 방법의 예입니다

[main] 
ignore_list = "E201,E202,E203,E221,E231,E241,E265,E266,E272,E402,W293,W391" 

[testenv] 
commands = 
    pep8 \ 
    --max-line-length=120 \ 
    --ignore={[main]ignore_list}  
+0

과 함께 자리 표시자를 포함 시켰습니다. 너는 내 하루를 보냈다. 감사! –

관련 문제