Obnovení balíčků NuGet pomocí Azure Pipelines

Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019

S obnovením balíčků NuGet můžete nainstalovat veškerou závislost projektu, aniž byste je museli ukládat do správy zdrojového kódu. To umožňuje čistější vývojové prostředí a menší velikost úložiště. Balíčky NuGet můžete obnovit pomocí úlohy obnovení NuGet, rozhraní příkazového řádku NuGet nebo rozhraní příkazového řádku .NET Core. V tomto článku se dozvíte, jak obnovit balíčky NuGet pomocí kanálů Classic i YAML.

Požadavky

Obnovení balíčků NuGet z informačního kanálu

  1. Přejděte do klasické definice kanálu a pak vyberte Upravit.

  2. Vyberte + , pokud chcete přidat nový úkol. Vyhledejte NuGet a pak vyberte Přidat a přidejte úlohu do kanálu.

  3. Pojmenujte úkol a v příkazu vyberte Obnovit.

  4. Vyberte informační kanály, které zde vyberu, a v rozevírací nabídce vyberte váš informační kanál. Pokud chcete použít vlastní konfigurační soubor, vyberte informační kanály v souboru NuGet.config a zadejte cestu k souboru NuGet.config a připojení služby, pokud chcete ověřit informační kanály mimo vaši organizaci.

  5. Pokud chcete zahrnout balíčky z NuGet.org, zaškrtněte políčko Použít balíčky z NuGet.org .

  6. Až budete hotovi, vyberte Uložit a frontu .

    Snímek obrazovky znázorňující, jak nakonfigurovat úlohu obnovení NuGet

Poznámka:

Klasické obnovení NuGet používá úlohu NuGetCommand@2 . Ve výchozím nastavení tato verze používá NuGet 4.1.0. Pokud chcete použít jinou verzi NuGetu, použijte úlohu instalačního programu nástrojů NuGet.

Místní obnovení balíčků NuGet

Umístěte ho nuget.config do stejné složky jako soubor .csproj nebo .slnsoubor. Konfigurační soubor by měl vypadat podobně jako v následujícím příkladu:

<?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>

Pokud chcete obnovit balíčky NuGet, spusťte v adresáři projektu následující příkaz:

nuget.exe restore

Obnovení balíčků NuGet z informačního kanálu v jiné organizaci

Pokud chcete obnovit balíčky NuGet z informačního kanálu v jiné organizaci Azure DevOps, musíte k ověření použít osobní přístupový token.

Vytvoření osobního přístupového tokenu (PAT)

  1. Přejděte do vaší organizace Azure DevOps a pak vyberte Osobní přístupové tokeny uživatelských nastavení>.

    Snímek obrazovky znázorňující, jak vytvořit osobní přístupový token

  2. Vytvořte osobní přístupový token s oborem Packaging (read) a zkopírujte pat do schránky.

    Snímek obrazovky znázorňující, jak vytvořit osobní přístupový token s oprávněními ke čtení balíčku

Obnovení balíčků NuGet

  1. Přejděte do definice kanálu a vyberte úlohu obnovení NuGet. Ujistěte se, že používáte verzi 2 úlohy.

    Snímek obrazovky znázorňující verzi úlohy obnovení NuGet

  2. Vyberte Informační kanály a ověřování a pak v souboru NuGet.config vyberte Informační kanály.

  3. Vyberte cestu k souboru NuGet.config .

  4. Výběrem možnosti Nový přidáte přihlašovací údaje pro informační kanály mimo tuto organizaci nebo kolekci.

    Snímek obrazovky znázorňující, jak nakonfigurovat úlohu obnovení NuGet

  5. Vyberte Externí Azure DevOps Server a zadejte adresu URL informačního kanálu (ujistěte se, že odpovídá tomu, co je v souboru NuGet.config), název připojení služby a token pat přístup, který jste vytvořili dříve. Až budete hotovi, zvolte tlačítko Uložit.

    Snímek obrazovky znázorňující, jak přidat nové připojení služby

  6. Až budete hotovi, vyberte Uložit a frontu .

Často kladené dotazy

Otázka: Můj kanál se nedaří obnovit balíčky NuGet?

A: Úloha obnovení NuGet může selhat z několika důvodů. Nejběžnějším scénářem je přidání nového projektu, který vyžaduje cílovou architekturu , která není podporována verzí NuGet, kterou váš kanál používá. K tomuto selhání obvykle nedojde v místním vývojovém prostředí, protože sada Visual Studio se postará o aktualizaci řešení odpovídajícím způsobem. Nezapomeňte upgradovat úlohu NuGet na nejnovější verzi.