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.
Vous pouvez utiliser des outils CLI tels que nuget
et dotnet
pour publier et consommer des packages à partir de CodeArtifact. Ce document fournit des informations sur la configuration des outils CLI et leur utilisation pour publier ou consommer des packages.
Rubriques
Configuration de la CLI nuget ou dotnet
Vous pouvez configurer la CLI nuget ou dotnet avec le fournisseur CodeArtifact NuGet d'informations d'identification, avec ou manuellement AWS CLI. La configuration NuGet avec le fournisseur d'informations d'identification est vivement recommandée pour une configuration simplifiée et une authentification continue.
Méthode 1 : Configuration avec le fournisseur CodeArtifact NuGet d'informations d'identification
Le fournisseur CodeArtifact NuGet d'informations d'identification simplifie l'authentification et la configuration à l' CodeArtifact aide des outils NuGet CLI. CodeArtifact les jetons d'authentification sont valides pendant 12 heures au maximum. Pour éviter d'avoir à actualiser manuellement le jeton lors de l'utilisation de la CLI nuget ou dotnet, le fournisseur d'informations d'identification récupère régulièrement un nouveau jeton avant l'expiration du jeton actuel.
Important
Pour utiliser le fournisseur d'informations d'identification, assurez-vous que toutes les AWS CodeArtifact informations d'identification existantes sont effacées de votre nuget.config
fichier et qu'elles ont peut-être été ajoutées manuellement ou en exécutant aws codeartifact login
la configuration NuGet précédente.
Installation et configuration du fournisseur d' CodeArtifact NuGet informations d'identification
Téléchargez la dernière version d'AWS. CodeArtifact. NuGet. CredentialProvider outil de NuGet .org
avec la dotnet
commande suivante.dotnet tool install -g AWS.CodeArtifact.NuGet.CredentialProvider
-
Utilisez la
codeartifact-creds install
commande pour copier le fournisseur d'informations d'identification dans le dossier NuGet des plugins.dotnet codeartifact-creds install
-
(Facultatif) : Définissez le AWS profil que vous souhaitez utiliser avec le fournisseur d'informations d'identification. S'il n'est pas défini, le fournisseur d'informations d'identification utilisera le profil par défaut. Pour plus d'informations sur les AWS CLI profils, consultez la section Profils nommés.
dotnet codeartifact-creds configure set profile
profile_name
Après avoir créé un référentiel et configuré le fournisseur d'informations d'identification, vous pouvez utiliser les outils nuget
ou dotnet
CLI pour installer et publier des packages. Pour plus d’informations, consultez Consommez NuGet des colis provenant de CodeArtifact et Publiez NuGet des packages sur CodeArtifact.
Méthode 2 : configurer nuget ou dotnet avec la commande de connexion
La codeartifact login
commande du AWS CLI ajoute un point de terminaison du référentiel et un jeton d'autorisation à votre fichier NuGet de configuration, permettant à Nuget ou Dotnet de se connecter à votre CodeArtifact référentiel. Cela modifiera la NuGet configuration au niveau utilisateur qui se trouve dans %appdata%\NuGet\NuGet.Config
pour Windows ~/.config/NuGet/NuGet.Config
et/ou ~/.nuget/NuGet/NuGet.Config
pour Mac/Linux. Pour plus d'informations sur les NuGet configurations, consultez la section NuGet Configurations courantes
Configurez nuget ou dotnet avec la commande login
-
Configurez vos AWS informations d'identification à utiliser avec le AWS CLI, comme décrit dansCommencer avec CodeArtifact.
-
Assurez-vous que l'outil NuGet CLI (
nuget
oudotnet
) a été correctement installé et configuré. Pour obtenir des instructions, consultez la documentation de Nugetou Dotnet . -
Utilisez la CodeArtifact
login
commande pour récupérer les informations d'identification à utiliser avec NuGet.Note
Si vous accédez à un référentiel dans un domaine qui vous appartient, vous n'avez pas besoin de l'inclure
--domain-owner
. Pour de plus amples informations, veuillez consulter Domaines multi-comptes.Important
Utilisateurs de Linux et de macOS : le chiffrement n'étant pas pris en charge sur les plateformes autres que Windows, les informations d'identification que vous avez récupérées seront stockées sous forme de texte brut dans votre fichier de configuration.
aws codeartifact login --tool
dotnet
--domainmy_domain
--domain-owner111122223333
--repositorymy_repo
La commande de connexion permettra de :
-
Récupérez un jeton d'autorisation à CodeArtifact l'aide de vos AWS informations d'identification.
-
Mettez à jour votre NuGet configuration au niveau utilisateur avec une nouvelle entrée pour la source de votre NuGet package. La source qui pointe vers le point de terminaison de votre CodeArtifact dépôt sera appelée
.domain_name/repo_name
La période d'autorisation par défaut après l'appel login
est de 12 heures et login
doit être appelée pour actualiser régulièrement le jeton. Pour plus d'informations sur le jeton d'autorisation créé avec la login
commande, consultezJetons créés avec la login commande.
Après avoir créé un référentiel et configuré l'authentification, vous pouvez utiliser les clients nuget
dotnet
, ou msbuild
CLI pour installer et publier des packages. Pour plus d’informations, consultez Consommez NuGet des colis provenant de CodeArtifact et Publiez NuGet des packages sur CodeArtifact.
Méthode 3 : configurer nuget ou dotnet sans la commande de connexion
Pour la configuration manuelle, vous devez ajouter un point de terminaison de référentiel et un jeton d'autorisation à votre fichier de NuGet configuration pour permettre à nuget ou dotnet de se connecter à votre CodeArtifact référentiel.
Configurez manuellement nuget ou dotnet pour vous connecter à votre CodeArtifact dépôt.
-
Déterminez le point de terminaison de votre CodeArtifact dépôt à l'aide de la
get-repository-endpoint
AWS CLI commande.aws codeartifact get-repository-endpoint --domain
my_domain
--domain-owner111122223333
--repositorymy_repo
--format nugetExemple de sortie :
{ "repositoryEndpoint": "https://
my_domain
-111122223333
.d.codeartifact.us-west-2
.amazonaws.com/nuget/my_repo
/" } -
Obtenez un jeton d'autorisation pour vous connecter à votre dépôt depuis votre gestionnaire de packages à l'aide de la
get-authorization-token
AWS CLI commande.aws codeartifact get-authorization-token --domain
my_domain
Exemple de sortie :
{ "authorizationToken": "eyJ2I...viOw", "expiration": 1601616533.0 }
-
Créez l'URL complète du point de terminaison du référentiel en l'ajoutant
/v3/index.json
à l'URL renvoyéeget-repository-endpoint
à l'étape 3. Configurez nuget ou dotnet pour utiliser le point de terminaison du référentiel de l'étape 1 et le jeton d'autorisation de l'étape 2.
Note
L'URL source doit se terminer par
/v3/index.json
pour que nuget ou dotnet se connecte correctement à un CodeArtifact dépôt.Utilisateurs de Linux et de macOS : le chiffrement n'étant pas pris en charge sur les plateformes autres que Windows, vous devez ajouter l'
--store-password-in-clear-text
indicateur à la commande suivante. Notez que cela enregistrera votre mot de passe sous forme de texte brut dans votre fichier de configuration.dotnet nuget add source https://
my_domain
-111122223333
.d.codeartifact.us-west-2
.amazonaws.com/nuget/my_repo
/v3/index.json --namepackageSourceName
--passwordeyJ2I...viOw
--username awsNote
Pour mettre à jour une source existante, utilisez la
dotnet nuget update source
commande.Exemple de sortie :
Package source with Name:
domain_name/repo_name
added successfully.Note
Pour utiliser un point de terminaison à double pile, utilisez le
codeartifact.
point de terminaison.region
.on.aws
Consommez NuGet des colis provenant de CodeArtifact
Une fois que vous avez configuré NuGet avec CodeArtifact, vous pouvez utiliser les NuGet packages stockés dans votre CodeArtifact référentiel ou dans l'un de ses référentiels en amont.
Pour utiliser une version de package à partir d'un CodeArtifact référentiel ou de l'un de ses référentiels en amont avec nuget
oudotnet
, exécutez la commande suivante en remplaçant par packageName
le nom du package que vous souhaitez consommer et packageSourceName
par le nom de la source de votre CodeArtifact référentiel dans votre fichier de NuGet configuration. Si vous avez utilisé la login
commande pour configurer votre NuGet configuration, le nom de la source estdomain_name/repo_name
.
Note
Lorsqu'un package est demandé, le NuGet client met en cache les versions de ce package qui existent. En raison de ce comportement, l'installation d'un package précédemment demandé avant que la version souhaitée ne soit disponible peut échouer. Pour éviter cet échec et installer correctement un package existant, vous pouvez soit vider le NuGet cache avant une installation avec nuget locals all --clear
oudotnet nuget locals all --clear
, soit éviter d'utiliser le cache pendant restore
les commandes install
et en fournissant l'-NoCache
option pour nuget
ou l'--no-cache
option pourdotnet
.
dotnet add package
packageName
--sourcepackageSourceName
Pour installer une version spécifique d'un package
dotnet add package
packageName
--version1.0.0
--sourcepackageSourceName
Consultez Gérer les packages à l'aide de la CLI nuget.exe
Consommez NuGet des packages provenant de NuGet .org
Vous pouvez utiliser des NuGet packages provenant de NuGet.org
Publiez NuGet des packages sur CodeArtifact
Une fois que vous avez configuré NuGet avec CodeArtifact, vous pouvez utiliser nuget
ou dotnet
publier des versions de package dans CodeArtifact des référentiels.
Pour transférer une version de package vers un CodeArtifact référentiel, exécutez la commande suivante en indiquant le chemin complet de votre .nupkg
fichier et le nom de la source de votre CodeArtifact référentiel dans votre fichier NuGet de configuration. Si vous avez utilisé la login
commande pour configurer votre NuGet configuration, le nom de la source estdomain_name/repo_name
.
Note
Vous pouvez créer un NuGet package si vous n'en avez pas à publier. Pour plus d'informations, consultez la section Flux de travail de création de packages
dotnet nuget push
path/to/nupkg/SamplePackage.1.0.0.nupkg
--sourcepackageSourceName
CodeArtifact NuGet Référence du fournisseur d'informations d'identification
Le fournisseur CodeArtifact NuGet d'informations d'identification facilite la configuration et l'authentification NuGet auprès de vos CodeArtifact référentiels.
CodeArtifact NuGet Commandes du fournisseur d'informations d'identification
Cette section inclut la liste des commandes pour le fournisseur CodeArtifact NuGet d'informations d'identification. Ces commandes doivent être préfixées par un préfixe, dotnet codeartifact-creds
comme dans l'exemple suivant.
dotnet codeartifact-creds
command
configure set profile
: Configure le fournisseur d'informations d'identification pour qu'il utilise le profil fourni AWS .profile
configure unset profile
: Supprime le profil configuré s'il est défini.install
: copie le fournisseur d'informations d'identificationplugins
dans le dossier.install --profile
: copie le fournisseur d'informations d'identificationprofile
plugins
dans le dossier et le configure pour utiliser le profil fourni AWS .uninstall
: désinstalle le fournisseur d'informations d'identification. Cela ne supprime pas les modifications apportées au fichier de configuration.uninstall --delete-configuration
: désinstalle le fournisseur d'informations d'identification et supprime toutes les modifications apportées au fichier de configuration.
CodeArtifact NuGet Journaux du fournisseur d'informations d'identification
Pour activer la journalisation pour le fournisseur CodeArtifact NuGet d'informations d'identification, vous devez définir le fichier journal dans votre environnement. Les journaux du fournisseur d'informations d'identification contiennent des informations de débogage utiles, telles que :
-
Le AWS profil utilisé pour établir des connexions
-
Toute erreur d'authentification
-
Si le point de terminaison fourni n'est pas une CodeArtifact URL
Définissez le fichier journal du fournisseur d'informations d' CodeArtifact NuGet identification
export AWS_CODEARTIFACT_NUGET_LOGFILE=
/path/to/file
Une fois le fichier journal défini, toute codeartifact-creds
commande ajoutera sa sortie de journal au contenu de ce fichier.
CodeArtifact NuGet Versions du fournisseur d'informations d'identification
Le tableau suivant contient des informations sur l'historique des versions et des liens de téléchargement pour le fournisseur CodeArtifact NuGet d'informations d'identification.
Version | Modifications | Date de publication | Lien de téléchargement (S3) |
---|---|---|---|
1.0.2 (dernière version) |
Dépendances améliorées |
26/06/2024 |
|
1.0.1 |
Ajout du support pour les profils net5, net6 et SSO |
05/03/2022 |
|
1.0.0 |
Version initiale du fournisseur CodeArtifact NuGet d'informations d'identification |
20/11/2020 |