2013-03-04 98 views
0

我打算将.Net构建添加到基于Hudson的构建服务器上。出迄今(基于Java的Web应用程序)的方式一直是一个两个阶段的过程如下:如何在构建服务器上构建和部署.Net应用程序?

  • 构建(编译和打包) - 目标无关
  • 部署到服务器(测试/开发/生产/等)并在版本控制中设置标签

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

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

所以我尝试使用安装项目,直到我读取它不可能从命令行构建这样的项目。

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

你有什么经验?你如何为可执行(非web).Net应用程序设置CI构建?

回答

1

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

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

+0

+1 - 谢谢。实际上,我发现WiX文档对教程更有用。我的建议是从那里开始。 – paul 2013-03-07 07:18:33

+0

这是否回答你的问题,或者你是否在更一般的“如何设置.NET应用程序的CI构建”答案? – Petrik 2013-03-10 19:12:58

+0

我认为WiX将是他们的出路。你说得对,学习曲线非常陡峭,但第一印象是它会适应现有的CI设置。我会将您的答复标记为答案。 – paul 2013-03-11 06:05:44

相关问题