Delen via


NuGet-pakketten herstellen met Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Met NuGet Package Restore kunt u alle afhankelijkheid van uw project installeren zonder deze op te slaan in broncodebeheer. Dit maakt een schonere ontwikkelomgeving en een kleinere opslagplaats mogelijk. U kunt uw NuGet-pakketten herstellen met behulp van de NuGet-hersteltaak, de NuGet CLI of de .NET Core CLI. In dit artikel wordt beschreven hoe u uw NuGet-pakketten kunt herstellen met zowel klassieke als YAML-pijplijnen.

Vereisten

NuGet-pakketten herstellen vanuit een feed

  1. Navigeer naar uw klassieke pijplijndefinitie en selecteer Bewerken.

  2. Selecteer + deze optie om een nieuwe taak toe te voegen. Zoek naar NuGet en selecteer vervolgens Toevoegen om de taak toe te voegen aan uw pijplijn.

  3. Geef uw taak een naam en selecteer Herstellen in de opdracht.

  4. Selecteer Feed(s) die ik hier selecteer en selecteer uw feed in de vervolgkeuzelijst. Als u uw eigen configuratiebestand wilt gebruiken, selecteert u Feeds in mijn NuGet.config en voert u het pad naar uw NuGet.config-bestand en de serviceverbinding in als u wilt verifiëren met feeds buiten uw organisatie.

  5. Als u pakketten uit NuGet.org wilt opnemen, schakelt u het selectievakje Pakketten gebruiken uit NuGet.org in.

  6. Selecteer Opslaan en wachtrij wanneer u klaar bent.

    Schermopname van het configureren van de NuGet-hersteltaak.

Notitie

Klassieke NuGet-herstelbewerking maakt gebruik van de NuGetCommand@2 taak. Deze versie maakt standaard gebruik van NuGet 4.1.0. Gebruik de taak NuGet Tool Installer als u een andere NuGet-versie wilt gebruiken.

NuGet-pakketten lokaal herstellen

Plaats uw nuget.config map in dezelfde map als uw .csproj of .slnbestand. Uw configuratiebestand moet er ongeveer uitzien als in het volgende voorbeeld:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <!-- remove inherited connection strings -->
    <clear />
    <!-- add an Azure Artifacts feed -->
    <add key="FabrikamFiber" value="https://pkgs.dev.azure.com/microsoftLearnModule/_packaging/FabrikamFiber/nuget/v3/index.json" />
    <!-- Get packages from NuGet.org -->
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
  </packageSources>
</configuration>

Als u uw NuGet-pakketten wilt herstellen, voert u de volgende opdracht uit in uw projectmap:

nuget.exe restore

NuGet-pakketten herstellen vanuit een feed in een andere organisatie

Als u NuGet-pakketten wilt herstellen vanuit een feed in een andere Azure DevOps-organisatie, moet u een persoonlijk toegangstoken gebruiken om te verifiëren.

Een persoonlijk toegangstoken maken

  1. Navigeer naar uw Azure DevOps-organisatie en selecteer vervolgens Persoonlijke toegangstokens voor gebruikersinstellingen>.

    Schermopname die laat zien hoe u een persoonlijk toegangstoken maakt.

  2. Maak een persoonlijk toegangstoken met het bereik Packaging (read) en kopieer uw PAT naar het klembord.

    Een schermopname die laat zien hoe u een persoonlijk toegangstoken maakt met leesmachtigingen voor pakketten.

NuGet-pakketten herstellen

  1. Navigeer naar uw pijplijndefinitie en selecteer de NuGet-hersteltaak . Zorg ervoor dat u versie 2 van de taak gebruikt.

    Schermopname van de versie van de NuGet-hersteltaak.

  2. Selecteer Feeds en verificatie en selecteer vervolgens Feeds in mijn NuGet.config.

  3. Selecteer het pad van uw NuGet.config-bestand .

  4. Selecteer Nieuw om referenties toe te voegen voor feeds buiten deze organisatie/verzameling.

    Schermopname die laat zien hoe u de NuGet-hersteltaak configureert.

  5. Selecteer Externe Azure DevOps-server en voer vervolgens uw feed-URL in (zorg ervoor dat deze overeenkomt met wat er in uw NuGet.config staat), de naam van de serviceverbinding en het persoonlijke toegangstoken dat u eerder hebt gemaakt. Kies Opslaan wanneer u klaar bent.

    Schermopname die laat zien hoe u een nieuwe serviceverbinding toevoegt.

  6. Selecteer Opslaan en wachtrij wanneer u klaar bent.

Veelgestelde vragen

V: Mijn pijplijn kan mijn NuGet-pakketten niet herstellen?

A: De NuGet-hersteltaak kan om verschillende redenen mislukken. Het meest voorkomende scenario is wanneer u een nieuw project toevoegt waarvoor een doelframework is vereist dat niet wordt ondersteund door de NuGet-versie die uw pijplijn gebruikt. Deze fout treedt doorgaans niet op in de lokale ontwikkelomgeving, omdat Visual Studio ervoor zorgt dat uw oplossing dienovereenkomstig wordt bijgewerkt. Zorg ervoor dat u uw NuGet-taak upgradet naar de nieuwste versie.