Použití vlastního nuget.exe v konfiguraci buildu na VSTS

Visual Studio General

7 years ago

Krátce po vydání Visual Studia 2017 přidal tým Visual Studio Team Service nový hostovaný build agent Hosted VS2017 který zahrnuje podporu pro všechny nejnovější verze vývojářských nástrojů Microsoftu. Bohužel, přestožee build task pro Visual Studio build novou verzi 2017 podporuje, nejnovější verze NuGet u ještě přidána nebyla. Naštěstí je ale možné při buildu použít vlastní nuget.exe a použít jej pro restore balíčků projetku, který používá nové <PackageReference> v projektovém souboru csproj.

Získání poslední verze nuget.exe

Podporované verze NuGetu jsou dostupné ke stažení na oficiálním webu. Současná doporučená verze je 3.5.0, ale verze, která je součástí Visual Studia 2017 je 4.0.0

Versions of nuget.exe for download

Verze nuget.exe ke stažení

Protože potřebujeme být schopni referencovat stažený spustitelný soubor při buildu, musíme jej přidat do repozitáře. Svůj nuget.exe jsem vložil do složky t ools v kořenovém adresáři.

NuGet in tools folder

NuGet ve složce tools

Nastavení nuget.exe ve VSTS

Po přidání nuget.exe do repozitáře v požadované branchi, otevřeme stránku Build & Release a vytvoříme novou definici buildu nebo otevřeme požadovanou existující pro editaci. V seznamu tasků vybereme NuGet restore task.

NuGet task

NuGet task

V detailech tasku na pravé straně najdeme sekci Advanced a konfigurujeme použití vlastního nuget.exe a nastavíme relativní cestu k nuget.exe v repozitáři.

Configuring custom nuget.exe

Konfigurace vlastního nuget.exe

Posledním krokem, který provedeme je kontrola, zda používáme skutečně nový Hosted VS2017 build agent v záložce Options v build editoru.

New HostedVS2017 build agent

New HostedVS2017 build agent

Uložíme změny a můžeme build otestovat.

Shrnutí

Přestože NuGet build task ještě nebyl aktualizován pro podporu verze 4.0.0, tento problém můžeme nyní snadno obejít konfigurací vlastního nuget.exe v editoru.