搭配 設定和使用 pip CodeArtifact - CodeArtifact

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

搭配 設定和使用 pip CodeArtifact

pip 是 Python 套件的套件安裝程式。若要使用 pip 從 CodeArtifact 儲存庫安裝 Python 套件,您必須先使用 CodeArtifact 儲存庫資訊和憑證設定 pip 用戶端。

pip 只能用於安裝 Python 套件。若要發佈 Python 套件,您可以使用雙胞胎 。如需詳細資訊,請參閱搭配 設定和使用雙胞胎 CodeArtifact

使用 login命令設定 pip

首先,設定您的 AWS 憑證以搭配 使用 AWS CLI,如 中所述入門 CodeArtifact。然後,使用 CodeArtifact login命令來擷取憑證並使用pip它們進行設定。

注意

如果您正在存取您擁有網域中的儲存庫,則不需要包含 --domain-owner。如需詳細資訊,請參閱跨帳戶網域

若要設定 pip,請執行下列命令。

aws codeartifact login --tool pip --domain my_domain --domain-owner 111122223333 --repository my_repo

login CodeArtifact 使用 AWS 憑證擷取授權權杖。login 命令會編輯 ~/.config/pip/pip.confindex-url將 設定為 --repository選項指定的儲存庫, CodeArtifact 以設定 pip 搭配 使用。

呼叫後的預設授權期間login為 12 小時,login必須呼叫 以定期重新整理權杖。如需使用 login命令建立的授權權杖的詳細資訊,請參閱 使用 login命令建立的權杖

設定不含登入命令的 pip

如果您無法使用 login命令來設定 pip,則可以使用 pip config

  1. 使用 AWS CLI 來擷取新的授權權杖。

    注意

    如果您存取您擁有網域中的儲存庫,則不需要包含 --domain-owner。如需詳細資訊,請參閱跨帳戶網域

    CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain my_domain --domain-owner 111122223333 --query authorizationToken --output text`
  2. 使用 pip config 設定 CodeArtifact 登錄檔URL和憑證。下列命令只會更新目前的環境組態檔案。若要更新全系統組態檔案,請將 取代siteglobal

    pip config set site.index-url https://aws:$CODEARTIFACT_AUTH_TOKEN@my_domain-111122223333.d.codeartifact.region.amazonaws.com/pypi/my_repo/simple/
    注意

    若要使用雙堆疊端點,請使用 codeartifact.region.on.aws端點。

重要

登錄URL檔必須以正斜線 (/) 結尾。否則,您無法連線至儲存庫。

範例 pip 組態檔案

以下是設定 CodeArtifact 登錄檔URL和憑證後pip.conf的檔案範例。

[global] index-url = https://aws:eyJ2ZX...@my_domain-111122223333.d.codeartifact.us-west-2.amazonaws.com/pypi/my_repo/simple/

執行 pip

若要執行pip命令,您必須pip使用 設定 CodeArtifact。如需詳細資訊,請參閱下列文件。

  1. 請依照 使用 設定 AWS CodeArtifact區段中的步驟來設定 AWS 您的帳戶、工具和許可。

  2. twine 請依照 中的步驟進行設定搭配 設定和使用雙胞胎 CodeArtifact

假設您的儲存庫或其中一個上游儲存庫中存在套件,您可以使用 安裝套件pip install。例如,使用下列命令來安裝requests套件。

pip install requests

使用 -i選項暫時還原為從 https://pypi.org 安裝套件,而非您的 CodeArtifact 儲存庫。

pip install -i https://pypi.org/simple requests