共用方式為


使用 Python 套件索引中的套件 (PyPI)

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019

開發人員可以使用 Azure Artifacts,從 Azure Artifacts 摘要和外部登錄發佈及取用套件,例如 pypi.org。本文將引導您設定專案,並使用命令行有效率地從 PyPI 取用 Python 套件。

在本文中,您將學會如何:

  • 啟用摘要的上游來源
  • 將 PyPI 新增為上游來源
  • 設定專案
  • 從 Python 套件索引安裝套件

必要條件

啟用上游來源

如果您尚未建立摘要,請遵循下列步驟來建立新的摘要。 請務必核取上游來源方塊,以啟用上游來源。 如果您已經有摘要,請跳至 下一個步驟 ,將 PyPI 新增為上游來源。

  1. 登入您的 Azure DevOps 組織,然後流覽至您的專案。

  2. 選取 [ 成品],然後選取 [ 建立摘要 ] 以建立新的摘要。

  3. 輸入摘要的描述性 名稱 ,並定義其 可見度 (指出誰可以在摘要內檢視套件)。 指定 摘要的範圍 ,然後核取 [ 上游來源] 複選框,以包含來自公用登錄的套件。

  4. 完成後,選取 [建立]

    A screenshot showing how to create a need feed.

新增 PyPI 上游

如果您在建立摘要期間選取上游來源複選框,則 PyPI 應該會自動納入為上游來源。 如果沒有,您可以依照下列步驟手動新增它:

  1. 登入您的 Azure DevOps 組織,然後流覽至您的專案。

  2. 選取 [成品],然後選取齒輪圖示gear icon以流覽至 [摘要] 設定。

  3. 選取 [上游來源],然後選取 [ 新增上游 ] 以新增上游來源。

  4. 選取 [公用來源],然後從下拉功能表中選取 [PyPI]。https://pypi.org/

  5. 完成 時選取 [儲存 ],然後從右上角選取 [再儲存 一次],以儲存變更。

使用您的摘要進行驗證

  1. 請確定您已下載 Python,然後執行下列命令來升級 Python 套件管理員:

    python -m pip install --upgrade pip
    
  2. 執行下列命令以安裝 Azure Artifacts Keyring:

    pip install keyring artifacts-keyring
    
  3. 使用封裝>讀取範圍建立個人存取令牌,以向 Azure DevOps 進行驗證。 第一次連線到 Azure DevOps 時,您必須在出現提示時輸入認證。 在指定的欄位中提供您的使用者名稱(任何字串)和個人存取令牌。 這些認證會在本機快取,並在下次使用服務時自動用來登入您。

  4. 瀏覽至您的項目資料夾,然後執行下列命令來建立新的虛擬環境:

    python -m venv <VIRTUAL_ENVIRONMENT_NAME>
    
  5. 在虛擬環境中建立新的 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

  1. 在命令提示字元視窗中,流覽至您的專案資料夾,然後執行下列命令來啟用虛擬環境。 將佔位元取代為您稍早建立的虛擬環境名稱:

    <YOUR_VIRTUAL_ENVIRONMENT_NAME>/Scripts/Activate.ps1
    
  2. 執行下列命令來檢查虛擬環境中安裝的套件:

    pip list
    
  3. 執行下列命令以安裝 Flask

    pip install -U Flask
    
  4. 安裝套件之後,Azure Artifacts 會將此套件的複本儲存至您的摘要。 您的套件應該可在您的摘要中使用,如下列螢幕快照所示。

    A screenshot showing packages installed from PyPI upstream.