Как кэшировать пакеты pip в Azure Pipelines - PullRequest
2 голосов
/ 17 июня 2020

Хотя этот источник предоставляет много информации о кэшировании в Azure конвейерах, неясно, как кэшировать пакеты Python pip для проекта Python.

Что делать, если кто-то хочет кэшировать пакеты Pip в сборке Azure конвейеров?

Согласно this , возможно, в будущем кеш pip будет включен по умолчанию . Насколько я знаю, это еще не так.

1 Ответ

2 голосов
/ 06 июля 2020

Я использовал документацию pre-commit в качестве вдохновения:

и настроил следующий Python конвейер с Anaconda:

pool:
  vmImage: 'ubuntu-latest'

variables:
  CONDA_ENV: foobar-env
  CONDA_HOME: /usr/share/miniconda/envs/$(CONDA_ENV)/

steps:
- script: echo "##vso[task.prependpath]$CONDA/bin"
  displayName: Add conda to PATH

- task: Cache@2
  displayName: Use cached Anaconda environment
  inputs:
    key: conda | environment.yml
    path: $(CONDA_HOME)
    cacheHitVar: CONDA_CACHE_RESTORED

- script: conda env create --file environment.yml
  displayName: Create Anaconda environment (if not restored from cache)
  condition: eq(variables.CONDA_CACHE_RESTORED, 'false')

- script: |
    source activate $(CONDA_ENV)
    pytest
  displayName: Run unit tests
...