Можно ли указать tox, чтобы вытащить зависимость из ветки (иначе используйте pip -e за кулисами)? - PullRequest
0 голосов
/ 08 мая 2019

Как проверить на py27 и py37 в tox, когда изменения py37 не упакованы в pypi

  • Py3.7-совместимые изменения существуют в ветках репо.

  • Их можно запустить вручную через pip -e, установив их и запустив pytest без токсика.

  • Я бы хотел перейти к выполнению их через токсин, ноЯ не могу найти правильную строку, чтобы дать список deps, или, возможно, это делается по-другому.

Попытка решения:

tox.ini

[tox]
envlist = py27,py37


[testenv:py27]
deps =
    pytest
    pytest-cov
    pytest-mock
    pylint
    ; packages specified by the setup.py cover the other dependencies for py2.7
commands =
    pytest -v


[testenv:py37]
deps =
    pytest
    pytest-cov
    pytest-mock
    pylint
    git+ssh//repo_url/location1.git@branchname_that_supports_py37
    git+ssh//repo_url/location2.git@branchname_that_supports_py37
    git+ssh//repo_url/location3.git@branchname_that_supports_py37
    git+ssh//repo_url/location4.git@branchname_that_supports_py37
    git+ssh//repo_url/location5.git@branchname_that_supports_py37
    git+ssh//repo_url/location6.git@branchname_that_supports_py37
    git+ssh//repo_url/location7.git@branchname_that_supports_py37
    git+ssh//repo_url/location8.git@branchname_that_supports_py37

commands =
    pytest -v

1 Ответ

3 голосов
/ 08 мая 2019

Для URL VCS pip необходимо знать имя пакета, который должен быть предоставлен с #egg=name:

    git+ssh//repo_url/location1.git@branchname_that_supports_py37#egg=package1

В противном случае ваш tox.ini выглядит хорошо. Я использую такой же подход, например.

...