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


Начало работы с пакетами Python в Azure Artifacts

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

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

  • Создайте новую ленту.
  • Аутентификация с вашим источником ленты.
  • Публикация пакетов Python.
  • Установите пакеты из вашего репозитория.

Необходимые условия

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

  • Скачайте и установите Python.

Получение кода

  1. Если у вас нет собственного проекта Python, можно использовать следующий пример проекта Python:

    https://github.com/microsoft/python-package-template
    
  2. Чтобы создать колесо и исходное распределение, выполните следующие команды в каталоге проекта:

    pip install --upgrade build
    python -m build
    
  3. Если в проекте Python есть файл setup.py, вы также можете использовать эту команду для сборки пакета:

    python setup.py sdist bdist_wheel
    

Создать канал

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

  2. Выберите Артефакты, а затем выберите Создать ленту.

  3. Укажите имени для веб-канала, выберите параметр видимости, который определяет, кто может просматривать пакеты, проверять включить пакеты из общих общедоступных источников, если вы хотите включить пакеты из источников, таких как nuget.org или npmjs.com, и для области, определите, должен ли веб-канал быть ограничен вашим проектом или всей организацией.

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

    снимок экрана, на котором показаны варианты для создания нового фида в Azure DevOps Services.

  1. Войдите на сервер Azure DevOps и перейдите в проект.

  2. Выберите артефакты, а затем выберите Создать ленту.

  3. Укажите название для веб-канала, выберите параметр видимости, который определяет, кто может просматривать ваши пакеты, установите флажок включить пакеты из общедоступных источников, если вы хотите включить пакеты из источников, таких как nuget.org или npmjs.com, и для области, определите, должен ли веб-канал принадлежать вашему проекту или всей организации.

  1. Выберите Создать, когда закончите.

    снимок экрана, на котором показаны выборы для создания веб-канала в Azure DevOps 2022.

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

    снимок экрана, на котором показаны выборы для создания веб-канала в Azure DevOps 2020.

  1. Войдите на сервер Azure DevOps и перейдите в проект.

  2. Выберите Артефакты, а затем выберите Новая лента.

  3. В поле Имявведите описательное имя для вашей ленты.

    Для видимостивыберите параметр, чтобы указать, кто может видеть пакеты в фиде.

    Если вы хотите включить пакеты из общедоступных источников, выберите опцию Использовать пакеты из общедоступных источников через этот канал.

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

    снимок экрана, на котором показаны параметры для создания нового фида в Azure DevOps 2019.

Заметка

По умолчанию новые фиды имеют значение службы сборки проекта, установленное на Учётную запись фида и вышестоящего читателя (сотрудник).

Подключитесь к ленте

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

  2. Выберите артефактов, выберите свой веб-канал в раскрывающемся меню, а затем выберите Подключиться к каналу.

  3. Выберите twine в разделе Python.

  4. Если вы впервые используете Azure Artifacts с twine, выберите Установите необходимые инструменты и выполните действия по установке необходимых компонентов.

  5. Добавьте файл pypirc в домашний каталог и вставьте предоставленный фрагмент кода. Файл должен выглядеть следующим образом:

    [distutils]
    Index-servers =
        FEED_NAME
    
    [FEED_NAME]
    Repository = https://pkgs.dev.azure.com/ORGANIZATION_NAME/PROJECT_NAME/_packaging/FEED_NAME/pypi/upload/
    

Заметка

Если файл .pypirc уже содержит учетные данные для общедоступного индекса PyPI, рекомендуется удалить раздел [pypi], чтобы предотвратить случайную публикацию частных пакетов в PyPI.

Публикация пакетов

  1. Выполните следующую команду в каталоге проекта для создания исходных и колесных дистрибутивов:

    python setup.py sdist bdist_wheel
    
    
  2. Выполните следующую команду, чтобы опубликовать пакет. Используйте флаг -r FEED_NAME, чтобы убедиться, что частные пакеты не были случайно опубликованы в PyPI.

    twine upload -r <FEED_NAME> dist/*
    

Установка пакетов

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

    pip install
    
  2. Чтобы установить определенный пакет, выполните следующую команду, заменив плейсхолдер именем пакета из репозитория.

    pip install <PACKAGE_NAME>
    

Дальнейшие действия