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
- Organizace Azure DevOps. Vytvořte organizaci, pokud ji ještě nemáte.
- Projekt Azure DevOps. Pokud ho ještě nemáte, můžete vytvořit nový projekt.
- Informační kanál Azure Artifacts Pokud ho ještě nemáte, vytvořte nový informační kanál .
- Připojení do informačního kanálu Azure Artifacts: NuGet.exe, dotnet.
- Nastavte oprávnění kanálu.
Obnovení balíčků NuGet z informačního kanálu
Přejděte do klasické definice kanálu a pak vyberte Upravit.
Vyberte + , pokud chcete přidat nový úkol. Vyhledejte NuGet a pak vyberte Přidat a přidejte úlohu do kanálu.
Pojmenujte úkol a v příkazu vyberte Obnovit.
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.
Pokud chcete zahrnout balíčky z NuGet.org, zaškrtněte políčko Použít balíčky z NuGet.org .
Až budete hotovi, vyberte Uložit a frontu .
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 .sln
soubor. 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)
Přejděte do vaší organizace Azure DevOps a pak vyberte Osobní přístupové tokeny uživatelských nastavení>.
Vytvořte osobní přístupový token s oborem Packaging (read) a zkopírujte pat do schránky.
Obnovení balíčků NuGet
Přejděte do definice kanálu a vyberte úlohu obnovení NuGet. Ujistěte se, že používáte verzi 2 úlohy.
Vyberte Informační kanály a ověřování a pak v souboru NuGet.config vyberte Informační kanály.
Vyberte cestu k souboru NuGet.config .
Výběrem možnosti Nový přidáte přihlašovací údaje pro informační kanály mimo tuto organizaci nebo kolekci.
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.
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.