MSBUILD не создает файлы MSI через CruiseControl.NET - PullRequest
1 голос
/ 02 сентября 2010

Прежде всего, я просто хочу сказать, что я не разработчик и не инженер.Я просто плохой менеджер конфигурации, пытающийся заставить CruiseControl создать решение VS2010 / .NET4.0 C # и выдавать MSI в качестве выходных данных.Инженеры, которых я поддерживаю, знают, как создавать эти MSI из своих клиентов VS2010 (конечно), но не особо разбираются в том, как использовать параметры командной строки.

Код «CruiseControl», который я использую, приведен ниже.Ничего очень умного.Я просто хочу создать эти MSI из сценария автоматической сборки.Я использовал альтернативу DEVENV, которая генерирует MSI, но есть другие проблемы с использованием этого метода.

Может кто-нибудь помочь, пожалуйста?

C: \ WINDOWS \ Microsoft.NET \ Framework \v4.0.30319 \ MSBuild.exe D: \ Software \ Test.root \ Test \ Test.sln / noconsolelogger / v: quiet / p: Configuration = Release; SafeMode = true ReBuild C: \ Program Files \ CruiseControl.NET \ server \ThoughtWorks.CruiseControl.MsBuild.dll 1800

Ответы [ 2 ]

2 голосов
/ 20 октября 2010

MSBuild похож на ant, а Nant - на язык сценариев для автоматизации вашей среды сборки. Он не компилирует ваш код на C #, .NET или не проверяет / извлекает ваш исходный код. Он обеспечивает только последовательность команд в одном файле для выполнения вышеуказанных действий.

как 1. проверить весь ваш исходный код из исходного компиляции 2. скомпилировать код 3. связывание файлов для развертывания

чтобы выполнить первую операцию из msbuild, вы будете писать команды вроде: svn checkout ..... что-то вроде этого. Для этого вам нужно svn должен быть установлен. чтобы сделать второе, вам нужны компиляторы для каждого языка. Например, если вы используете c #, вам нужно установить .net sdk на этот ящик.

твой вопрос для третьего вопроса, генерирующего MSI, вам нужна соответствующая технология. Вы можете сделать несколько способов. ex WIX доступен с открытым исходным кодом, вам нужно написать проект wix, который должен выполнять все работы по установке (msi).

для выполнения вышеуказанной операции вы можете написать скрипт в msbuild для автоматизации.

Надеюсь, вы мало что понимаете в своей проблеме. MSbuild предназначен для автоматизации вашей среды сборки. Wix или installshield для генерации MSI

Thaks

2 голосов
/ 02 сентября 2010

У нас были проблемы с созданием MSI, потому что MSBuild не поддерживает типы проектов .vdproj.В итоге мы использовали NSIS для создания наших установщиков, потому что использование подхода DEVENV означало еще одну лицензию для VS2005 / 2008/2010 на серверах сборки - не идеально.

Сказав, что я недавно наткнулся на этот пост в блогах MS, которые, в свою очередь, указывают на проект Sourceforge под названием WIX , который утверждает, что облегчает создание MSI.У меня не было возможности взглянуть на это, поэтому я не могу сказать, так или иначе.

Надеюсь, это поможет.

...