У нас есть автоматическая настройка сборки, которая использует файлы вызовов .vdproj
из TeamCity. Одним из ключевых компонентов является то, что нам приходилось автоматизировать создание нового GUID каждый раз, когда мы выполняем сборку развертывания. (Возможно, это тот «showtopper», о котором вы говорили.) Вот обходной путь, который его поддерживает:
http://www.codeproject.com/KB/install/VersionVDProj.aspx
Он анализирует ваш файл .vdproj
и обновляет коды пакетов и продуктов. Вот некоторые соответствующие фрагменты из нашего файла MsBuild
, которые выполняют настройку развертывания:
<Target Name="Update-Vdproj-Version">
<Exec Command="Tools\VersionVDProj\VersionVDProj.exe -msi Deployment\KillerAppSetup\KipperAppSetup.vdproj version=$(Release)" />
</Target>
<Target Name="Build-Setup">
<Exec Command="$(DevenvPath) KillerAppSetup.sln /build Release" WorkingDirectory="Deployment\KillerAppSetup\" />
</Target>
Итак, это можно сделать, и это делается! :) Разумеется, проекты установки и развертывания Visual Studio довольно примитивны, но если они все, что вам нужно, это работает.