Я строю проект 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 isnне зарегистрированный источник.
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 / workspace / Project / packages / - везде, где ваша сборкавосстанавливает ваши пакеты в C: /Jenkins/workspace/Project/bin/Debug/test.dll - путь к DLL, содержащей ваши тесты NUnit