Condividi tramite


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.

Ingressi dati

versionSpec - specifica della versione
string. Obbligatorio. Valore predefinito: 3.x

Specifica l'intervallo di versioni o la versione esatta di una versione 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 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. Opzionale. Usare quando disableDownloadFromRegistry = false. Valore predefinito: false

Scarica versioni di Python instabile dal Registro di sistema delle versioni di Python Github Actions se impostato su true.


githubToken - token GitHub per i del Registro di sistema Python di GitHub Actions
string. Opzionale. Usare quando disableDownloadFromRegistry = false.

Specifica il token GitHub che applica il limite di richieste anonime nel Registro di sistema delle versioni python Github Actions. L'uscita da 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
La directory della distribuzione Python installata. Usarlo nelle attività successive per accedere a questa installazione di Python.

Osservazioni:

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 comando python negli script successivi sarà per la versione più elevata disponibile dell'interprete corrispondente alla specifica di versione e all'architettura.

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 a tale interprete e 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 directory _work/_tool dell'agente; in alternativa, il percorso può essere sottoposto a override dalla variabile di ambiente AGENT_TOOLSDIRECTORY. 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

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

Come esempio completo e concreto, ecco come verrà visualizzato un download completo di Python 3.11.4 per x64 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 in agenti ospitati da Microsoft, usare la struttura di collegamento simbolico di PEP 394 nei sistemi simili a Unix.

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

Requisiti

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