UsePythonVersion@0 — używanie zadania wersji języka Python w wersji 0
Użyj tego zadania, aby pobrać lub wybrać wersję języka Python do uruchomienia na agencie i opcjonalnie dodać ją do ścieżki.
Składnia
# 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.
Dane wejściowe
versionSpec
-
wersji
string
. To jest wymagane. Wartość domyślna: 3.x
.
Określa zakres wersji lub dokładną wersję używanej wersji języka Python przy użyciu składni zakresu wersji SemVer. Dowiedz się więcej o SemVer.
disableDownloadFromRegistry
-
Wyłącz pobieranie wersji z rejestru GitHub
boolean
. Wartość domyślna: false
.
Wyłącza pobieranie brakujących wersji języka Python z rejestru funkcji GitHub Actions . Ta wartość logiczna powinna być true
tylko w przypadku korzystania z lokalnej instalacji języka Python.
allowUnstable
-
Zezwalaj na pobieranie niestabilnych wersji
boolean
. Opcjonalny. Użyj polecenia , gdy disableDownloadFromRegistry = false
. Wartość domyślna: false
.
Pobiera niestabilne wersje języka Python z rejestru wersji języka Python Github Actions, jeśli ustawiono wartość true
.
githubToken
-
token usługi GitHub dla rejestru języka Python funkcji GitHub Actions
string
. Opcjonalny. Użyj polecenia , gdy disableDownloadFromRegistry = false
.
Określa token usługi GitHub, który wymusza limit żądań anonimowych w rejestrze wersji języka Python github Actions. Pozostawienie tego pustego może spowodować błędy pobierania. Nie jest to konieczne w przypadku korzystania z lokalnej instalacji języka Python.
addToPath
-
Dodaj do PATH
boolean
. Wartość domyślna: true
.
Poprzedza pobraną wersję języka Python do zmiennej środowiskowej PATH, aby udostępnić ją w kolejnych zadaniach lub skryptach bez używania zmiennej wyjściowej.
architecture
-
Architektura
string
. To jest wymagane. Dozwolone wartości: x86
, x64
. Wartość domyślna: x64
.
Określa architekturę docelową (x86
lub x64
) interpretera języka Python.
Opcje sterowania zadania
Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.
Zmienne wyjściowe
To zadanie definiuje następujące zmienne wyjściowe , które można używać w krokach podrzędnych, zadaniach i etapach.
pythonLocation
katalog zainstalowanej dystrybucji języka Python. Użyj tej funkcji w kolejnych zadaniach, aby uzyskać dostęp do tej instalacji języka Python.
Uwagi
Użyj tego zadania, aby pobrać lub wybrać wersję języka Python do uruchomienia na agencie i opcjonalnie dodać ją do ścieżki.
Wymagania wstępne
-
agent hostowany przez firmę Microsoft z zainstalowanymi równoległymi wersjami języka Python lub własnym agentem ze skonfigurowanym
Agent.ToolsDirectory
(zobacz często zadawane pytania ). - Pobieranie wersji języka Python nie jest obsługiwane w przypadku własnych agentów.
To zadanie zakończy się niepowodzeniem, jeśli nie znaleziono wersji języka Python w Agent.ToolsDirectory
. Dostępne wersje języka Python na agentach hostowanych przez firmę Microsoft można znaleźć tutaj.
Uwaga
Wersje x86 i x64 języka Python są dostępne na agentach systemu Windows hostowanych przez firmę Microsoft, ale nie w agentach systemu Linux lub macOS.
W wersji 0.150 zadania specyfikacje wersji będą również akceptować pypy2
lub pypy3
.
W wersji 0.213.1 zadania specyfikacje wersji będą również akceptować pypy2.x
lub pypy3.x
.
Jeśli zadanie zakończy się pomyślnie, zmienna wyjściowa zadania będzie zawierać katalog instalacji języka Python:
Po uruchomieniu tego zadania za pomocą polecenia "Dodaj do ścieżki" polecenie python
w kolejnych skryptach będzie dotyczyć najwyższej dostępnej wersji interpretera zgodnego ze specyfikacją wersji i architekturą.
Wersje języka Python zainstalowane na obrazach z systemem Ubuntu i macOS hostowanym przez firmę Microsoft są zgodne ze strukturą łączenia systemów przypominających system Unix zdefiniowanych w PEP 394.
Na przykład python3.11
jest rzeczywistym interpreterem języka Python 3.11.
python3
jest symlinkowany do tego interpretera, a python
jest symlinkiem do tego sylinku.
Na obrazach systemu Windows hostowanych przez firmę Microsoft interpreter jest po prostu python
.
W przypadku agentów hostowanych przez firmę Microsoft wersja x86 jest obsługiwana tylko w systemie Windows. Dzieje się tak, ponieważ system Windows może uruchamiać pliki wykonywalne skompilowane dla architektury x86 z podsystemem WoW64. Hostowane systemy ubuntu i hostowane w systemie macOS działają w 64-bitowych systemach operacyjnych i uruchamiają tylko 64-bitowy język Python.
Jak skonfigurować własnego agenta do korzystania z tego zadania?
Ważne
Pobieranie wersji języka Python nie jest obsługiwane w przypadku własnych agentów. Można używać tylko wstępnie zainstalowanych wersji.
Wymagana wersja języka Python musi zostać dodana do pamięci podręcznej narzędzi na własnym agencie, aby można było z niego korzystać. Zwykle pamięć podręczna narzędzi znajduje się w katalogu _work/_tool
agenta; alternatywnie ścieżkę można zastąpić zmienną środowiskową AGENT_TOOLSDIRECTORY
. W tym katalogu utwórz następującą strukturę katalogów na podstawie wersji języka Python:
$AGENT_TOOLSDIRECTORY/
Python/
{version number}/
{platform}/
{tool files}
{platform}.complete
version number
powinien być zgodny z formatem 1.2.3
.
platform
powinien być x86
lub x64
.
tool files
powinny być rozpakowane pliki wersji języka Python.
{platform}.complete
powinien być plikiem 0 bajtów, który wygląda jak x86.complete
lub x64.complete
i oznacza, że narzędzie zostało poprawnie zainstalowane w pamięci podręcznej.
Kompletny i konkretny przykład przedstawia sposób, w jaki ukończono pobrać środowisko Python 3.11.4 dla środowiska x64, będzie wyglądać w pamięci podręcznej narzędzi:
$AGENT_TOOLSDIRECTORY/
Python/
3.11.4/
x64/
{tool files}
x64.complete
Dowiedz się więcej o pamięci podręcznej narzędzia .
Aby skrypty działały tak jak w przypadku agentów hostowanych przez firmę Microsoft, należy użyć struktury łączenia symlinkingu z PEP 394 w systemach przypominających system Unix.
Należy również pamiętać, że osadzona wersja ZIP języka Python wymaga dodatkowej konfiguracji dla zainstalowanych modułów, w tym pip
. Jeśli to możliwe, zalecamy użycie pełnego instalatora, aby uzyskać instalację języka Python zgodną z pip
.
Wymagania
Wymaganie | Opis |
---|---|
Typy potoków | YAML, klasyczna kompilacja, wersja klasyczna |
Działa na | Agent, DeploymentGroup |
Wymagania | Żaden |
możliwości | To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu. |
ograniczenia poleceń | To zadanie jest uruchamiane przy użyciu następujących ograniczeń poleceń : ograniczone |
zmienne ustawiane | To zadanie ma uprawnienia do ustawić następujące zmienne: pythonLocation, PATH |
Wersja agenta | 2.182.1 lub nowsza |
Kategoria zadań | Narzędzie |
Wymaganie | Opis |
---|---|
Typy potoków | YAML, klasyczna kompilacja, wersja klasyczna |
Działa na | Agent, DeploymentGroup |
Wymagania | Żaden |
możliwości | To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu. |
ograniczenia poleceń | Jakikolwiek |
zmienne ustawiane | Jakikolwiek |
Wersja agenta | Wszystkie obsługiwane wersje agentów. |
Kategoria zadań | Narzędzie |