UsePythonVersion@0 – Python-Version v0-Aufgabe 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.
Eingänge
versionSpec
-
Versionsspezifikation
string
. Erforderlich. Standardwert: 3.x
.
Gibt den Versionsbereich oder die genaue Version einer zu verwendenden Python-Version mithilfe der Syntax des SemVer-Versionsbereichs an. Erfahren Sie mehr über SemVer.
disableDownloadFromRegistry
-
Deaktivieren des Herunterladens von Versionen aus der GitHub-Registrierung
boolean
. Standardwert: false
.
Deaktiviert das Herunterladen fehlender Python-Versionen aus der Github Actions-Registrierung. Dieser boolesche Wert sollte nur true
werden, wenn eine lokale Installation von Python verwendet wird.
allowUnstable
-
Zulassen des Downloads instabiler Versionen
boolean
. Wahlfrei. Wird verwendet, wenn disableDownloadFromRegistry = false
. Standardwert: false
.
Lädt instabile Python-Versionen aus der Registrierung Github Actions Python-Versionen herunter, wenn sie auf true
festgelegt ist.
githubToken
-
GitHub-Token für GitHub Actions Python-Registrierung
string
. Wahlfrei. Wird verwendet, wenn disableDownloadFromRegistry = false
.
Gibt das GitHub-Token an, das den Grenzwert für anonyme Anforderungen in der Registrierung Github Actions Python-Versionenerzwingt. Wenn Sie dieses leere Element verlassen, 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 Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.
Ausgabevariablen
Mit dieser Aufgabe werden die folgenden Ausgabevariablendefiniert, die Sie in nachgeschalteten Schritten, 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 einem selbst gehosteten Agent mit
Agent.ToolsDirectory
konfiguriert (siehe HÄUFIG gestellte Fragen). - Das Herunterladen von Python-Versionen wird für selbst gehostete 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, aber nicht unter Linux- oder macOS-Agents verfügbar.
Ab Version 0.150 der Aufgabe akzeptiert die Versionsspezifikation auch pypy2
oder pypy3
.
Ab Version 0.213.1 der Aufgabe akzeptiert die Versionsspezifikation auch pypy2.x
oder pypy3.x
.
Wenn die Aufgabe erfolgreich abgeschlossen wird, enthält die Ausgabevariable der Aufgabe das Verzeichnis der Python-Installation:
Nachdem Sie diese Aufgabe mit "Zu PATH hinzufügen" ausgeführt haben, wird der Befehl python
in nachfolgenden Skripts für die höchste verfügbare Version des Interpreters verwendet, die mit der Versionsspezifikation und -architektur übereinstimmen.
Die Versionen von Python auf den von Microsoft gehosteten Ubuntu- und macOS-Images folgen der Symlinking-Struktur für Unix-ähnliche Systeme, die in PEP 394definiert sind.
Beispielsweise ist python3.11
der eigentliche Dolmetscher für Python 3.11.
python3
ist mit diesem Dolmetscher verknüpft, und python
ist ein Symlink zu diesem Symlink.
Auf den von Microsoft gehosteten Windows-Images ist der Dolmetscher nur 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. Gehostetes Ubuntu und gehostetes macOS führen 64-Bit-Betriebssysteme aus und führen nur 64-Bit-Python aus.
Wie kann ich einen selbst gehosteten Agent für die Verwendung dieser Aufgabe konfigurieren?
Wichtig
Das Herunterladen von Python-Versionen wird für selbst gehostete Agents nicht unterstützt. Sie dürfen nur vorinstallierte Versionen verwenden.
Die gewünschte Python-Version muss dem Toolcache im selbst gehosteten Agent hinzugefügt werden, damit die Aufgabe sie verwenden kann. Normalerweise befindet sich der Toolcache unter dem _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
Die version number
sollte dem Format von 1.2.3
folgen.
Die platform
sollte entweder x86
oder x64
sein.
Die tool files
sollte die entzippten Python-Versionsdateien sein.
Die {platform}.complete
sollte eine 0-Byte-Datei sein, die wie x86.complete
oder x64.complete
aussieht und nur angibt, dass das Tool im Cache ordnungsgemäß installiert wurde.
Als vollständiges und konkretes Beispiel: Ein abgeschlossener Download von Python 3.11.4 für x64 würde im Toolcache aussehen:
$AGENT_TOOLSDIRECTORY/
Python/
3.11.4/
x64/
{tool files}
x64.complete
Erfahren Sie mehr über den Toolcache.
Verwenden Sie die Symlinking-Struktur von PEP 394 auf Unix-ähnlichen Systemen, damit Ihre Skripts wie bei von Microsoft gehosteten Agents funktionieren.
Beachten Sie außerdem, dass die einbettbare ZIP-Version von Python zusätzliche Konfiguration für installierte Moduleerfordert, einschließlich pip
. Wenn möglich, empfehlen wir die Verwendung des vollständigen Installers, um eine pip
-kompatible Python-Installation zu erhalten.
Anforderungen
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Classic Build, Classic Release |
Läuft auf | Agent, DeploymentGroup |
Anforderungen | Nichts |
Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
Befehlseinschränkungen | Diese Aufgabe wird mit den folgenden Befehlseinschränkungenausgeführt: restricted |
Settable-Variablen | Diese Aufgabe verfügt über die Berechtigung zum festlegen die folgenden Variablen: pythonLocation, PATH |
Agentversion | 2.182.1 oder höher |
Vorgangskategorie | Werkzeug |
Anforderung | BESCHREIBUNG |
---|---|
Pipelinetypen | YAML, Classic Build, Classic Release |
Läuft auf | Agent, DeploymentGroup |
Anforderungen | Nichts |
Funktionen | Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag. |
Befehlseinschränkungen | Jegliche |
Settable-Variablen | Jegliche |
Agentversion | Alle unterstützten Agentversionen. |
Vorgangskategorie | Werkzeug |