程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

使用 Python 版本任務

編輯:Python

Azure DevOps Services

使用此任務選擇要在代理上運行的 Python 版本,並選擇性地將其添加到 PATH。

需求

先決條件

  • 安裝了並行版本的 Microsoft 托管代理 ,或者配置了 Agent.ToolsDirectory 的自承載代理 (請參閱 常見問題解答) 。

如果在 Agent.ToolsDirectory 中找不到 Python 版本,此任務將失敗。 可在 Microsoft 托管的代理上找到可用的 Python 版本。

 備注

x86 和 x64 版本的 Python 在 Microsoft 托管的 Windows 代理上可用,但在 Linux 或 macOS 代理上不可用。

YAML 代碼片段

YAML復制

# Use Python version
# Use the specified version of Python from the tool cache, optionally adding it to the PATH
- task: [email protected]
inputs:
#versionSpec: '3.x'
#addToPath: true
#architecture: 'x64' # Options: x86, x64 (this argument applies only on Windows agents)

參數

參數描述versionSpec
版本規范(所需的) 版本范圍或要使用的 Python 版本的確切版本。
默認值:303.xaddToPath
添加到 PATH(必需) 是否將檢索到的 Python 版本追加到 PATH 環境變量,使其在後續任務或腳本中可用,而無需使用輸出變量。
默認值:30truearchitecture
體系結構(需要) Python 解釋器的目標體系結構 (x86、x64) 。 x86 僅在 Windows 上受支持。
默認值:30x64

從任務的 0.150 版起,版本規格也將接受 pypy2 或 pypy3接受。

如果任務成功完成,則任務的輸出變量將包含 Python 安裝的目錄:

備注

使用“添加到 PATH”運行此任務後, python 後續腳本中的命令將用於與版本規格和體系結構匹配的最高可用版本的解釋器。

在 Microsoft 托管的 Ubuntu 和 macOS 映像上安裝的 Python 版本遵循 PEP 394 中定義的類似 Unix 的系統符號鏈接結構。 例如,對於 Python 3.7, python3.7 是實際解釋器。 python3 符號鏈接到該解釋器,並且 python 是該符號鏈接的符號鏈接。

在 Microsoft 托管的 Windows 映像上,解釋器只是。python

對於 Microsoft 托管的代理,x86 僅在 Windows 上受支持。 這是因為 Windows 可以使用 WoW64 子系統為 x86 體系結構運行編譯的可執行文件。 托管 Ubuntu 和托管 macOS 運行 64 位操作系統,僅運行 64 位 Python。

開源

此任務是 GitHub 上的開源任務。 歡迎提供反饋和建議。

常見問題解答

在哪裡可以了解有關工具安裝程序的詳細信息?

有關工具安裝程序和示例的說明,請參閱 工具安裝程序。

需要使用代理嗎?

至少需要一個代理才能運行生成或發布。

我遇到了問題。 如何對其進行故障排除?

請查看排查生成和發布問題。

我無法選擇默認代理池,無法將生成或發布排隊。 如何修復此問題?

請查看代理池。

我的 NuGet 推送任務失敗,出現“錯誤: 無法獲取本地頒發者證書”錯誤。 如何解決此問題?

可通過添加受信任的根證書來解決此問題。 可將環境變量 NODE_EXTRA_CA_CERTS=file 添加到生成代理,也可在管道中添加任務變量 NODE.EXTRA.CA.CERTS=file。 有關此變量的更多詳細信息,請參閱 Node.js 文檔。 有關在管道中設置變量的說明,請參閱在管道中設置變量。

如何配置自承載代理以使用此任務?

所需的 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 為 0 字節文件, x86.complete 如下所示, x64.complete 並且只是表示工具已正確安裝在緩存中。

作為一個完整的具體示例,下面是 Python 3.6.4 for x64 的完整下載在工具緩存中的外觀:

復制

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

有關工具緩存的更多詳細信息,請參閱 此處。

為了使腳本在 Microsoft 托管的代理上正常工作,我們建議遵循類似 Unix 的系統上 PEP 394 的符號鏈接結構。

另請注意,Python 的可嵌入 ZIP 版本需要 為已安裝的模塊(包括 pip)進行額外配置。 如果可能,我們建議使用 完整的安裝程序 來獲取 pip兼容的 Python 安裝。


  • Python 腳本任務 - Azure Pipelines

    在生成或發布管道中運行 Python 腳本

  • Python Pip 身份驗證 - Azure Pipelines

    使用 pip 設置身份驗證,以便可以在管道中執行 pip 命令。

  • Python Twine 上傳身份驗證 - Azure Pipelines

    設置 twine 到 Python 源的身份驗證,以便可以在管道中發布 Python 包。

  • 發布 Python 包 - Azure Pipelines

    如何使用 Azure Pipelines 發布 Python 包

  • 從 CLI 發布和使用包 - Azure Artifacts

    通過命令行界面發布和使用 Python 包

  • 生成和測試 Python 應用 - Azure Pipelines

    使用 Azure Pipelines自動生成和測試 Python 應用

  • Bash 任務 - Azure Pipelines

    在 macOS、Linux 或 Windows 上運行 Bash 腳本

  • Maven 對任務 (運行程序進行身份驗證) - Azure Pipelines

    為源和Azure Artifacts Maven 存儲庫提供憑據。

顯示較少選項

 


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved