Sdílet prostřednictvím


UsePythonVersion@0 – Použití úlohy Python verze v0

Pomocí této úlohy si můžete stáhnout nebo vybrat verzi Pythonu, která se má spustit v agentu, a volitelně ji přidat do 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.
# 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.

Vstupy

versionSpec - Specifikace verze
string. Povinná hodnota. Výchozí hodnota: 3.x.

Určuje rozsah verzí nebo přesnou verzi pythonu, která se má použít, pomocí syntaxe rozsahu verzí se systémem SemVer. Přečtěte si další informace o semVeru.


disableDownloadFromRegistry - Zákaz stahování verzí z registru GitHubu
boolean. Výchozí hodnota: false.

Zakáže stahování chybějících verzí Pythonu z registru Github Actions. Tato logická hodnota by měla být true pouze v případě, že používáte místní instalaci Pythonu.


allowUnstable - Povolit stahování nestabilních verzí
boolean. Nepovinný parametr. Použijte, když disableDownloadFromRegistry = false. Výchozí hodnota: false.

Stáhne nestabilní verze Pythonu z registru verzí Pythonu Github Actions , pokud je nastavená na true.


githubToken - Token GitHubu pro GitHub Actions registr Pythonu
string. Nepovinný parametr. Použijte, když disableDownloadFromRegistry = false.

Určuje token GitHubu, který vynucuje limit anonymních požadavků v registru verzí pythonu Github Actions. Ponechání prázdného souboru může způsobit selhání stahování. Není potřeba, pokud používáte místní instalaci Pythonu.


addToPath - Přidat do PATH
boolean. Výchozí hodnota: true.

Předepíše načtenou verzi Pythonu na proměnnou prostředí PATH, aby byla dostupná v následných úlohách nebo skriptech bez použití výstupní proměnné.


architecture - Architektura
string. Povinná hodnota. Povolené hodnoty: x86, x64. Výchozí hodnota: x64.

Určuje cílovou architekturu (x86 nebo x64) interpretu Pythonu.


Možnosti ovládání úloh

Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacího prvku a běžné vlastnosti úlohy.

Výstupní proměnné

Tato úloha definuje následující výstupní proměnné, které můžete využívat v podřízených krocích, úlohách a fázích.

pythonLocation
Adresář nainstalované distribuce Pythonu. Tuto možnost použijte v dalších úlohách pro přístup k této instalaci Pythonu.

Poznámky

Pomocí této úlohy si můžete stáhnout nebo vybrat verzi Pythonu, která se má spustit v agentu, a volitelně ji přidat do PATH.

Požadavky

  • Agent hostovaný Microsoftem s nainstalovanými souběžnými verzemi Pythonu nebo nakonfigurovaný agent Agent.ToolsDirectory v místním prostředí (viz nejčastější dotazy).
  • Agenti v místním prostředí stahování verzí Pythonu nepodporují.

Pokud se v nástroji nenajdou žádné verze Pythonu, Agent.ToolsDirectorytato úloha selže. Dostupné verze Pythonu pro agenty hostované Microsoftem najdete tady.

Poznámka

Verze x86 a x64 Pythonu jsou k dispozici u agentů Windows hostovaných Microsoftem, ale ne v agentech pro Linux nebo macOS.

Od verze 0.150 úlohy bude specifikace verze také přijímat pypy2 nebo pypy3.

Od verze 0.213.1 úlohy bude specifikace verze také přijímat pypy2.x nebo pypy3.x.

Pokud se úloha úspěšně dokončí, bude výstupní proměnná úkolu obsahovat adresář instalace Pythonu:

Snímek obrazovky s výstupní proměnnou

Po spuštění této úlohy s příkazem Přidat do CESTY python bude příkaz v následujících skriptech určen pro nejvyšší dostupnou verzi interpretu odpovídající specifikaci verze a architektuře.

Verze Pythonu nainstalované v imagích Ubuntu a macOS hostovaných Microsoftem se řídí strukturou propojení pro unixové systémy definované v PEP 394.

Například python3.11 je skutečný interpret pro Python 3.11.

python3 se symlinkuje s tímto interpretem a python je symlink na tento symlink.

Na imagích Windows hostovaných Microsoftem je interpret pouze python.

U agentů hostovaných Microsoftem se x86 podporuje jenom ve Windows. Je to proto, že Systém Windows může spustit spustitelné soubory kompilované pro architekturu x86 pomocí subsystému WoW64. Hostovaný Ubuntu a hostovaný macOS používají 64bitové operační systémy a používají pouze 64bitový Python.

Jak můžu nakonfigurovat agenta v místním prostředí pro použití této úlohy?

Důležité

Agenti v místním prostředí stahování verzí Pythonu nepodporují. Můžete používat pouze předinstalované verze.

Požadovanou verzi Pythonu je potřeba přidat do mezipaměti nástrojů v místním agentu, aby ji úloha mohl používat. Za normálních okolností se mezipaměť nástrojů nachází v _work/_tool adresáři agenta. Alternativně může být cesta přepsána proměnnou AGENT_TOOLSDIRECTORYprostředí . V tomto adresáři vytvořte následující adresářovou strukturu založenou na vaší verzi Pythonu:

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

Hodnota version number by měla mít formát 1.2.3. Hodnota platform by měla být x86x64nebo . Měly tool files by být rozbalené soubory verze Pythonu. Měl {platform}.complete by to být soubor s 0 bajty, který vypadá nebo x86.completex64.complete jen značí, že nástroj byl správně nainstalován v mezipaměti.

Jako úplný a konkrétní příklad uvádíme, jak by dokončené stažení Pythonu 3.11.4 pro x64 vypadalo v mezipaměti nástrojů:

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

Přečtěte si další informace o mezipaměti nástrojů.

Pokud chcete, aby vaše skripty fungovaly stejně jako u agentů hostovaných Microsoftem, použijte strukturu propojení z PEP 394 v systémech podobných Unixu.

Všimněte si také, že verze Zip pro vložení Pythonu vyžaduje další konfiguraci pro nainstalované moduly, včetně pip. Pokud je to možné, doporučujeme použít úplný instalační program , abyste získali instalaci Pythonu pipkompatibilní.

Požadavky

Požadavek Popis
Typy kanálů YAML, classic build, verze Classic
Spustí se Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Tato úloha se spustí pomocí následujících omezení příkazů: restricted
Nastavitelné proměnné Tato úloha má oprávnění k nastavení následujících proměnných: pythonLocation, PATH
Verze agenta 2.182.1 nebo vyšší
Kategorie úloh Nástroj
Požadavek Popis
Typy kanálů YAML, classic build, verze Classic
Běží na Agent, DeploymentGroup
Požadavky Žádné
Možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
Omezení příkazů Všechny
Nastavitelné proměnné Všechny
Verze agenta Všechny podporované verze agenta.
Kategorie úloh Nástroj