UsePythonVersion@0 - Python-versie v0-taak gebruiken
Gebruik deze taak om een versie van Python te downloaden of te selecteren die op een agent moet worden uitgevoerd en voeg deze desgewenst toe aan PATH.
Syntaxis
# 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.
Invoer
versionSpec
-
versiespecificatie
string
. Verplicht. Standaardwaarde: 3.x
.
Hiermee geeft u het versiebereik of de exacte versie van een Python-versie die moet worden gebruikt, met behulp van de syntaxis van het versiebereik van SemVer. Meer informatie over SemVer.
disableDownloadFromRegistry
-
downloadversies uit het GitHub-register uitschakelen
boolean
. Standaardwaarde: false
.
Hiermee schakelt u het downloaden van ontbrekende Python-versies uit het Github Actions-register. Deze Booleaanse waarde mag alleen worden true
als u een lokale installatie van Python gebruikt.
allowUnstable
-
Downloaden van instabiele releases toestaan
boolean
. Facultatief. Gebruiken wanneer disableDownloadFromRegistry = false
. Standaardwaarde: false
.
Downloadt instabiele Python-versies uit het register met python-versies van Github Actions als deze is ingesteld op true
.
githubToken
-
GitHub-token voor Python-register voor GitHub Actions
string
. Facultatief. Gebruiken wanneer disableDownloadFromRegistry = false
.
Hiermee geeft u het GitHub-token op dat de limiet voor anonieme aanvragen afdwingt in het register Python-versies van Github Actions. Als u dit leeg laat, kunnen er downloadfouten optreden. Niet nodig als u een lokale installatie van Python gebruikt.
addToPath
-
toevoegen aan PATH-
boolean
. Standaardwaarde: true
.
Hiermee wordt de opgehaalde Python-versie voorafgegaan aan de omgevingsvariabele PATH om deze beschikbaar te maken in volgende taken of scripts zonder de uitvoervariabele te gebruiken.
architecture
-
Architectuur
string
. Verplicht. Toegestane waarden: x86
, x64
. Standaardwaarde: x64
.
Hiermee geeft u de doelarchitectuur (x86
of x64
) van de Python-interpreter op.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties en algemene taakeigenschappenvoor meer informatie.
Uitvoervariabelen
Deze taak definieert de volgende uitvoervariabelen, die u kunt gebruiken in downstreamstappen, taken en fasen.
pythonLocation
de map van de geïnstalleerde Python-distributie. Gebruik dit in volgende taken om toegang te krijgen tot deze installatie van Python.
Opmerkingen
Gebruik deze taak om een versie van Python te downloaden of te selecteren die op een agent moet worden uitgevoerd en voeg deze desgewenst toe aan PATH.
Benodigdheden
- Een door Microsoft gehoste agent met naast elkaar geïnstalleerde versies van Python of een zelf-hostende agent met
Agent.ToolsDirectory
geconfigureerd (zie veelgestelde vragen). - Het downloaden van Python-versies wordt niet ondersteund op zelf-hostende agents.
Deze taak mislukt als er geen Python-versies worden gevonden in Agent.ToolsDirectory
. Beschikbare Python-versies op door Microsoft gehoste agents vindt u hier .
Notitie
x86- en x64-versies van Python zijn beschikbaar op Door Microsoft gehoste Windows-agents, maar niet op Linux- of macOS-agents.
Vanaf versie 0.150 van de taak accepteert versiespecificatie ook pypy2
of pypy3
.
Vanaf versie 0.213.1 van de taak accepteert versiespecificatie ook pypy2.x
of pypy3.x
.
Als de taak is voltooid, bevat de uitvoervariabele van de taak de map van de Python-installatie:
Nadat u deze taak hebt uitgevoerd met 'Toevoegen aan PAD', is de opdracht python
in volgende scripts voor de hoogst beschikbare versie van de interpreter die overeenkomt met de versiespecificatie en -architectuur.
De versies van Python die zijn geïnstalleerd op de door Microsoft gehoste Ubuntu- en macOS-installatiekopieën volgen de symlinkingstructuur voor Unix-achtige systemen die zijn gedefinieerd in PEP 394-.
python3.11
is bijvoorbeeld de werkelijke interpreter voor Python 3.11.
python3
is symlink naar die interpreter en python
een symlink naar die symlink is.
Op de door Microsoft gehoste Windows-installatiekopieën is de interpreter slechts python
.
Voor door Microsoft gehoste agents wordt x86 alleen ondersteund in Windows. Dit komt doordat Windows uitvoerbare bestanden kan uitvoeren die zijn gecompileerd voor de x86-architectuur met het WoW64-subsysteem. Gehoste Ubuntu en gehoste macOS voeren 64-bits besturingssystemen uit en voeren slechts 64-bits Python uit.
Hoe kan ik een zelf-hostende agent configureren voor het gebruik van deze taak?
Belangrijk
Het downloaden van Python-versies wordt niet ondersteund op zelf-hostende agents. U mag alleen vooraf geïnstalleerde versies gebruiken.
De gewenste Python-versie moet worden toegevoegd aan de cache van het hulpprogramma op de zelf-hostende agent, zodat de taak deze kan gebruiken. Normaal gesproken bevindt de cache van het hulpprogramma zich onder de _work/_tool
map van de agent; Het pad kan ook worden overschreven door de omgevingsvariabele AGENT_TOOLSDIRECTORY
. Maak onder die map de volgende mapstructuur op basis van uw Python-versie:
$AGENT_TOOLSDIRECTORY/
Python/
{version number}/
{platform}/
{tool files}
{platform}.complete
De version number
moet de indeling van 1.2.3
volgen.
De platform
moet x86
of x64
zijn.
De tool files
moet de uitgepakte Python-versiebestanden zijn.
De {platform}.complete
moet een 0 bytebestand zijn dat eruitziet als x86.complete
of x64.complete
en geeft aan dat het hulpprogramma juist in de cache is geïnstalleerd.
Als volledig en concreet voorbeeld ziet u hier hoe een voltooide download van Python 3.11.4 voor x64 eruit zou zien in de toolcache:
$AGENT_TOOLSDIRECTORY/
Python/
3.11.4/
x64/
{tool files}
x64.complete
Meer informatie over de cache van het hulpprogramma.
Gebruik de symlinkingstructuur van PEP 394- op Unix-achtige systemen om uw scripts te laten werken zoals ze zouden doen op door Microsoft gehoste agents.
Houd er ook rekening mee dat voor de insluitbare ZIP-release van Python extra configuratie is vereist voor geïnstalleerde modules, inclusief pip
. Indien mogelijk raden we u aan het volledige installatieprogramma te gebruiken om een pip
-compatibele Python-installatie te krijgen.
Vereisten
Voorwaarde | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
eisen | Geen |
mogelijkheden | Deze taak voldoet niet aan de vereisten voor volgende taken in de taak. |
opdrachtbeperkingen | Deze taak wordt uitgevoerd met behulp van de volgende opdrachtbeperkingen: beperkt |
variabelen instellen | Deze taak is gemachtigd om de volgende variabelen in te stellen : pythonLocation, PATH |
Agentversie | 2.182.1 of hoger |
Taakcategorie | Werktuig |
Voorwaarde | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
eisen | Geen |
mogelijkheden | Deze taak voldoet niet aan de vereisten voor volgende taken in de taak. |
opdrachtbeperkingen | Welk dan ook |
variabelen instellen | Welk dan ook |
Agentversie | Alle ondersteunde agentversies. |
Taakcategorie | Werktuig |