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
.
指定要在組織中以身分驗證的摘要。
onlyAddExtraIndex
- 請勿設定主要索引 URL
boolean
. 預設值:false
。
如果此工作設定 true
為 ,則不會將摘要設定為主要索引 URL。 所有設定的摘要/端點都會設定為額外的索引 URL。
工作控制項選項
除了工作輸入之外,所有工作都有控制選項。 如需詳細資訊,請參閱 控制選項和一般工作屬性。
輸出變數
無。
備註
提供用來安裝 Python 散發套件之 pip
用戶端的驗證。
我管線中的何時應該執行這項工作?
此工作必須先執行,才能使用 pip 將 Python 散發套件下載至已驗證的套件來源,例如 Azure Artifacts。 沒有其他排序需求。 此工作的多個調用不會堆疊認證。 每一次執行工作都會清除任何先前儲存的認證。
我的代理程式位於 Web Proxy 後方。 PipAuthenticate 是否會設定 pip 以使用我的 Proxy?
不會。 雖然此工作本身會在 代理程式設定為使用的 Web Proxy後方運作,但不會將 pip 設定為使用 Proxy。
若要這樣做,您可以:
- 設定環境變數
http_proxy
,https_proxy
並選擇性地no_proxy
設定您的 Proxy 設定。 如需詳細資訊 ,請參閱 Pip 官方指導方針 。 這些是常用的變數,其他非 Python 工具 (,例如 curl) 也可以使用。警告
http_proxy
和no_proxy
變數在 Linux 和 Mac 作業系統上區分大小寫,而且必須小寫。 嘗試使用 Azure Pipelines 變數來設定環境變數將無法運作,因為它會轉換成大寫。 相反地,在自我裝載代理程式的電腦上設定環境變數,然後重新開機代理程式。 - 使用
proxy
金鑰將 Proxy 設定新增至pip 設定檔。 --proxy
使用命令列選項,以格式[user:passwd@]proxy.server:port
指定 Proxy。
我的管線需要存取不同專案中的摘要
如果管線在裝載摘要的專案不同的專案中執行,您必須設定其他專案,以授與建置服務的讀取/寫入權限。 如需詳細資訊 ,請參閱 Azure Pipelines 中的套件許可權 。
範例
從 Azure Artifacts 摘要下載 Python 散發套件,而不需諮詢官方 Python 登錄
在此範例中,我們會設定從私人 Azure Artifacts 摘要下載的驗證。 驗證工作會建立環境變數,以及 PIP_EXTRA_INDEX_URL
下載散發套件所需的環境變數 PIP_INDEX_URL
。 工作會使用提供的 Artifacts 摘要所產生的驗證認證來設定變數。 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 ,請將 設定 onlyAddExtraIndex
為 true
。
- 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
規格需求
需求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
在 上執行 | Agent、DeploymentGroup |
要求 | 無 |
Capabilities | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任意 |
可設定變數 | 任意 |
代理程式版本 | 2.144.0 或更新版本 |
工作類別 | 套件 |
需求 | 描述 |
---|---|
管線類型 | YAML、傳統組建、傳統版本 |
在 上執行 | Agent、DeploymentGroup |
要求 | 無 |
Capabilities | 此工作不符合作業中後續工作的任何需求。 |
命令限制 | 任意 |
可設定變數 | 任意 |
代理程式版本 | 2.120.0 或更新版本 |
工作類別 | 套件 |
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應