2014-11-25 3 views
0

Я пытаюсь автоматизировать процесс сборки для решения C# (vs2008).Автоматический сценарий сборки от Batch до MSBUILD/NANT

Сценарий сборки написан в пакетном скрипте, который я хочу изменить. Мы используем Clearcase как систему CM. Я искал некоторые инструменты, такие как MSBUILD, NANT.

Любые предложения, которые являются лучшим решением, подобным примерному сценарию в MSBUILD и NANT?

Я не видел сайтов, на которых MSBUILD и NANT хорошо документированы, или любого хорошего учебника о каждом описании задачи.

Где я могу узнать MSBUILD или NANT либо из них, либо написать скрипт с нуля?

ответ

2

Существует третий способ, который я предпочитаю. Вы также можете использовать devenv.com. Это быстрее, чем NANT, не требует ящиков NANT и работает на любой машине с установленным VS. Вы также избегаете возможных ошибок с MSBUILD (http://support.microsoft.com/kb/964125).

Просто используйте %path_to_devenv.com%\devenv.com "%path_to_sln" /<buildoption> BuildConfig

В моем случае это

%ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com "C:\Projects\XYZ\xyz.sln" /rebuild Debug

Таким образом, это гарантирует, что ваш проект будет строить точно так же, как это строится в Visual Studio.

EDIT:

Теперь, когда мы знаем, как, сколько там делать, я постараюсь дать набросок, как вы можете настроить всю систему для автоматизированной сборки проверочного.

  1. Настройте свой репозиторий (я надеюсь, что это уже сделано - скажите мне, если нет)
  2. Установка и настройка Jenkins (https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins), включая пользователей, ClearCase-мандатной, плагины для ClearCase, MSBuild, и т.д. (все они могут быть найдены в интерфейсе подключаемого модуля Jenkins) - это самый большой мир работы
  3. Создайте и настройте новый проект в интерфейсе jenkins (имя, рабочий каталог и т. д.)
  4. Сообщите jenkins, чтобы использовать управление исходным кодом (например, модуль subversion), введите репозитории ClearCase, чтобы установить желаемое поведение управления исходным кодом
  5. Установите триггер сборки (я рекомендую проверять управление исходным кодом каждую минуту: * * * * *)
  6. Добавьте шаг сборки и выберите «Построить проект или решение Visual Studio с помощью MSBuild» - этот параметр должен появиться после установка плагина MSBuild (https://wiki.jenkins-ci.org/display/JENKINS/MSBuild+Plugin)
  7. Установите путь к файлу .sln (вы проверили его из хранилища)
  8. Добавить еще дополнительные аргументы при желании (например,/р: Configuration = Release или Debug или любой другой http://msdn.microsoft.com/en-us/library/vstudio/ms164311%28v=vs.110%29.aspx)
  9. Воспроизвести до тех пор, пока он не будет работать

Btw., Я рекомендую поместить все внешние dll в ваш репозиторий.

+0

Спасибо, но вы предложили мне скомпилировать файл решения. Но я прошу автоматизировать сценарий и обновить его, чтобы я мог подключить его к инструментам CI, таким как hudson. – SteveScm

+0

Ну, в этом случае вы должны придерживаться MSBUILD. Нет необходимости использовать NANT, MSBUILD полностью интегрирован в Jenkins (Hudson) в качестве шага сборки. – MichaelS

+0

Вот скриншот: http://oi59.tinypic.com/10gz1c2.jpg – MichaelS

Смежные вопросы