Как получить версию определенного установленного пакета Nuget с помощью Nuget.exe?
Я строю проект Selenium/Specflow в Jenkins и хотел бы получить установленную на данный момент версию пакета NUnit Console Runner через CLI Nuget.exe.
Мне нужно сослаться на путь к папке пакета NUnit Console Runner в моей сборке Jenkins, чтобы запустить тесты NUnit. В названии папки указана версия, и вместо жесткого пути, который меняется с изменением версии, я хотел получить текущую версию пакета и использовать ее для динамического построения пути.
Я прочитал много вопросов, объясняющих, как получить версию в Powershell и в клиенте Visual Studio, но я нигде не видел решения, объясняющего, как получить эту информацию с помощью nuget.exe. Остальная часть моей сборки Jenkins использует nuget.exe, и у меня есть это автообновление, поэтому я хотел использовать его, если это возможно.
Я пытался использовать команду List, но это не относится к Local, потому что Local не зарегистрированный источник.
C:\Program Files\nuget>nuget list nunit -source local
The specified source 'local' is invalid. Please provide a valid source.
Если я запускаю его с активным источником, я получаю все в удаленном репозитории Nuget с nunit в заголовке, что не то, что я хочу.
***********РЕДАКТИРОВАТЬ***********
Я могу получить пакет, поместив в папку, в которой установлены пакеты, в качестве источника
nuget list nunit.ConsoleRunner -source C:\Jenkins\workspace\packages\
NUnit.ConsoleRunner 3.10.0
Я написал скрипт ниже, чтобы захватить его и использовать в пути к пакету Nuget
setlocal enabledelayedexpansion
cd "c:\program files\nuget\"
for /f "tokens=2" %%a in ('nuget.exe list nunit.ConsoleRunner -source
C:/Jenkins/workspace/Project/packages/') do set versionString=%%a
echo !versionString!'
set pathToConsoleRunner="C:/Jenkins/workspace/Project/packages/NUnit.ConsoleRunner.!versionString!/tools/nunit3-console.exe"
echo !pathToConsoleRunner!'
!pathToConsoleRunner! C:/Jenkins/workspace/Project/bin/Debug/test.dll --where "cat == testCategory"
C:/Jenkins/ рабочая область / проект / пакеты / - везде, где ваша сборка восстанавливает ваши пакеты в C:/Jenkins/workspace/Project/bin/Debug/test.dll - путь к библиотеке DLL, содержащей ваши тесты NUnit