Publicera NuGet-paket från kommandoraden (NuGet.exe)

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Den här artikeln vägleder dig genom att konfigurera projektet och publicera dina NuGet-paket med hjälp av kommandoradsgränssnittet NuGet.

Förutsättningar

Produkt Krav
Azure DevOps – En Azure DevOps--organisation.
– Ett Azure DevOps-projekt.
En Azure Artifacts -flöde.
– Ladda ned och installera nuget.exe version 4.8.0.5385 eller senare. Vi rekommenderar NuGet 5.5.x eller senare, vilket inkluderar viktiga felkorrigeringar för annulleringar och tidsgränser.

Konfigurera providern för Azure Artifacts-autentiseringsuppgifter

Azure Artifacts-providern för autentiseringsuppgifter möjliggör säker autentisering till dina Azure Artifacts feeds. Om du vill använda den med nuget.exemåste du först lägga till den i NuGets sökväg för plugin-program. Mer information finns i Installation och identifiering av plugin-program. När plugin-programmet har lagts till följer du installationsstegen för operativsystemet:

Använd någon av följande metoder för att installera Azure Artifacts-providern för autentiseringsuppgifter:

Manuell installation

  1. Ladda ned den senaste versionen av Microsoft.NetFx48.NuGet.CredentialProvider.zip.

  2. Extrahera zip-filen.

  3. netfx Kopiera mappen från det extraherade arkivet till %UserProfile%/.nuget/plugins/. Mappen netfx krävs för nuget.exe kompatibilitet.

Installera med hjälpskriptet

Du kan också använda det automatiserade hjälpskriptet för en effektiv installation. Kontrollera att du har PowerShell 5.1 eller senare och kör sedan:

iex "& { $(irm https://aka.ms/install-artifacts-credprovider.ps1) } -AddNetfx"

Mer information finns i lagringsplatsen Azure Artifacts Credential Provider.

Anslut till ett flöde

  1. Logga in på din Azure DevOps-organisation och navigera sedan till projektet.

  2. Välj Artefakteroch välj sedan din feed i rullgardinsmenyn.

  3. Välj Anslut för att mataoch välj sedan NuGet.exe i det vänstra navigeringsfönstret.

  4. Lägg till en nuget.config fil i projektet i samma mapp som din .csproj- eller .sln fil. Klistra in det angivna XML-kodfragmentet i filen. Kodfragmentet bör se ut så här:

    • organisationsomfattande flöde:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
    • projektomfattande flöde:

      <?xml version="1.0" encoding="utf-8"?>
      <configuration>
        <packageSources>
          <clear />
          <add key="<SOURCE_NAME>" value="https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json" />
        </packageSources>
      </configuration>
      
  1. Logga in på Din Azure DevOps-server och navigera sedan till projektet.

  2. Välj först Artefakteroch välj sedan din feed.

  3. Välj Anslut till feedoch välj sedan NuGet.exe i det vänstra navigeringsfönstret.

  4. Följ anvisningarna i avsnittet projektinställningar för att ansluta till din feed.

Publicera paket till en feed i samma organisation

Anteckning

Om du vill publicera paket till en feed måste du vara Feed Publisher (Bidragsgivare) eller högre. Mer information finns i Hantera behörigheter .

Kör följande kommando för att publicera ett paket i feeden. Ersätt platshållarna med lämpliga värden:

nuget push <PACKAGE_PATH> -src https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -ApiKey <ANY_STRING>

Exempel:

nuget push MyPackage.5.0.2.nupkg -src https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -ApiKey AZ

Anteckning

api-key krävs, men du kan ange valfri sträng som dess värde när du publicerar till en Azure Artifacts-feed.

Publicera paket till en feed i en annan organisation

Om du vill publicera dina NuGet-paket till en feed i en annan Azure DevOps-organisation måste du först skapa en personlig åtkomsttoken (PAT) i målorganisationen.

  1. Gå till den organisation som är värd för målflödet och skapa en personlig åtkomsttoken (PAT) med Packaging>Read & write scope.

  2. Kör följande kommando för att lägga till paketkällan i nuget.config-filen. Detta lägger till din PAT i din nuget.config-fil. Lagra filen på en säker plats och kontrollera att du inte checkar in den i källkontrollen.

    nuget sources Add -Name <SOURCE_NAME> -Source https://pkgs.dev.azure.com/<ORGANIZATION_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json -UserName <USER_NAME> -Password <PERSONAL_ACCESS_TOKEN> -config <PATH_TO_NUGET_CONFIG_FILE>
    
  3. Kör följande kommando för att publicera paketet:

    nuget push <PACKAGE_PATH> -src <SOURCE_NAME> -ApiKey <ANY_STRING>
    

Exempel:

nuget sources Add -Name "MySource" -Source https://pkgs.dev.azure.com/MyOrg/MyProject/_packaging/MyFeed/nuget/v3/index.json -UserName MyUserName -Password YourPersonalAccessToken -config ./nuget.config
nuget push nupkgs/mypackage.1.1.8.nupkg -src MySource -ApiKey AZ

Anteckning

Om din organisation använder en brandvägg eller en proxyserver kontrollerar du att du tillåter Url:er och IP-adresser för Azure Artifacts-domäner.