UsePythonVersion@0 - Python 버전 v0 작업 사용

이 작업을 사용하여 에이전트에서 실행할 Python 버전을 다운로드하거나 선택하고 필요에 따라 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.

입력

versionSpec - 버전 사양
string. 필수 요소. 기본값은 3.x입니다.

SemVer의 버전 범위 구문을 사용하여 사용할 Python 버전의 버전 범위 또는 정확한 버전을 지정합니다. SemVer에 대해 자세히 알아보세요.


disableDownloadFromRegistry - GitHub 레지스트리에서 릴리스 다운로드 사용 안 함
boolean. 기본값은 false입니다.

Github Actions 레지스트리에서 누락된 Python 버전 다운로드를 사용하지 않도록 설정합니다. 이 부울은 true Python의 로컬 설치를 사용하는 경우에만 사용해야 합니다.


allowUnstable - 불안정한 릴리스 다운로드 허용
boolean. 선택 사항입니다. 를 사용하는 경우 disableDownloadFromRegistry = false를 사용합니다. 기본값은 false입니다.

로 설정된 경우 Github Actions Python 버전 레지스트리에서 불안정한 Python 버전을 다운로드합니다 true.


githubToken - GitHub Actions Python 레지스트리용 GitHub 토큰
string. 선택 사항입니다. 를 사용하는 경우 disableDownloadFromRegistry = false를 사용합니다.

Github Actions Python 버전 레지스트리에서 익명 요청 제한을 적용하는 GitHub 토큰을 지정합니다. 이 파일을 비워 두면 다운로드 오류가 발생할 수 있습니다. Python의 로컬 설치를 사용하는 경우 필요하지 않습니다.


addToPath - PATH에 추가
boolean. 기본값은 true입니다.

출력 변수를 사용하지 않고 후속 작업 또는 스크립트에서 사용할 수 있도록 검색된 Python 버전을 PATH 환경 변수 앞에 추가합니다.


architecture - 아키텍처
string. 필수 요소. 허용되는 값: x86, x64. 기본값은 x64입니다.

Python 인터프리터의 대상 아키텍처(x86 또는 x64)를 지정합니다.


작업 제어 옵션

모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.

출력 변수

이 작업은 다운스트림 단계, 작업 및 단계에서 사용할 수 있는 다음 출력 변수를 정의합니다.

pythonLocation
설치된 Python 배포의 디렉터리입니다. 후속 작업에서 이 작업을 사용하여 이 Python 설치에 액세스합니다.

설명

이 작업을 사용하여 에이전트에서 실행할 Python 버전을 다운로드하거나 선택하고 필요에 따라 PATH에 추가합니다.

사전 요구 사항

  • 병렬 버전의 Python이 설치된 Microsoft 호스팅 에이전트 또는 구성된 자체 호스팅 에이전트 Agent.ToolsDirectory ( FAQ 참조).
  • Python 버전 다운로드는 자체 호스팅 에이전트에서 지원되지 않습니다.

에 Python 버전이 Agent.ToolsDirectory없으면 이 작업이 실패합니다. Microsoft 호스팅 에이전트에서 사용 가능한 Python 버전은 여기에서 찾을 수 있습니다.

참고

x86 및 x64 버전의 Python은 Microsoft 호스팅 Windows 에이전트에서 사용할 수 있지만 Linux 또는 macOS 에이전트에서는 사용할 수 없습니다.

작업 버전 0.150을 기준으로 버전 사양은 또는 pypy3도 수락 pypy2 합니다.

작업의 버전 0.213.1을 기준으로 버전 사양은 또는 pypy3.x도 수락 pypy2.x 합니다.

작업이 성공적으로 완료되면 작업의 출력 변수에 Python 설치 디렉터리가 포함됩니다.

출력 변수의 스크린샷

"PATH에 추가" python 를 사용하여 이 작업을 실행한 후 후속 스크립트의 명령은 버전 사양 및 아키텍처와 일치하는 사용 가능한 가장 높은 버전의 인터프리터를 위한 것입니다.

Microsoft 호스팅 Ubuntu 및 macOS 이미지에 설치된 Python 버전은 PEP 394에 정의된 Unix와 유사한 시스템의 symlinking 구조를 따릅니다.

예를 들어 python3.11 은 Python 3.11의 실제 인터프리터입니다.

python3 는 해당 인터프리터에 대한 symlinked이고 python 는 해당 symlink에 대한 symlink입니다.

Microsoft에서 호스팅하는 Windows 이미지에서 인터프리터는 입니다 python.

Microsoft 호스팅 에이전트의 경우 x86은 Windows에서만 지원됩니다. Windows는 WoW64 하위 시스템을 사용하여 x86 아키텍처에 대해 컴파일된 실행 파일을 실행할 수 있기 때문입니다. 호스트된 Ubuntu 및 호스트된 macOS는 64비트 운영 체제를 실행하고 64비트 Python만 실행합니다.

이 작업을 사용하도록 자체 호스팅 에이전트를 구성하려면 어떻게 해야 하나요?

중요

Python 버전 다운로드는 자체 호스팅 에이전트에서 지원되지 않습니다. 사전 설치된 버전만 사용할 수 있습니다.

작업에서 사용할 수 있도록 원하는 Python 버전을 자체 호스팅 에이전트의 도구 캐시에 추가해야 합니다. 일반적으로 도구 캐시는 에이전트의 디렉터리 아래에 _work/_tool 있습니다. 또는 환경 변수 AGENT_TOOLSDIRECTORY로 경로를 재정의할 수 있습니다. 해당 디렉터리에서 Python 버전을 기반으로 다음 디렉터리 구조를 만듭니다.

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

version number 형식 1.2.3을 따라야 합니다. 은 platform 또는 x64이어야 x86 합니다. 은 tool files 압축을 푼 Python 버전 파일이어야 합니다. 은 {platform}.complete 또는 x64.complete 처럼 x86.complete 보이는 0바이트 파일이어야 하며, 도구가 캐시에 제대로 설치되었음을 의미합니다.

완전하고 구체적인 예는 x64용 Python 3.11.4의 완료된 다운로드가 도구 캐시에서 어떻게 표시되는지입니다.

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

도구 캐시에 대해 자세히 알아봅니다.

스크립트가 Microsoft 호스팅 에이전트에서와 같이 작동하도록 하려면 Unix와 유사한 시스템의 PEP 394 의 symlinking 구조를 사용합니다.

또한 Python의 포함 가능한 ZIP 릴리스에는 를 포함하여 pip설치된 모듈에 대한 추가 구성이 필요합니다. 가능하면 전체 설치 관리자 를 사용하여 호환되는 Python 설치를 pip가져오는 것이 좋습니다.

요구 사항

요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드, 클래식 릴리스
실행 중 에이전트, DeploymentGroup
요청 없음
Capabilities 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다.
명령 제한 사항 이 작업은 다음 명령 제한을 사용하여 실행됩니다. 제한됨
Settable 변수 이 작업에는 pythonLocation, PATH 변수를 설정할 수 있는 권한이 있습니다.
에이전트 버전 2.182.1 이상
작업 범주 도구
요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드, 클래식 릴리스
실행 중 에이전트, DeploymentGroup
요청 없음
Capabilities 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다.
명령 제한 사항 모두
설정 가능한 변수 모두
에이전트 버전 지원되는 모든 에이전트 버전.
작업 범주 도구