Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020
Den här guiden beskriver hur du konfigurerar projektet för att publicera NuGet-paket med hjälp av dotnet-kommandoradsgränssnittet.
Förutsättningar
| Produkt | Krav |
|---|---|
| Azure DevOps | – En organisation i Azure DevOps . – Ett Azure DevOps-projekt. – Ett Azure Artifacts-flöde. – Ladda ned och installera Azure Artifacts Credential Provider. – Ladda ned och installera .NET Core SDK (2.1.400+). |
Skapa en feed
Om du redan har en feed går du vidare till nästa steg. Annars följer du anvisningarna nedan för att skapa en ny:
Logga in på Azure DevOps och gå till projektet.
Välj Artefakter och välj sedan Skapa flöde.
Ange ett beskrivande namn för feeden och definiera dess synlighet (vem som kan använda feeden). Ange omfånget för flödet och om du vill inkludera paket från offentliga källor markerar du kryssrutan Inkludera paket från vanliga offentliga källor .
Välj Skapa när du är klar.
Anslut till en feed
Innan du kan publicera paket i feeden måste du autentisera med Azure Artifacts. Följ anvisningarna nedan för att konfigurera projektet och autentisera med feeden:
Logga in på din Azure DevOps-organisation och navigera sedan till projektet.
Välj Artefakteroch välj sedan din feed från rullgardinsmenyn.
Välj Anslut till flödeoch välj sedan dotnet i avsnittet NuGet till vänster.
Skapa en nuget.config fil i samma mapp som din csproj- eller sln fil. Kopiera följande XML-kodfragment och klistra in det i den nya filen och ersätt platshållarna med relevant information:
<?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>
Publicera paket till en feed i samma organisation
Kör följande kommando för att publicera ett paket i feeden. Ersätt platshållarna med lämpliga värden:
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>
Exempel:
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
Obs
Parametern api-key krävs när du publicerar till en Azure Artifacts-feed, men du kan använda valfri sträng som dess värde.
Publicera paket till en feed i en annan organisation
Om du vill publicera dina NuGet-paket i en feed i en annan Azure DevOps-organisation måste du först skapa en personlig åtkomsttoken (PAT) i målorganisationen, lägga till den nya paketkällan i konfigurationsfilen och sedan köra publiceringskommandot:
Gå till den organisation som är värd för målflödet och skapa en personlig åtkomsttoken (PAT) med Packaging>Läs- och skrivåtkomst räckvidd.
Ersätt platshållaren <PERSONAL_ACCESS_TOKEN> med din personliga åtkomsttoken och kör sedan följande kommando för att lägga till paketkällan i nuget.config-filen. Kontrollera att den här filen lagras på ett säkert sätt och inte är incheckad i källkontrollen.
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>Kör följande kommando för att publicera paketet:
dotnet nuget push --source <SOURCE_NAME> --api-key <ANY_STRING> <PACKAGE_PATH>
Exempel:
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
Obs
Om din organisation använder en brandvägg eller proxyserver kontrollerar du att URL:er och IP-adresser för Azure Artifacts-domäner tillåts.