Compartilhar via


UsePythonVersion@0 – Usar a tarefa python versão v0

Use essa tarefa para baixar ou selecionar uma versão do Python para ser executada em um agente e, opcionalmente, adicioná-la ao PATH.

Sintaxe

# 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.

Entradas

de especificação de versão do versionSpec -
string. Obrigatório Valor padrão: 3.x.

Especifica o intervalo de versão ou a versão exata de uma versão do Python a ser usada, usando a sintaxe do intervalo de versão do SemVer. Saiba mais sobre SemVer.


disableDownloadFromRegistry - Desabilitar o download de versões do registro do GitHub
boolean. Valor padrão: false.

Desabilita o download de versões do Python ausentes do registro do Github Actions. Esse booliano só deve ser true se estiver usando uma instalação local do Python.


allowUnstable - Permitir o download de versões instáveis
boolean. Opcional. Use quando disableDownloadFromRegistry = false. Valor padrão: false.

Baixa versões instáveis do Python do registro de versões do Python do Github Actions se definido como true.


githubToken - token do GitHub para o registro python do GitHub Actions
string. Opcional. Use quando disableDownloadFromRegistry = false.

Especifica o token do GitHub que impõe o limite de solicitações anônimas no registro de versões do Python do Github Actions. Deixar isso vazio pode causar falhas de download. Não é necessário se estiver usando uma instalação local do Python.


addToPath - Adicionar ao PATH
boolean. Valor padrão: true.

Acrescenta a versão do Python recuperada à variável de ambiente PATH para disponibilizá-la em tarefas ou scripts subsequentes sem usar a variável de saída.


arquitetura architecture -
string. Obrigatório Valores permitidos: x86, x64. Valor padrão: x64.

Especifica a arquitetura de destino (x86 ou x64) do interpretador do Python.


Opções de controle de tarefa

Todas as tarefas têm opções de controle além das suas entradas de tarefas. Para obter mais informações, consulte as opções de Controle de e as propriedades comuns da tarefa.

Variáveis de saída

Essa tarefa define as seguintes variáveis de saída , que você pode consumir em etapas downstream, trabalhos e estágios.

pythonLocation
o diretório da distribuição do Python instalada. Use isso em tarefas subsequentes para acessar essa instalação do Python.

Observações

Use essa tarefa para baixar ou selecionar uma versão do Python para ser executada em um agente e, opcionalmente, adicioná-la ao PATH.

Pré-requisitos

  • Um agente hospedado pela Microsoft com versões lado a lado do Python instaladas ou um agente auto-hospedado com Agent.ToolsDirectory configurado (consulte perguntas frequentes).
  • Não há suporte para o download de versões do Python em agentes auto-hospedados.

Essa tarefa falhará se nenhuma versão do Python for encontrada no Agent.ToolsDirectory. Versões do Python disponíveis em agentes hospedados pela Microsoft podem ser encontradas aqui.

Observação

As versões x86 e x64 do Python estão disponíveis em agentes do Windows hospedados pela Microsoft, mas não em agentes Linux ou macOS.

A partir da versão 0.150 da tarefa, a especificação de versão também aceitará pypy2 ou pypy3.

A partir da versão 0.213.1 da tarefa, a especificação de versão também aceitará pypy2.x ou pypy3.x.

Se a tarefa for concluída com êxito, a variável de saída da tarefa conterá o diretório da instalação do Python:

Captura de tela da variável de saída.

Depois de executar essa tarefa com "Adicionar ao PATH", o comando python em scripts subsequentes será para a versão mais alta disponível do interpretador que corresponde à especificação e à arquitetura da versão.

As versões do Python instaladas nas imagens do Ubuntu e macOS hospedadas pela Microsoft seguem a estrutura de symlinking para sistemas semelhantes ao Unix definidos em PEP 394.

Por exemplo, python3.11 é o interpretador real do Python 3.11.

python3 é symlinked para esse interpretador, e python é um symlink para esse symlink.

Nas imagens do Windows hospedadas pela Microsoft, o interpretador é apenas python.

Para agentes hospedados pela Microsoft, o x86 tem suporte apenas no Windows. Isso ocorre porque o Windows pode executar executáveis compilados para a arquitetura x86 com o subsistema WoW64. O Ubuntu hospedado e o macOS hospedado executam sistemas operacionais de 64 bits e executam apenas o Python de 64 bits.

Como posso configurar um agente auto-hospedado para usar essa tarefa?

Importante

Não há suporte para o download de versões do Python em agentes auto-hospedados. Você só pode usar versões pré-instaladas.

A versão desejada do Python precisa ser adicionada ao cache de ferramentas no agente auto-hospedado para que a tarefa possa usá-la. Normalmente, o cache de ferramentas está localizado no diretório _work/_tool do agente; como alternativa, o caminho pode ser substituído pela variável de ambiente AGENT_TOOLSDIRECTORY. Nesse diretório, crie a seguinte estrutura de diretório com base em sua versão do Python:

$AGENT_TOOLSDIRECTORY/
    Python/
        {version number}/
            {platform}/
                {tool files}
            {platform}.complete

O version number deve seguir o formato de 1.2.3. O platform deve ser x86 ou x64. O tool files deve ser os arquivos de versão do Python descompactados. O {platform}.complete deve ser um arquivo de 0 bytes que se parece com x86.complete ou x64.complete e apenas significa que a ferramenta foi instalada no cache corretamente.

Como um exemplo completo e concreto, veja como um download concluído do Python 3.11.4 para x64 seria mostrado no cache de ferramentas:

$AGENT_TOOLSDIRECTORY/
    Python/
        3.11.4/
            x64/
                {tool files}
            x64.complete

Saiba mais sobre o cache da ferramenta .

Para fazer seus scripts funcionarem como em agentes hospedados pela Microsoft, use a estrutura de symlinking de PEP 394 em sistemas semelhantes ao Unix.

Observe também que a versão zip inserivel do Python requer configuração extra para módulos instalados, incluindo pip. Se possível, recomendamos usar o instalador completo para obter uma instalação do Python compatível com pip.

Requisitos

Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Execuções em Agent, DeploymentGroup
de demandas Nenhum
recursos Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho.
restrições de comando Esta tarefa é executada usando as seguintes restrições de comando : restrito
variáveis settable Essa tarefa tem permissão para definir as seguintes variáveis: pythonLocation, PATH
Versão do agente 2.182.1 ou superior
Categoria de tarefa Ferramenta
Requisito Descrição
Tipos de pipeline YAML, build clássico, versão clássica
Execuções em Agent, DeploymentGroup
de demandas Nenhum
recursos Essa tarefa não atende a nenhuma demanda para tarefas subsequentes no trabalho.
restrições de comando Qualquer
variáveis settable Qualquer
Versão do agente Todas as versões de agente com suporte.
Categoria de tarefa Ferramenta