다음을 통해 공유


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

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

구문론

# 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.

입력

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

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


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

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


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

설정된 경우 true 불안정한 Python 버전을 다운로드합니다.


GitHub Actions Python 레지스트리대한 GitHub 토큰 githubToken -
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 버전 다운로드가 지원되지 않습니다.

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

메모

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

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

작업 버전 0.213.1을 기준으로 버전 사양은 pypy2.x 또는 pypy3.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 x86 또는 x64합니다. tool files 압축을 푼 Python 버전 파일이어야 합니다. {platform}.complete x86.complete 또는 x64.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추가 구성이 필요합니다. 가능하면 전체 설치 관리자 사용하여 pip호환되는 Python 설치를 가져오는 것이 좋습니다.

요구 사항

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