Как интегрировать NuGet в мой план сборки Bamboo? - PullRequest
4 голосов
/ 30 декабря 2011

В наших планах сборки для сайтов Sitecore (.Net) в настоящее время Bamboo используется в качестве мастер-плана сборки для непрерывного процесса интеграции. Bamboo поддерживает создание проекта .Net, и этот проект .Net содержит ссылки на несколько двоичных файлов Sitecore.

Я использовал NuGet в качестве хранилища артефактов, в основном потому, что, похоже, именно это и использовало большинство людей.

Итак, теперь, когда у меня есть репозиторий nuget, я размещаю свой собственный фид и добавил пакет Nuget в свой проект (я только что установил созданный пакет двоичных файлов), что еще мне делать? нужно сделать?

Должна ли сборка вызывать что-то особенное, или я сделал? Я думаю, я просто нервничаю, что бамбук не говорит напрямую с моим хранилищем ....

В ближайшей аналогии, которую я имею, а именно, в комбо Maven / Archiva, план maven специально ссылается на артефакты в архиве, вытягивая правильную версию по мере необходимости. NuGet делает это?

Ответы [ 3 ]

8 голосов
/ 28 января 2015

Поскольку в подходе к восстановлению пакетов NuGet появились новые разработки, я решил опубликовать обновление по этой теме. Мы используем Visual Studio 2012. Я хотел иметь возможность запустить MSBuild и убедиться, что он сначала восстановит пакеты NuGet, не установив для параметра «Восстановление пакета» значение true в конфигурации. Вот что я сделал (вдохновленный https://stackoverflow.com/a/23935892/414376):

  1. Обновлен NuGet в моем решении до версии более поздней, чем 2.7 (2.8.3 в моем случае; это кажется необязательным шагом)
  2. Установлен NuGet.exe на сервере сборки
  3. Добавлен NuGet.exe в мой удаленный агент, чтобы его можно было запускать как команду из Bamboo
  4. Добавлена ​​команда NuGet в мой план сборки с аргументом restore (так что команда будет nuget restore); Я поместил его прямо перед заданием MSV Build.

Это было все, что мне нужно, чтобы заставить это работать должным образом в соответствии с последними рекомендациями.

6 голосов
/ 02 апреля 2012

Nuget 1.4+ поддерживает «Восстановление пакета», которое включает в себя вызов задачи MsBuild в файле проекта. Когда пакеты недоступны, они автоматически восстанавливают их при сборке проекта.

0 голосов
/ 06 мая 2019

Я уверен, что это старые новости, но мои пакеты находятся в \ packages.Никакое количество «восстановления dotnet» не будет работать, пока я явно не упомянул папку с пакетами.

dotnet restore --packages .\packages

восстановил их!

VS2019.на всякий случай, это зависит от версии.

...