UsePythonVersion@0: Task "Python Version v0 verwenden"
Verwenden Sie diese Aufgabe, um eine Python-Version herunterzuladen oder auszuwählen, die auf einem Agent ausgeführt werden soll, und fügen Sie sie optional zu PATH hinzu.
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.
Eingaben
versionSpec
- Versionsspezifikation
string
. Erforderlich. Standardwert. 3.x
.
Gibt den Versionsbereich oder die genaue Version einer zu verwendenden Python-Version mithilfe der Versionsbereichssyntax von SemVer an. Erfahren Sie mehr über SemVer.
disableDownloadFromRegistry
- Deaktivieren des Herunterladens von Releases aus der GitHub-Registrierung
boolean
. Standardwert. false
.
Deaktiviert das Herunterladen fehlender Python-Versionen aus der Github Actions-Registrierung. Dieser boolesche Wert sollte nur sein, wenn eine lokale Installation von Python verwendet wird true
.
allowUnstable
- Herunterladen von instabilen Releases zulassen
boolean
. Optional. Verwenden Sie , wenn disableDownloadFromRegistry = false
. Standardwert. false
.
Lädt instabile Python-Versionen aus der Github Actions Python-Versionsregistrierung herunter, wenn auf true
festgelegt ist.
githubToken
- GitHub-Token für GitHub Actions Python-Registrierung
string
. Optional. Verwenden Sie , wenn disableDownloadFromRegistry = false
.
Gibt das GitHub-Token an, das den Grenzwert für anonyme Anforderungen in der GitHub Actions-Pythonversionsregistrierung erzwingt. Wenn sie leer bleiben, kann es zu Downloadfehlern kommen. Nicht erforderlich, wenn Sie eine lokale Installation von Python verwenden.
addToPath
- Zu PATH hinzufügen
boolean
. Standardwert. true
.
Stellt die abgerufene Python-Version der PATH-Umgebungsvariablen voran, um sie in nachfolgenden Aufgaben oder Skripts verfügbar zu machen, ohne die Ausgabevariable zu verwenden.
architecture
- Architektur
string
. Erforderlich. Zulässige Werte: x86
, x64
. Standardwert. x64
.
Gibt die Zielarchitektur (x86
oder x64
) des Python-Interpreters an.
Optionen für die Vorgangskontrolle
Alle Vorgänge verfügen zusätzlich zu ihren Eingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerungsoptionen und allgemeine Aufgabeneigenschaften.
Ausgabevariablen
Diese Aufgabe definiert die folgenden Ausgabevariablen, die Sie in Downstreamschritten, Aufträgen und Phasen verwenden können.
pythonLocation
Das Verzeichnis der installierten Python-Verteilung. Verwenden Sie dies in nachfolgenden Aufgaben, um auf diese Installation von Python zuzugreifen.
Bemerkungen
Verwenden Sie diese Aufgabe, um eine Python-Version herunterzuladen oder auszuwählen, die auf einem Agent ausgeführt werden soll, und fügen Sie sie optional zu PATH hinzu.
Voraussetzungen
- Ein von Microsoft gehosteter Agent mit parallel installierten Python-Versionen oder ein selbstgehostetem Agent mit
Agent.ToolsDirectory
konfiguriertem Agent (siehe HÄUFIG gestellte Fragen). - Das Herunterladen von Python-Versionen wird für selbstgehostete Agents nicht unterstützt.
Diese Aufgabe schlägt fehl, wenn keine Python-Versionen in Agent.ToolsDirectory
gefunden werden. Verfügbare Python-Versionen auf von Microsoft gehosteten Agents finden Sie hier.
Hinweis
x86- und x64-Versionen von Python sind auf von Microsoft gehosteten Windows-Agents verfügbar, jedoch nicht auf Linux- oder macOS-Agents.
Ab Version 0.150 der Aufgabe sind für die Versionsangabe auch pypy2
oder pypy3
zulässig.
Ab Version 0.213.1 der Aufgabe akzeptiert pypy2.x
die Versionsspezifikation auch oder pypy3.x
.
Wenn die Aufgabe erfolgreich abgeschlossen wurde, enthält die Ausgabevariable des Tasks das Verzeichnis der Python-Installation:
Nachdem Sie diese Aufgabe mit „Zu PATH hinzufügen“ ausgeführt haben, bezieht sich der Befehl python
in nachfolgenden Skripts auf die höchste verfügbare Version des Interpreters, die der Versionsangabe und der Architektur entspricht.
Die Auf den von Microsoft gehosteten Ubuntu- und macOS-Images installierten Python-Versionen folgen der Symlinking-Struktur für Unix-ähnliche Systeme, die in PEP 394 definiert sind.
Beispielsweise python3.11
ist der eigentliche Interpreter für Python 3.11.
python3
ist mit diesem Interpreter symbolisch verknüpft, und python
ist eine symbolische Verknüpfung mit dieser symbolischen Verknüpfung.
Auf den von Microsoft gehosteten Windows-Images ist der Interpreter einfach python
.
Für von Microsoft gehostete Agents wird x86 nur unter Windows unterstützt. Dies liegt daran, dass Windows ausführbare Dateien ausführen kann, die für die x86-Architektur mit dem WoW64-Subsystem kompiliert wurden. Hosted Ubuntu und Hosted macOS führen 64-Bit-Betriebssysteme und nur 64-Bit-Python aus.
Wie kann ich einen selbstgehosteten Agent für die Verwendung dieser Aufgabe konfigurieren?
Wichtig
Das Herunterladen von Python-Versionen wird für selbstgehostete Agents nicht unterstützt. Sie dürfen nur vorinstallierte Versionen verwenden.
Die gewünschte Python-Version muss dem Toolcache auf dem selbstgehosteten Agent hinzugefügt werden, damit die Aufgabe sie verwenden kann. Normalerweise befindet sich der Toolcache im _work/_tool
Verzeichnis des Agents. Alternativ kann der Pfad von der Umgebungsvariablen AGENT_TOOLSDIRECTORY
überschrieben werden. Erstellen Sie unter diesem Verzeichnis die folgende Verzeichnisstruktur basierend auf Ihrer Python-Version:
$AGENT_TOOLSDIRECTORY/
Python/
{version number}/
{platform}/
{tool files}
{platform}.complete
version number
sollte das Format von 1.2.3
aufweisen.
platform
sollte entweder x86
oder x64
sein.
Bei tool files
sollte es sich um die entzippten Python-Versionsdateien handeln.
{platform}.complete
sollte eine 0 Byte große Datei sein, die wie x86.complete
oder x64.complete
aussieht und lediglich angibt, dass das Tool ordnungsgemäß im Cache installiert wurde.
Als vollständiges und konkretes Beispiel sehen Sie hier, wie ein abgeschlossener Download von Python 3.11.4 für x64 im Toolcache aussehen würde:
$AGENT_TOOLSDIRECTORY/
Python/
3.11.4/
x64/
{tool files}
x64.complete
Erfahren Sie mehr über den Toolcache.
Damit Ihre Skripts wie auf von Microsoft gehosteten Agents funktionieren, verwenden Sie die symlinking-Struktur von PEP 394 auf Unix-ähnlichen Systemen.
Beachten Sie auch, dass die einbettbare ZIP-Version von Python eine zusätzliche Konfiguration für installierte Module erfordert, einschließlich pip
. Es wird empfohlen, möglichst das vollständige Installationsprogramm zu verwenden, um eine pip
-kompatible Python-Installation zu erhalten.
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Klassischer Build, klassisches Release |
Wird ausgeführt auf | Agent, DeploymentGroup |
Forderungen | Keine |
Capabilities | Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag. |
Befehlseinschränkungen | Diese Aufgabe wird mit den folgenden Befehlseinschränkungen ausgeführt: restricted |
Setzbare Variablen | Diese Aufgabe verfügt über die Berechtigung zum Festlegen der folgenden Variablen: pythonLocation, PATH |
Agent-Version | 2.182.1 oder höher |
Aufgabenkategorie | Tool |
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Klassischer Build, klassisches Release |
Wird ausgeführt auf | Agent, DeploymentGroup |
Forderungen | Keine |
Capabilities | Diese Aufgabe erfüllt keine Anforderungen an nachfolgende Aufgaben im Auftrag. |
Befehlseinschränkungen | Any |
Setzbare Variablen | Any |
Agent-Version | Alle unterstützten Agent-Versionen. |
Aufgabenkategorie | Tool |