Dela via


UsePythonVersion@0 – Använd python-version v0-uppgift

Använd den här uppgiften om du vill ladda ned eller välja en version av Python som ska köras på en agent och eventuellt lägga till den i PATH.

Syntax

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

Ingångar

versionSpec - Versionsspecifikation
string. Obligatoriskt. Standardvärde: 3.x.

Anger versionsintervallet eller den exakta versionen av en Python-version som ska användas med hjälp av SemVers syntax för versionsintervall. Läs mer om SemVer.


disableDownloadFromRegistry - Inaktivera nedladdning av versioner från GitHub-registret
boolean. Standardvärde: false.

Inaktiverar nedladdning av saknade Python-versioner från Github Actions-registret. Det här booleska värdet ska bara vara true om du använder en lokal installation av Python.


allowUnstable - Tillåt nedladdning av instabila versioner
boolean. Valfritt. Använd när disableDownloadFromRegistry = false. Standardvärde: false.

Laddar ned instabila Python-versioner från Github Actions Python-versionsregister om det är inställt på true.


githubToken - GitHub-token för GitHub Actions Python-register
string. Valfritt. Använd när disableDownloadFromRegistry = false.

Anger den GitHub-token som framtvingar gränsen för anonyma begäranden i Github Actions python-versionsregister. Om du lämnar det här tomt kan det orsaka nedladdningsfel. Behövs inte om du använder en lokal installation av Python.


addToPath - Lägg till i PATH-
boolean. Standardvärde: true.

Förbereder den hämtade Python-versionen till PATH-miljövariabeln för att göra den tillgänglig i efterföljande uppgifter eller skript utan att använda utdatavariabeln.


architecture - Arkitektur
string. Obligatoriskt. Tillåtna värden: x86, x64. Standardvärde: x64.

Anger målarkitekturen (x86 eller x64) för Python-tolken.


Kontrollalternativ för aktivitet

Alla aktiviteter har kontrollalternativ utöver sina aktivitetsindata. Mer information finns i Kontrollalternativ och vanliga uppgiftsegenskaper.

Utdatavariabler

Den här uppgiften definierar följande utdatavariabler, som du kan använda i underordnade steg, jobb och steg.

pythonLocation
Katalogen för den installerade Python-distributionen. Använd detta i efterföljande uppgifter för att få åtkomst till den här installationen av Python.

Anmärkningar

Använd den här uppgiften om du vill ladda ned eller välja en version av Python som ska köras på en agent och eventuellt lägga till den i PATH.

Förutsättningar

  • En Microsoft-värdbaserad agent med sida vid sida-versioner av Python installerat eller en lokalt installerad agent med Agent.ToolsDirectory konfigurerad (se Vanliga frågor och svar).
  • Nedladdning av Python-versioner stöds inte på lokalt installerade agenter.

Den här uppgiften misslyckas om inga Python-versioner hittas i Agent.ToolsDirectory. Tillgängliga Python-versioner på Microsoft-värdbaserade agenter finns här.

Anmärkning

x86- och x64-versioner av Python är tillgängliga på Microsoft-värdbaserade Windows-agenter, men inte på Linux- eller macOS-agenter.

Från och med version 0.150 av uppgiften accepterar versionsspecifikationen även pypy2 eller pypy3.

Från och med version 0.213.1 av uppgiften accepterar versionsspecifikationen även pypy2.x eller pypy3.x.

Om uppgiften har slutförts innehåller aktivitetens utdatavariabel katalogen för Python-installationen:

Skärmbild av utdatavariabeln.

När du har kört den här uppgiften med "Lägg till i PATH" kommer kommandot python i efterföljande skript att vara för den högsta tillgängliga versionen av tolken som matchar versionsspecifikationen och arkitekturen.

Versionerna av Python som är installerade på Microsoft-värdbaserade Ubuntu- och macOS-avbildningar följer symlinking-strukturen för Unix-liknande system som definieras i PEP 394.

Till exempel är python3.11 den faktiska tolken för Python 3.11.

python3 är symlinkad till tolken och python är en symlink till den symlinken.

På Microsoft-värdbaserade Windows-avbildningar är tolken bara python.

För Microsoft-värdbaserade agenter stöds x86 endast i Windows. Det beror på att Windows kan köra körbara filer som kompilerats för x86-arkitekturen med undersystemet WoW64. Värdbaserade Ubuntu- och värdbaserade macOS kör 64-bitars operativsystem och kör endast 64-bitars Python.

Hur konfigurerar jag en lokalt installerad agent för att använda den här uppgiften?

Viktigt!

Nedladdning av Python-versioner stöds inte på lokalt installerade agenter. Du får bara använda förinstallerade versioner.

Den önskade Python-versionen måste läggas till i verktygscacheminnet på den lokalt installerade agenten så att uppgiften kan använda den. Normalt finns verktygscachen under _work/_tool-katalogen för agenten. alternativt kan sökvägen åsidosättas av miljövariabeln AGENT_TOOLSDIRECTORY. Under den katalogen skapar du följande katalogstruktur baserat på din Python-version:

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

version number ska följa formatet för 1.2.3. platform ska antingen vara x86 eller x64. tool files ska vara de uppackade Python-versionsfilerna. {platform}.complete ska vara en 0 byte-fil som ser ut som x86.complete eller x64.complete och som bara betyder att verktyget har installerats korrekt i cacheminnet.

Som ett komplett och konkret exempel är här hur en slutförd nedladdning av Python 3.11.4 för x64 skulle se ut i verktygscacheminnet:

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

Läs mer om -verktygets cacheminne.

Använd symlinking-strukturen från PEP 394- på Unix-liknande system för att få skripten att fungera som de skulle på Microsoft-värdbaserade agenter.

Observera också att den inbäddningsbara ZIP-versionen av Python kräver extra konfiguration för installerade moduler, inklusive pip. Om möjligt rekommenderar vi att du använder fullständiga installationsprogrammet för att få en pip-kompatibel Python-installation.

Krav

Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
kräver Ingen
funktioner Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet.
Kommandobegränsningar Den här aktiviteten körs med hjälp av följande kommandobegränsningar: begränsad
variabler som kan Den här uppgiften har behörighet att ange följande variabler: pythonLocation, PATH
Agentversion 2.182.1 eller senare
Aktivitetskategori Verktyg
Krav Beskrivning
Pipelinetyper YAML, klassisk version, klassisk version
Körs på Agent, DeploymentGroup
kräver Ingen
funktioner Den här aktiviteten uppfyller inte några krav på efterföljande uppgifter i jobbet.
Kommandobegränsningar Vilken som helst
variabler som kan Vilken som helst
Agentversion Alla agentversioner som stöds.
Aktivitetskategori Verktyg