У меня есть пакет python, который я хочу протестировать и собрать с использованием Jenkins и tox. Тем не менее, это зависит от пакета в нашей частной артефакте. Несмотря на то, что поэзия подхватывает его правильно, в тот момент, когда включается токсик (и использует pip over поэзию для установки зависимостей), он не может найти пакет.
Мой файл блокировки поэзии имеет
reference = "snakepit"
type = "legacy"
url = "https://our private artifactory
Мой Jenkinsfile настраивает POETRY_HTTP_BASIC_PYPI_USERNAME
и POETRY_HTTP_BASIC_PYPI_PASSWORD
, что позволяет поэзии устанавливать без URL-адреса в файле блокировки, имеющего мои учетные данные.
После некоторого поиска мне показалось, что мне нужно расширить legacy_tox_ini в pyproject. toml. Теперь это выглядит следующим образом:
legacy_tox_ini = """
[tox]
isolated_build = true
envlist = py36,py37,py38
indexserver =
default = https://pypi.python.org/simple
ourartifactory = https://{env:POETRY_HTTP_BASIC_PYPI_USERNAME}:{env:POETRY_HTTP_BASIC_PYPI_PASSWORD}@our artifactory url
[testenv]
deps =
pytest
pytest-cov
setenv =
SOME_ENV={env:SOME_ENV}
commands =
pytest tests
Я также тестировал добавление: ourartifactory: problemmpackage к deps здесь, но это тоже не помогает.
Как заставить pip распознавать частный артефакт вэтот параметр?