如何在构建服务器上构建和部署.Net应用程序?

时间:2013-03-04 09:17:14

标签: .net deployment continuous-integration

我想将.Net构建添加到基于Hudson的构建服务器。迄今为止的方法(对于基于Java的Web应用程序)已经分为两个阶段:

  • 构建(编译和打包) - 目标不可知
  • 部署到服务器(test / staging / production / etc)并在版本控制中设置标记

我想为我正在开发的一些.Net应用程序设置类似的东西。应用程序将以ClickOnce或安装包的形式分发。

最初,我设置2个Hudson作业进行构建,然后部署为ClickOnce应用程序。这里的问题是我必须在构建作业中定义ClickOnce服务器,我真的想要执行中性构建,然后决定我要部署到哪里。

所以我尝试使用安装项目,直到我读到无法从命令行构建这样的项目。

接下来,我尝试使用InstallShield Limited Edition 2010,但似乎我必须获得许可才能在VS2010之外的服务器上运行它。

你的经历是什么?您如何为可执行(非Web).Net应用程序设置CI构建?

1 个答案:

答案 0 :(得分:1)

从设置/安装程序方面,一个解决方案是查看使用WiX toolset。由于WiX解决方案是Visual Studio解决方案,因此可以使用MsBuild构建它们,并且无需在构建计算机上安装Visual Studio或类似的东西。

需要注意的一点是,WiX的学习曲线非常陡峭(尽管有一个很棒的tutorial可用),但大多数复杂性似乎是由于Windows Installer的底层复杂性,而不是因为WiX工具集。我发现花了一段时间才开始使用WiX,但是一旦我开始工作,我就明白它为什么会起作用,以及潜在的问题是什么。