Поделиться через


Использование пакетов из индекса пакетов Python (PyPI)

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

С помощью артефактов Azure разработчики могут публиковать и использовать пакеты из веб-каналов Azure Artifacts и внешних реестров, таких как pypi.org. В этой статье описано, как настроить проект и использовать командную строку для эффективного использования пакетов Python из PyPI.

В этой статье вы узнаете, как выполнять следующие задачи.

  • Включение источников вышестоящий для веб-канала
  • Добавление PyPI в качестве источника вышестоящий
  • Настройка проекта
  • Установка пакетов из индекса пакета Python

Необходимые компоненты

  • Организация Azure DevOps и проект. Создайте организацию или проект, если вы еще не сделали этого.

  • Веб-канал артефактов Azure.

  • Скачайте Python.

Включение источников вышестоящий

Если вы еще не создали веб-канал, выполните приведенные ниже действия, чтобы создать новый. Обязательно проверка поле для источников вышестоящий, чтобы включить вышестоящий источники. Если у вас уже есть веб-канал, перейдите к следующему шагу, чтобы добавить PyPI в качестве источника вышестоящий.

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и нажмите кнопку "Создать веб-канал", чтобы создать новый веб-канал .

  3. Введите описательное имя веб-канала и определите его видимость (указывающее, кто может просматривать пакеты в веб-канале). Укажите область веб-канала, а затем проверка проверка источниках upstream, чтобы включить пакеты из общедоступных реестров.

  4. После завершения работы выберите Создать.

    A screenshot showing how to create a need feed.

Добавление вышестоящий PyPI

Если вы выбрали вышестоящий источники проверка box во время создания веб-канала, PyPI должен быть автоматически включен в качестве источника вышестоящий. В противном случае его можно добавить вручную, выполнив следующие действия.

  1. Войдите в организацию Azure DevOps и перейдите к проекту.

  2. Выберите артефакты и щелкните значокgear iconшестеренки, чтобы перейти к веб-каналу Параметры.

  3. Выберите источники вышестоящего потока и нажмите кнопку "Добавить вверх", чтобы добавить новый источник вышестоящий.

  4. Выберите общедоступный источник и выберите PyPI (https://pypi.org/) в раскрывающемся меню.

  5. Нажмите кнопку "Сохранить " после завершения и нажмите кнопку "Сохранить еще один раз" в правом верхнем углу, чтобы сохранить изменения.

Проверка подлинности с помощью веб-канала

  1. Убедитесь, что вы скачали Python, а затем выполните следующую команду, чтобы обновить диспетчер пакетов Python:

    python -m pip install --upgrade pip
    
  2. Выполните следующую команду, чтобы установить ключ Azure Artifacts:

    pip install keyring artifacts-keyring
    
  3. Создайте личный маркер доступа с помощью область упаковки> для проверки подлинности с помощью Azure DevOps. При первом подключении к Azure DevOps необходимо ввести учетные данные при появлении запроса. Укажите имя пользователя (любая строка) и личный маркер доступа в указанных полях. Эти учетные данные будут кэшироваться локально и автоматически использоваться для входа в следующий раз, когда вы используете службу.

  4. Перейдите в папку проекта и выполните следующую команду, чтобы создать новую виртуальную среду:

    python -m venv <VIRTUAL_ENVIRONMENT_NAME>
    
  5. Создайте файл pip.ini (Windows) или файл pip.conf (Mac/Linux) в виртуальной среде, а затем вставьте следующий фрагмент кода в файл. Обязательно замените заполнители соответствующими сведениями и не зафиксируйте этот файл в общедоступный репозиторий, так как он содержит личный маркер доступа.

    • Веб-канал project-область d:

      [global]
      extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/pypi/simple/
      
    • Веб-канал область организации:

      [global]
      extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/pypi/simple/
      

Установка пакетов из PyPI

Теперь, когда мы настроили проект для проверки подлинности с помощью нашего веб-канала, мы можем начать установку пакетов из вышестоящий PyPI. В этом примере мы установим Flask:

  1. В окне командной строки перейдите в папку проекта и выполните следующую команду, чтобы активировать виртуальную среду. Замените заполнитель именем созданной ранее виртуальной среды:

    <YOUR_VIRTUAL_ENVIRONMENT_NAME>/Scripts/Activate.ps1
    
  2. Выполните следующую команду, чтобы проверка пакеты, установленные в виртуальной среде:

    pip list
    
  3. Выполните следующую команду, чтобы установить Flask.

    pip install -U Flask
    
  4. После установки пакета Azure Artifacts сохранит копию этого пакета в веб-канале. Пакет должен быть доступен в веб-канале, как показано на снимке экрана ниже.

    A screenshot showing packages installed from PyPI upstream.