使用 Python 套件索引中的套件 (PyPI)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
開發人員可以使用 Azure Artifacts,從 Azure Artifacts 摘要和外部登錄發佈及取用套件,例如 PyPI.org。藉由啟用上游來源,您可以使用單一摘要來簡化套件管理,以管理您自己的套件,以及從公用登錄取用的套件。 啟用之後,Azure Artifacts 會自動從上游來源儲存共同作業者或更新版本所安裝之任何套件的複本。 本文將引導您設定專案,並使用命令行有效率地從 PyPI 取用 Python 套件。
在本文中,您將學會如何:
- 啟用摘要的上游來源
- 將 PyPI 新增為上游來源
- 設定專案
- 從 Python 套件索引安裝套件
必要條件
建立新的摘要時啟用上游來源
如果您尚未建立摘要,請遵循下列步驟來建立新的摘要。 請務必核取上游來源的方塊,以啟用上游來源。 如果您已經有摘要,請跳至 下一個步驟 ,將 PyPI 新增為上游來源。
登入您的 Azure DevOps 組織,然後瀏覽至您的專案。
選取 [ 成品],然後選取 [ 建立摘要 ] 以建立新的摘要。
輸入摘要的描述性 名稱 ,並定義其 可見度 (指出誰可以在摘要內檢視套件)。 指定 摘要的範圍 ,然後核取 [ 上游來源] 複選框,以包含來自公用登錄的套件。
完成後,選取 [建立]。
將 PyPI 新增為新的上游來源
如果您在建立摘要期間選取上游來源複選框,則 PyPI 應該會自動納入為上游來源。 如果沒有,您可以依照下列步驟手動新增它:
登入您的 Azure DevOps 組織,然後瀏覽至您的專案。
選取 [成品],然後選取齒輪圖示以流覽至 [摘要設定]。
選取 [上游來源],然後選取 [ 新增上游 ] 以新增上游來源。
選取 [公用來源],然後從下拉功能表中選取 [PyPI]。https://pypi.org/
完成 時選取 [新增 ],然後從右上角選取 [ 儲存 ] 以儲存變更。
使用您的摘要進行驗證
請確定您已下載 Python,然後執行下列命令來升級 Python 套件管理員:
python -m pip install --upgrade pip
執行下列命令以安裝 Azure Artifacts Keyring:
pip install keyring artifacts-keyring
使用封裝>讀取範圍建立個人存取令牌,以向 Azure DevOps 進行驗證。 第一次連線到 Azure DevOps 時,您必須在出現提示時輸入認證。 在指定的欄位中提供您的使用者名稱(任何字串)和個人存取令牌。 這些認證會在本機快取,並在下次使用服務時自動用來登入您。
瀏覽至您的項目資料夾,然後執行下列命令來建立新的虛擬環境:
python -m venv <VIRTUAL_ENVIRONMENT_NAME>
在虛擬環境中建立新的 pip.ini 檔案 (Windows) 或 pip.conf 檔案 (Mac/Linux),然後將下列代碼段貼到您的檔案中。 請務必將佔位元取代為適當的資訊,並小心不要將此檔案認可至公用存放庫,因為它包含您的個人存取令牌。
專案範圍的摘要:
[global] extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/pypi/simple/
組織範圍的摘要:
[global] extra-index-url=https://<FEED_NAME>:<YOUR_PERSONAL_ACCESS_TOKEN>@pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/pypi/simple/
從 PyPI 安裝套件
既然我們已將專案設定為向摘要進行驗證,我們可以開始從 PyPI 上游安裝套件。 在這裡範例中,我們將安裝 Flask
:
在命令提示字元視窗中,流覽至您的專案資料夾,然後執行下列命令來啟用虛擬環境。 將佔位元取代為您稍早建立的虛擬環境名稱:
<YOUR_VIRTUAL_ENVIRONMENT_NAME>/Scripts/Activate.ps1
執行下列命令來檢查虛擬環境中安裝的套件:
pip list
執行下列命令以安裝 Flask。
pip install -U Flask
安裝套件之後,Azure Artifacts 會將此套件的複本儲存至您的摘要。 您的套件應該可在您的摘要中使用,如下列螢幕快照所示。