Publier des packages NuGet à partir de la ligne de commande (dotnet)
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Ce guide vous guide tout au long de la configuration de votre projet pour publier des packages NuGet à l’aide de l’interface de ligne de commande dotnet.
Conditions préalables
Produit | Exigences |
---|---|
Azure DevOps | - Une organisation Azure DevOps . - Un projet Azure DevOps . - Un flux Azure Artifacts. - Téléchargez et installez le fournisseur de certificats d'Azure Artifacts . - Téléchargez et installez SDK .NET Core (2.1.400+). |
Se connecter à un flux
Connectez-vous à votre organisation Azure DevOps, puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux dans le menu déroulant.
Sélectionnez Se connecter au flux, puis dotnet dans la section NuGet à gauche.
Créez un fichier nuget.config dans le même dossier que votre csproj ou sln fichier. Copiez l’extrait de code XML suivant et collez-le dans votre nouveau fichier, en remplaçant les espaces réservés par les informations pertinentes :
Flux à l'échelle de l'organisation :
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Aliments pour animaux à l'échelle d'un projet :
<?xml version="1.0" encoding="utf-8"?> <configuration> <packageSources> <clear /> <add key="<FEED_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" /> </packageSources> </configuration>
Connectez-vous à votre serveur Azure DevOps, puis accédez à votre projet.
Sélectionnez Artefacts, puis sélectionnez votre flux.
Sélectionnez Se connecter au flux, puis dotnet dans le volet de navigation de gauche.
Suivez les instructions de la section Configuration du projet pour vous connecter à votre flux.
Remarque
dotnet n’est pas pris en charge dans Azure DevOps Server 2019.
Publier des packages dans un flux dans la même organisation
Exécutez la commande suivante pour publier un package sur votre flux. Remplacez les espaces réservés par les valeurs appropriées :
dotnet nuget push --source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --api-key <ANY_STRING> <PACKAGE_PATH>
Exemple:
dotnet nuget push --source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --api-key AZ bin/MyPackage.5.0.2.nupkg
Remarque
Le api-key
est obligatoire, mais vous pouvez fournir n'importe quelle chaîne comme valeur lors de la publication dans un flux Azure Artifacts.
Publier des packages dans un flux dans une autre organisation
Pour publier vos packages NuGet dans un flux dans une autre organisation Azure DevOps, vous devez d’abord créer un jeton d’accès personnel (PAT) dans l’organisation cible.
Naviguez jusqu'à l'organisation qui héberge le flux cible et créez un jeton d'accès personnel (PAT) avec la portée d'écriture Packaging>Read &.
Remplacez l’espace réservé <PERSONAL_ACCESS_TOKEN> par votre jeton d’accès personnel, puis exécutez la commande suivante pour ajouter votre source de package à votre fichier nuget.config. Assurez-vous que ce fichier est stocké en toute sécurité et qu'il n'est pas enregistré dans le contrôle de source.
dotnet nuget add source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json --name <SOURCE_NAME> --username <USER_NAME> --password <PERSONAL_ACCESS_TOKEN> --configfile <PATH_TO_NUGET_CONFIG_FILE>
Exécutez la commande suivante pour publier votre package :
dotnet nuget push --source <SOURCE_NAME> --api-key <ANY_STRING> <PACKAGE_PATH>
Exemple :
dotnet nuget add source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json --name MySource --username MyUserName --password MyPersonalAccessToken --configfile ./nuget.config
dotnet nuget push --source MySource --api-key AZ nupkgs/mypackage.1.1.0.nupkg
Remarque
Si votre organisation utilise un pare-feu ou un serveur proxy, veillez à autoriser les URL et adresses IP du domaine Azure Artifacts .