Начало работы с пакетами Python в Azure Artifacts
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
С помощью артефактов Azure можно публиковать и скачивать пакеты из веб-каналов и общедоступных реестров, таких как PyPi. В этом кратком руководстве вы узнаете, как создать веб-канал, настроить проект и управлять пакетами Python в веб-канале Azure Artifacts. В этой статье описано, как:
- Создайте новую ленту.
- Аутентификация с вашим источником ленты.
- Публикация пакетов Python.
- Установите пакеты из вашего репозитория.
Необходимые условия
Создайте организацию Azure DevOps и проект , если вы еще не сделали этого.
Скачайте и установите Python.
Получение кода
Если у вас нет собственного проекта Python, можно использовать следующий пример проекта Python:
https://github.com/microsoft/python-package-template
Чтобы создать колесо и исходное распределение, выполните следующие команды в каталоге проекта:
pip install --upgrade build python -m build
Если в проекте Python есть файл setup.py, вы также можете использовать эту команду для сборки пакета:
python setup.py sdist bdist_wheel
Создать канал
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите Артефакты, а затем выберите Создать ленту.
Укажите имя для фида, выберите параметр видимости, который определяет, кто может просматривать пакеты, отметьте включение пакетов из общедоступных источников, если вы хотите включить пакеты из источников, таких как nuget.org или npmjs.com, и для области определите, должен ли фид охватывать только ваш проект или всю организацию.
После завершения выберите Создать.
Войдите на сервер Azure DevOps и перейдите в проект.
Выберите Артефакты, а затем выберите Создать ленту.
Укажите имя для вашего веб-канала, выберите опцию видимости, которая определяет, кто может просматривать ваши пакеты, отметьте Включить пакеты из общих общедоступных источников, если вы хотите включить пакеты из таких источников, как nuget.org или npmjs.com, и для области решите, должен ли веб-канал быть ограничен вашим проектом или всей организацией.
После завершения выберите Создать.
После завершения выберите Создать.
Заметка
По умолчанию новые фиды имеют значение службы сборки проекта, установленное на Учётную запись фида и вышестоящего читателя (сотрудник).
Подключитесь к ленте
Войдите в организацию Azure DevOps и перейдите к проекту.
Выберите артефактов, выберите свой веб-канал в раскрывающемся меню, а затем выберите Подключиться к каналу.
Выберите twine в разделе Python.
Если вы впервые используете Azure Artifacts с twine, выберите Установите необходимые инструменты и выполните действия по установке необходимых компонентов.
Добавьте файл 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.
Публикация пакетов
Выполните следующую команду в каталоге проекта для создания исходных и колесных дистрибутивов:
python setup.py sdist bdist_wheel
Выполните следующую команду, чтобы опубликовать пакет. Используйте флаг -r FEED_NAME, чтобы убедиться, что частные пакеты не были случайно опубликованы в PyPI.
twine upload -r <FEED_NAME> dist/*
Установка пакетов
Выполните следующую команду в каталоге проекта, чтобы установить пакеты:
pip install
Чтобы установить определенный пакет, выполните следующую команду, заменив плейсхолдер именем пакета из репозитория.
pip install <PACKAGE_NAME>