UsePythonVersion@0 - Usare l'attività Python versione v0

Usare questa attività per scaricare o selezionare una versione di Python da eseguire in un agente e, facoltativamente, aggiungerla a PATH.

Sintassi

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

Input

versionSpec - Specifica di versione
string. Obbligatorio. Valore predefinito: 3.x.

Specifica l'intervallo di versioni o la versione esatta di una versione di Python da usare, usando la sintassi dell'intervallo di versioni di SemVer. Altre informazioni su SemVer.


disableDownloadFromRegistry - Disabilitare il download delle versioni dal Registro di sistema GitHub
boolean. Valore predefinito: false.

Disabilita il download delle versioni di Python mancanti dal Registro di sistema di Github Actions. Questo valore booleano deve essere true solo se si usa un'installazione locale di Python.


allowUnstable - Consenti il download di versioni instabili
boolean. Facoltativa. Usare quando disableDownloadFromRegistry = false. Valore predefinito: false.

Scarica le versioni python instabili dal Registro di sistema delle versioni di Python di Github Actions se impostato su true.


githubToken - Token GitHub per GitHub Actions registro Python
string. Facoltativa. Usare quando disableDownloadFromRegistry = false.

Specifica il token GitHub che applica il limite di richieste anonime nel Registro di sistema delle versioni python di GitHub Actions. Lasciare questo vuoto può causare errori di download. Non necessario se si usa un'installazione locale di Python.


addToPath - Aggiungi a PATH
boolean. Valore predefinito: true.

Antepone la versione di Python recuperata alla variabile di ambiente PATH per renderla disponibile nelle attività o negli script successivi senza usare la variabile di output.


architecture - Architettura
string. Obbligatorio. Valori consentiti: x86, x64. Valore predefinito: x64.

Specifica l'architettura di destinazione (x86 o x64) dell'interprete Python.


Opzioni di controllo delle attività

Tutte le attività dispongono di opzioni di controllo oltre ai relativi input attività. Per altre informazioni, vedere Opzioni di controllo e proprietà comuni delle attività.

Variabili di output

Questa attività definisce le variabili di output seguenti, che è possibile utilizzare nei passaggi downstream, nei processi e nelle fasi.

pythonLocation
Directory della distribuzione di Python installata. Usarlo nelle attività successive per accedere a questa installazione di Python.

Commenti

Usare questa attività per scaricare o selezionare una versione di Python da eseguire in un agente e, facoltativamente, aggiungerla a PATH.

Prerequisiti

  • Un agente ospitato da Microsoft con versioni side-by-side di Python installate o un agente self-hosted con Agent.ToolsDirectory configurato (vedere domande frequenti).
  • Il download delle versioni python non è supportato in agenti self-hosted.

Questa attività avrà esito negativo se non vengono trovate versioni di Python in Agent.ToolsDirectory. Le versioni di Python disponibili sugli agenti ospitati da Microsoft sono disponibili qui.

Nota

Le versioni x86 e x64 di Python sono disponibili in agenti Windows ospitati da Microsoft, ma non in agenti Linux o macOS.

A partire dalla versione 0.150 dell'attività, anche la specifica di versione accetterà pypy2 o pypy3.

A partire dalla versione 0.213.1 dell'attività, anche la specifica di versione accetterà pypy2.x o pypy3.x.

Se l'attività viene completata correttamente, la variabile di output dell'attività conterrà la directory dell'installazione di Python:

Screenshot della variabile di output.

Dopo aver eseguito questa attività con "Aggiungi a PATH", il python comando negli script successivi sarà per la versione più elevata disponibile dell'interprete corrispondente alla specifica e all'architettura della versione.

Le versioni di Python installate nelle immagini Ubuntu e macOS ospitate da Microsoft seguono la struttura di collegamento simbolico per sistemi simili a Unix definiti in PEP 394.

Ad esempio, python3.11 è l'interprete effettivo per Python 3.11.

python3 è collegato simbolicamente a tale interprete ed python è un collegamento simbolico a tale collegamento simbolico.

Nelle immagini Windows ospitate da Microsoft, l'interprete è solo python.

Per gli agenti ospitati da Microsoft, x86 è supportato solo in Windows. Questo avviene perché Windows può eseguire eseguibili compilati per l'architettura x86 con il sottosistema WoW64. Ubuntu ospitato e MacOS ospitato eseguono sistemi operativi a 64 bit ed eseguono solo Python a 64 bit.

Come è possibile configurare un agente self-hosted per l'uso di questa attività?

Importante

Il download delle versioni python non è supportato in agenti self-hosted. È possibile usare solo versioni preinstallate.

La versione di Python desiderata deve essere aggiunta alla cache degli strumenti nell'agente self-hosted in modo che l'attività possa usarla. In genere, la cache degli strumenti si trova nella _work/_tool directory dell'agente. In alternativa, il percorso può essere sottoposto a override dalla variabile AGENT_TOOLSDIRECTORYdi ambiente . In tale directory creare la struttura di directory seguente in base alla versione di Python:

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

L'oggetto version number deve seguire il formato di 1.2.3. Deve platform essere x86 o x64. Deve tool files essere il file di versione python decompresso. {platform}.complete Deve essere un file di 0 byte simile x86.complete a o x64.complete e indica semplicemente che lo strumento è stato installato correttamente nella cache.

Come esempio completo e concreto, ecco come un download completato di Python 3.11.4 per x64 apparirebbe nella cache degli strumenti:

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

Altre informazioni sulla cache degli strumenti.

Per fare in modo che gli script funzionino come gli agenti ospitati da Microsoft, usare la struttura di collegamento simbolico di PEP 394 in sistemi simili a Unix.

Si noti anche che la versione ZIP incorporabile di Python richiede una configurazione aggiuntiva per i moduli installati, incluso pip. Se possibile, è consigliabile usare il programma di installazione completo per ottenere un'installazione pipdi Python compatibile con .

Requisiti

Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Viene eseguito in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Questa attività viene eseguita usando le restrizioni di comando seguenti: con restrizioni
Variabili impostabili Questa attività dispone dell'autorizzazione per impostare le variabili seguenti: pythonLocation, PATH
Versione agente 2.182.1 o versione successiva
Categoria attività Strumento
Requisito Descrizione
Tipi di pipeline YAML, build classica, versione classica
Esecuzione in Agente, DeploymentGroup
Richieste Nessuno
Capabilities Questa attività non soddisfa le richieste per le attività successive nel processo.
Restrizioni dei comandi Qualsiasi
Variabili impostabili Qualsiasi
Versione agente Tutte le versioni dell'agente supportate.
Categoria attività Strumento