Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте эту задачу для проверки подлинности отправки дистрибутивов Python с помощью twine. Добавьте -r FeedName/EndpointName --config-file $(PYPIRC_PATH)
в команду отправки twine. Для веб-каналов, присутствующих в этой организации, используйте имя канала в качестве репозитория (-r
). В противном случае используйте имя конечной точки, определенное в соединении службы.
Синтаксис
# Python twine upload authenticate v1
# Authenticate for uploading Python distributions using twine. Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to your twine upload command. For feeds present in this organization, use the feed name as the repository (-r). Otherwise, use the endpoint name defined in the service connection.
- task: TwineAuthenticate@1
inputs:
# Feeds and Authentication
#artifactFeed: # string. My feed name (select below).
#pythonUploadServiceConnection: # string. Feed from external organizations.
# Python twine upload authenticate v1
# Authenticate for uploading Python distributions using twine. Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to your twine upload command. For feeds present in this organization, use the feed name as the repository (-r). Otherwise, use the endpoint name defined in the service connection.
- task: TwineAuthenticate@1
inputs:
# Feeds and Authentication
#artifactFeed: # string. My feed (select below).
#pythonUploadServiceConnection: # string. Feed from external organizations.
Входные данные
artifactFeed
-
Имя моего веб-канала (выберите ниже)
string
.
Указывает имя канала артефакта Azure для проверки подлинности с помощью twine. Веб-канал проверки подлинности должен присутствовать в организации. Для веб-каналов с областью проекта используйте синтаксис projectName/feedNameSelect
.
artifactFeed
-
Мой веб-канал (выберите ниже)
string
.
Указывает имя канала артефакта Azure для проверки подлинности с помощью twine. Веб-канал проверки подлинности должен присутствовать в организации. Для веб-каналов с областью проекта используйте синтаксис projectName/feedNameSelect
.
веб-канал pythonUploadServiceConnection
- внешних организаций
string
.
Подключение службы двойника из внешней организации для проверки подлинности с помощью twine. Учетные данные, хранящиеся в конечной точке, должны иметь разрешения на отправку пакета.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задач.
Выходные переменные
Нет.
Замечания
Предоставляет twine
учетные данные в переменную среды PYPIRC_PATH
для области сборки. Это позволяет публиковать пакеты Python в веб-каналах с twine
из сборки.
- Когда в конвейере следует выполнить эту задачу?
- Мой агент находится за веб-прокси. Будет ли TwineAuthenticate настроить twine для использования прокси-сервера?
- Мой конвейер должен получить доступ к веб-каналу в другом проекте
Когда в конвейере следует запустить эту задачу?
Эта задача должна выполняться перед отправкой дистрибутивов Python в аутентифицированный источник пакета, например Azure Artifacts. Нет других требований к упорядочению. Несколько вызовов этой задачи не будут стекать учетные данные. Каждое выполнение задачи удаляет все ранее сохраненные учетные данные.
Мой агент находится за веб-прокси. Будет ли TwineAuthenticate настроить twine для использования прокси-сервера?
Нет. Хотя эта задача будет работать за веб-прокси, агент был настроен для использования, он не настраивает двойник для использования прокси-сервера.
Мой конвейер должен получить доступ к веб-каналу в другом проекте
Если конвейер выполняется в другом проекте, отличном от проекта, на котором размещен веб-канал, необходимо настроить другой проект, чтобы предоставить доступ на чтение и запись службе сборки. Дополнительные сведения см. в разрешениях пакета в Azure Pipelines.
Примеры
В следующих примерах показано, как опубликовать распространение python в веб-канале Azure Artifacts и официальном реестре Python.
- публикации распространения Python в веб-канале артефактов Azure
- публикации распространения Python в официальном реестре Python
Публикация распространения Python в веб-канале Артефактов Azure
В этом примере мы устанавливаем проверку подлинности для публикации в частном веб-канале Артефактов Azure. Задача проверки подлинности создает файл .pypirc
, содержащий учетные данные проверки подлинности, необходимые для публикации дистрибутива в веб-канале.
# Install python distributions like wheel, twine etc
- script: |
pip install wheel
pip install twine
# Build the python distribution from source
- script: |
python setup.py bdist_wheel
- task: TwineAuthenticate@1
displayName: Twine Authenticate
inputs:
# In this case, name of the feed is 'myTestFeed' in the project 'myTestProject'. Project is needed because the feed is project scoped.
artifactFeed: myTestProject/myTestFeed
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
python -m twine upload -r myTestFeed --config-file $(PYPIRC_PATH) dist/*.whl
Входные данные artifactFeed
будут содержать проект и имя канала, если веб-канал ограничен. Если веб-канал ограничен организацией, необходимо указать только имя канала.
Подробнее.
Публикация распространения Python в официальном реестре Python
В этом примере мы настраиваем проверку подлинности для публикации в официальном реестре Python. Создайте запись подключения службы twine для pypi. Задача проверки подлинности использует это подключение к службе для создания файла .pypirc
, содержащего учетные данные проверки подлинности, необходимые для публикации дистрибутива.
# Install python distributions like wheel, twine etc
- script: |
pip install wheel
pip install twine
# Build the python distribution from source
- script: |
python setup.py bdist_wheel
- task: TwineAuthenticate@1
displayName: Twine Authenticate
inputs:
# In this case, name of the service connection is "pypitest".
pythonUploadServiceConnection: pypitest
# Use command line script to 'twine upload', use -r to pass the repository name and --config-file to pass the environment variable set by the authenticate task.
- script: |
python -m twine upload -r "pypitest" --config-file $(PYPIRC_PATH) dist/*.whl
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
требования | Нет |
возможностей | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
ограничения команд | Любое |
переменные settable | Любое |
Версия агента | 2.144.0 или более поздней версии |
Категория задач | Пакет |
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
требования | Нет |
возможностей | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
ограничения команд | Любое |
переменные settable | Любое |
Версия агента | 2.120.0 или более поздней версии |
Категория задач | Пакет |