Как упоминалось в заголовке, я надеюсь, что Azure Pipelines сможет устанавливать свою тестовую среду из pyproject.toml
вместо отдельного requirements_dev.txt
файла, поскольку это поможет уменьшить количество списков зависимостей, которые мне придется поддерживать.
Просматривая папку .azure-pipelines
, я смог найти следующий раздел сценария в файле ci.yml
, который, судя по всему, отвечает за установку тестовой среды:
- script: |
set -eux
pip install --disable-pip-version-check -r "$(Pipeline.Workspace)/src/requirements_dev.txt"
pip install --no-deps --disable-pip-version-check -e "$(Pipeline.Workspace)/src"
displayName: Install package
Достаточно ли заменить /requirements_dev.txt
на /pyproject.toml
, чтобы Azure Pipelines мог читать pyproject.toml
, или мне придется выполнить другие настройки в дополнение к этому?
Заранее спасибо!
Будет ли достаточно замены /requirements_dev.txt на /pyproject.toml, чтобы конвейеры Azure могли читать данные из pyproject.toml, или мне придется выполнить другие настройки в дополнение к этому?
Команда pip install -r
несовместима с файлами pyproject.toml
, она работает только с файлами requirements.txt
.
Вместо этого вы можете использовать python -m pip install .
(предполагается, что ваш файл pyproject.toml находится в корне вашего репозитория) для установки зависимости.
Мой образец devops yaml на основе репозитория github:
pool:
vmImage: ubuntu-latest
steps:
- script: python -m pip install .
displayName: Install depenency
- script: python -m unittest discover -v -s test
displayName: Test
Это здорово, спасибо за подтверждение того, что это возможно, и за предоставление примера того, как можно переписать этот раздел сценария! :D