UsePythonVersion@0. Использование задачи Python версии v0
Используйте эту задачу, чтобы скачать или выбрать версию Python для запуска в агенте и при необходимости добавить ее в PATH.
Синтаксис
# Use Python version v0
# Use the specified version of Python from the tool cache, optionally adding it to the PATH.
- task: UsePythonVersion@0
inputs:
versionSpec: '3.x' # string. Required. Version spec. Default: 3.x.
#disableDownloadFromRegistry: false # boolean. Disable downloading releases from the GitHub registry. Default: false.
#allowUnstable: false # boolean. Optional. Use when disableDownloadFromRegistry = false. Allow downloading unstable releases. Default: false.
#githubToken: # string. Optional. Use when disableDownloadFromRegistry = false. GitHub token for GitHub Actions python registry.
#addToPath: true # boolean. Add to PATH. Default: true.
# Advanced
architecture: 'x64' # 'x86' | 'x64'. Required. Architecture. Default: x64.
# Use Python version v0
# Use the specified version of Python from the tool cache, optionally adding it to the PATH.
- task: UsePythonVersion@0
inputs:
versionSpec: '3.x' # string. Required. Version spec. Default: 3.x.
#addToPath: true # boolean. Add to PATH. Default: true.
# Advanced
architecture: 'x64' # 'x86' | 'x64'. Required. Architecture. Default: x64.
# Use Python Version v0
# Retrieves the specified version of Python from the tool cache. Optionally add it to PATH.
- task: UsePythonVersion@0
inputs:
versionSpec: '3.x' # string. Required. Version spec. Default: 3.x.
#addToPath: true # boolean. Add to PATH. Default: true.
# Advanced
architecture: 'x64' # 'x86' | 'x64'. Required. Architecture. Default: x64.
Входные данные
спецификации версий versionSpec
-
string
. Обязательное. Значение по умолчанию: 3.x
.
Указывает диапазон версий или точную версию используемой версии Python с помощью синтаксиса диапазона версий SemVer. Дополнительные сведения о SemVer.
disableDownloadFromRegistry
-
Отключить скачивание выпусков из реестра GitHub
boolean
. Значение по умолчанию: false
.
Отключает загрузку отсутствующих версий Python из реестра Github Actions. Логическое значение должно быть true
только при использовании локальной установки Python.
allowUnstable
-
Разрешить скачивание нестабильных выпусков
boolean
. Необязательно. Используется при disableDownloadFromRegistry = false
. Значение по умолчанию: false
.
Загружает нестабильные версии Python из реестра версий Python Github Actions, если задано значение true
.
githubToken
-
токен GitHub для реестра Python GitHub Actions
string
. Необязательно. Используется при disableDownloadFromRegistry = false
.
Указывает токен GitHub, который применяет ограничение анонимных запросов в реестре версий Python Github Actions. Выход из этого пустого может привести к сбоям загрузки. Не требуется при использовании локальной установки Python.
addToPath
-
Добавление в ПУТЬ
boolean
. Значение по умолчанию: true
.
Предварительно добавляет полученную версию Python в переменную среды PATH, чтобы сделать ее доступной в последующих задачах или сценариях без использования выходной переменной.
architecture
-
архитектуры
string
. Обязательное. Допустимые значения: x86
, x64
. Значение по умолчанию: x64
.
Указывает целевую архитектуру (x86
или x64
) интерпретатора Python.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задач.
Выходные переменные
Эта задача определяет следующие выходные переменные, которые можно использовать в подчиненных шагах, заданиях и этапах.
pythonLocation
Каталог установленного дистрибутива Python. Используйте это в последующих задачах для доступа к этой установке Python.
Замечания
Используйте эту задачу, чтобы скачать или выбрать версию Python для запуска в агенте и при необходимости добавить ее в PATH.
Предпосылки
-
агента, размещенного корпорацией Майкрософт, с установленными параллельно версиями Python, или локальным агентом с настроенными
Agent.ToolsDirectory
(см. часто задаваемые вопросы). - Скачивание версий Python не поддерживается для локальных агентов.
Эта задача завершится ошибкой, если версии Python не найдены в Agent.ToolsDirectory
. Доступные версии Python для агентов, размещенных корпорацией Майкрософт, можно найти здесь.
Примечание.
Версии x86 и x64 Python доступны в агентах Windows, размещенных в Майкрософт, но не в агентах Linux или macOS.
По состоянию на версию 0.150 задачи спецификация версии также будет принимать pypy2
или pypy3
.
По состоянию на версию 0.213.1 задачи спецификация версии также будет принимать pypy2.x
или pypy3.x
.
Если задача завершится успешно, выходная переменная задачи будет содержать каталог установки Python:
После выполнения этой задачи с параметром "Добавить в PATH" команда python
в последующих сценариях будет иметь самую доступную версию интерпретатора, соответствующую спецификации и архитектуре версии.
Версии Python, установленные на образах Ubuntu и macOS, размещенных корпорацией Майкрософт, соответствуют структуре симлинирования для систем, таких как Unix, определенных в PEP 394.
Например, python3.11
является фактическим интерпретатором для Python 3.11.
python3
соединяется с этим интерпретатором, а python
— это симлинок с этой символикой.
На образах Windows, размещенных в Майкрософт, интерпретатор просто python
.
Для агентов, размещенных корпорацией Майкрософт, x86 поддерживается только в Windows. Это связано с тем, что Windows может запускать исполняемые файлы, скомпилированные для архитектуры x86 с подсистемой WoW64. Размещенная ubuntu и размещенная macOS выполняют 64-разрядные операционные системы и запускают только 64-разрядный Python.
Как настроить локальный агент для использования этой задачи?
Это важно
Скачивание версий Python не поддерживается для локальных агентов. Вы можете использовать только предварительно установленные версии.
Требуемая версия Python должна быть добавлена в кэш инструментов в локальном агенте, чтобы задача может использовать ее. Как правило, кэш инструментов находится в каталоге _work/_tool
агента; кроме того, путь можно переопределить переменной среды AGENT_TOOLSDIRECTORY
. В этом каталоге создайте следующую структуру каталогов на основе версии Python:
$AGENT_TOOLSDIRECTORY/
Python/
{version number}/
{platform}/
{tool files}
{platform}.complete
version number
должны соответствовать формату 1.2.3
.
platform
должны быть x86
или x64
.
tool files
должны быть распакованными файлами версии Python.
{platform}.complete
должен быть 0-байтовый файл, который выглядит как x86.complete
или x64.complete
и просто указывает, что средство установлено в кэше правильно.
Как полный и конкретный пример, вот как завершенная загрузка Python 3.11.4 для x64 будет выглядеть в кэше инструментов:
$AGENT_TOOLSDIRECTORY/
Python/
3.11.4/
x64/
{tool files}
x64.complete
Дополнительные сведения о кэша инструментов.
Чтобы скрипты работали так же, как и в размещенных в Майкрософт агентах, используйте структуру симлинирования из PEP 394 в системах, таких как Unix.
Кроме того, обратите внимание, что для внедренного ZIP-выпуска Python требуется дополнительная конфигурация для установленных модулей, включая pip
. По возможности рекомендуется использовать полный установщик, чтобы получить установку Python, совместимую с pip
.
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
требования | Нет |
возможностей | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
ограничения команд | Эта задача выполняется с помощью следующих ограничений команд : ограничено. |
переменные settable | Эта задача имеет разрешение на задать следующие переменные: pythonLocation, PATH |
Версия агента | 2.182.1 или более поздней версии |
Категория задач | Инструмент |
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
требования | Нет |
возможностей | Эта задача не удовлетворяет требованиям к последующим задачам в задании. |
ограничения команд | Любое |
переменные settable | Любое |
Версия агента | Все поддерживаемые версии агента. |
Категория задач | Инструмент |