PipAuthenticate@1 - Python pip 인증 v1 작업
이 작업을 사용하여 Python 배포를 설치하는 클라이언트에 pip
대한 인증을 제공합니다.
Syntax
# Python pip authenticate v1
# Authentication task for the pip client used for installing Python distributions.
- task: PipAuthenticate@1
inputs:
# Feeds and Authentication
#artifactFeeds: # string. My feeds (select below).
#pythonDownloadServiceConnections: # string. Feeds from external organizations.
#onlyAddExtraIndex: false # boolean. Don't set primary index URL. Default: false.
입력
artifactFeeds
- 내 피드(아래 선택)
string
.
조직에 있는 것처럼 인증할 피드를 지정합니다.
pythonDownloadServiceConnections
- 외부 조직의 피드
string
.
pip를 사용하여 인증할 외부 조직의 pip 서비스 연결 이름 목록을 쉼표로 구분하여 지정합니다.
onlyAddExtraIndex
- 기본 인덱스 URL을 설정하지 않음
boolean
. 기본값은 false
입니다.
이 작업을 로 true
설정하면 피드가 기본 인덱스 URL로 설정되지 않습니다. 구성된 모든 피드/엔드포인트는 추가 인덱스 URL로 설정됩니다.
작업 제어 옵션
모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.
출력 변수
없음
설명
Python 배포를 pip
설치하는 데 사용되는 클라이언트에 대한 인증을 제공합니다.
파이프라인에서 이 작업을 실행해야 하는 경우는 언제인가요?
이 작업은 pip를 사용하여 Azure Artifacts와 같은 인증된 패키지 원본에 Python 배포를 다운로드하기 전에 실행해야 합니다. 다른 주문 요구 사항은 없습니다. 이 작업의 여러 호출은 자격 증명을 스택하지 않습니다. 작업을 실행할 때마다 이전에 저장된 자격 증명이 지워집니다.
내 에이전트가 웹 프록시 뒤에 있습니다. PipAuthenticate에서 내 프록시를 사용하도록 pip를 설정하나요?
아니요. 이 작업 자체는 에이전트가 사용하도록 구성된 웹 프록시 뒤에서 작동하지만 프록시를 사용하도록 pip를 구성하지는 않습니다.
이렇게 하려면 다음을 수행할 수 있습니다.
- 환경 변수 를
http_proxy
https_proxy
설정하고 필요에 따라no_proxy
프록시 설정으로 설정합니다. 자세한 내용은 Pip 공식 지침을 참조하세요. 이러한 변수는 일반적으로 사용되는 변수이며, 다른 비 Python 도구(예: curl)도 사용할 수 있습니다.주의
및
no_proxy
변수는http_proxy
Linux 및 Mac 운영 체제에서 대/소문자를 구분하며 소문자여야 합니다. Azure Pipelines 변수를 사용하여 환경 변수를 설정하려고 하면 대문자로 변환되므로 작동하지 않습니다. 대신 자체 호스팅 에이전트의 컴퓨터에서 환경 변수를 설정하고 에이전트를 다시 시작합니다. - 키를 사용하여
proxy
pip 구성 파일 파일에 프록시 설정을 추가합니다. --proxy
명령줄 옵션을 사용하여 형식[user:passwd@]proxy.server:port
의 프록시를 지정합니다.
내 파이프라인이 다른 프로젝트의 피드에 액세스해야 합니다.
파이프라인이 피드를 호스트하는 프로젝트와 다른 프로젝트에서 실행되는 경우 빌드 서비스에 대한 읽기/쓰기 액세스 권한을 부여하도록 다른 프로젝트를 설정해야 합니다. 자세한 내용은 Azure Pipelines의 패키지 권한을 참조하세요.
예제
공식 Python 레지스트리를 참조하지 않고 Azure Artifacts 피드에서 Python 배포판 다운로드
이 예제에서는 프라이빗 Azure Artifacts 피드에서 다운로드하기 위한 인증을 설정합니다. 인증 작업은 배포를 PIP_INDEX_URL
PIP_EXTRA_INDEX_URL
다운로드하는 데 필요한 환경 변수를 만듭니다. 태스크는 제공된 아티팩트 피드에 대해 태스크에서 생성하는 인증 자격 증명으로 변수를 설정합니다. HelloTestPackage
는 또는 myTestFeed2
에 myTestFeed1
있어야 합니다. 그렇지 않으면 설치가 실패합니다.
파이프라인이 실행되는 위치와 다른 프로젝트에 있는 프로젝트 범위 피드의 경우 프로젝트와 피드에 파이프라인의 빌드 서비스에 대한 액세스 권한을 수동으로 부여해야 합니다.
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
# Provide list of feed names which you want to authenticate.
# Project scoped feeds must include the project name in addition to the feed name.
artifactFeeds: 'project1/myTestFeed1, myTestFeed2'
# Use command line tool to 'pip install'.
- script: |
pip install HelloTestPackage
공식 Python 레지스트리를 참조한 다음, Azure Artifacts 피드에서 Python 배포판 다운로드
이 예제에서는 프라이빗 Azure Artifacts 피드에서 다운로드하기 위한 인증을 설정하지만 먼저 pypi 를 참조합니다. 인증 작업은 배포를 다운로드하는 데 필요한 인증 자격 증명을 포함하는 환경 변수 PIP_EXTRA_INDEX_URL
를 만듭니다. HelloTestPackage
는 pypi에 없는 경우에만 인증된 피드에서 다운로드됩니다.
파이프라인이 실행되는 위치와 다른 프로젝트에 있는 프로젝트 범위 피드의 경우 프로젝트와 피드에 파이프라인의 빌드 서비스에 대한 액세스 권한을 수동으로 부여해야 합니다.
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
# Provide list of feed names which you want to authenticate.
# Project scoped feeds must include the project name in addition to the feed name.
artifactFeeds: 'project1/myTestFeed1, myTestFeed2'
# Setting this variable to "true" will force pip to get distributions from official python registry first and fallback to feeds mentioned above if distributions are not found there.
onlyAddExtraIndex: true
# Use command line tool to 'pip install'.
- script: |
pip install HelloTestPackage
다른 프라이빗 Python 서버에서 Python 배포 다운로드
이 예제에서는 외부 Python 배포 서버에서 다운로드하기 위한 인증을 설정합니다. 외부 서비스에 대한 pip 서비스 연결 항목을 만듭니다. 인증 작업은 서비스 연결을 사용하여 배포를 다운로드하는 데 필요한 인증 자격 증명을 포함하는 환경 변수 PIP_INDEX_URL
를 만듭니다. HelloTestPackage
는 서비스 연결에 pypitest
있어야 합니다. 그렇지 않으면 설치가 실패합니다. 먼저 pypi를 참조하려면 를 로 true
설정합니다onlyAddExtraIndex
.
- task: PipAuthenticate@1
displayName: 'Pip Authenticate'
inputs:
# In this case, name of the service connection is "pypitest".
pythonDownloadServiceConnections: pypitest
# Use command line tool to 'pip install'.
- script: |
pip install HelloTestPackage
요구 사항
요구 사항 | Description |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
실행 중 | 에이전트, DeploymentGroup |
요청 | 없음 |
Capabilities | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 사항 | 모두 |
설정 가능한 변수 | 모두 |
에이전트 버전 | 2.144.0 이상 |
작업 범주 | 패키지 |
요구 사항 | Description |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
실행 중 | 에이전트, DeploymentGroup |
요청 | 없음 |
Capabilities | 이 작업은 작업의 후속 작업에 대한 요구 사항을 충족하지 않습니다. |
명령 제한 사항 | 모두 |
설정 가능한 변수 | 모두 |
에이전트 버전 | 2.120.0 이상 |
작업 범주 | 패키지 |