Configurer et utiliser pip avecCodeArtifact - CodeArtifact

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Configurer et utiliser pip avecCodeArtifact

pépinest le programme d'installation des packages Python. Pour utiliser pip pour installer des packages Python depuis votreCodeArtifactdépôt, vous devez d'abord configurer le client pip avec votreCodeArtifactinformations et informations d'identification du référentiel.

pip ne peut être utilisé que pour installer des packages Python. Pour publier des packages Python, vous pouvez utiliserficelle. Pour plus d'informations, veuillez consulter Configurez et utilisez Twine avecCodeArtifact.

Configurez pip aveclogincommande

Tout d'abord, configurez votreAWSinformations d'identification à utiliser avecAWS CLI, comme décrit dansDémarrage avec CodeArtifact. Ensuite, utilisezCodeArtifact logincommande pour récupérer les informations d'identification et configurerpipavec eux.

Note

Si vous accédez à un dépôt dans un domaine qui vous appartient, il n'est pas nécessaire d'inclure--domain-owner. Pour plus d'informations, veuillez consulter Domaines multi-comptes.

Pour configurer pip, exécutez la commande suivante.

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

loginrécupère un jeton d'autorisation depuisCodeArtifacten utilisant votreAWSinformations d'identification. Leloginla commande configurerapipà utiliser avecCodeArtifacten éditant~/.config/pip/pip.confpour régler leindex-urlvers le référentiel spécifié par--repositoryoption.

La période d'autorisation par défaut après l'appelloginest de 12 heures, etlogindoit être appelé pour actualiser périodiquement le jeton. Pour plus d'informations sur le jeton d'autorisation créé aveclogincommande, voirJetons créés avec la login commande.

Configurer pip sans la commande de connexion

Si vous ne pouvez pas utiliserlogincommande pour configurerpip, vous pouvez utiliserpip config.

  1. Utilisez leAWS CLIpour récupérer un nouveau jeton d'autorisation.

    Note

    Si vous accédez à un dépôt dans un domaine qui vous appartient, il n'est pas nécessaire d'inclure le--domain-owner. Pour plus d'informations, veuillez consulter Domaines multi-comptes.

    CODEARTIFACT_AUTH_TOKEN=`aws codeartifact get-authorization-token --domain my_domain --domain-owner 111122223333 --query authorizationToken --output text`
  2. Utiliserpip configpour régler leCodeArtifactURL du registre et informations d'identification. La commande suivante ne mettra à jour que le fichier de configuration de l'environnement actuel. Pour mettre à jour le fichier de configuration à l'échelle du système, remplacezsiteavecglobal.

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

L'URL du registre doit se terminer par une barre oblique (/). Dans le cas contraire, vous ne pourrez pas vous connecter au référentiel.

Exemple de fichier de configuration pip

Voici un exemple depip.conffichier après avoir défini leCodeArtifactURL du registre et informations d'identification.

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

Exécutez pip

Pour courirpipcommandes, vous devez configurerpipavecCodeArtifact. Pour plus d'informations, consultez la documentation suivante.

  1. Suivez les étapes décrites dans leConfiguration avec AWS CodeArtifactsection pour configurer votreAWScompte, outils et autorisations.

  2. Configureztwineen suivant les étapes décrites dansConfigurez et utilisez Twine avecCodeArtifact.

En supposant qu'un package soit présent dans votre dépôt ou dans l'un de ses référentiels en amont, vous pouvez l'installer avecpip install. Par exemple, utilisez la commande suivante pour installerrequestscolis.

pip install requests

Utilisez le-ioption permettant de revenir temporairement à l'installation de packages à partir dehttps://pypi.orgau lieu de votreCodeArtifactréférentiel.

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