Take the 2-minute tour ×

I am tring to add .Net builds to our build server which is based on Hudson. Out approach so far (for Java-based web apps) has been a two stage process as follows:

  • build (compile and package) - target agnostic
  • deploy to server (test/staging/production/etc) and set tag in version control

I would like to set up something similar for some .Net applications I'm developing. The applications will be distributed either as ClickOnce or as install packages.

Initially, I setup 2 Hudson jobs to build and then deploy as a ClickOnce app. The problem here is that I have to define the ClickOnce server already in the build job where I really want to perform a neutral build and decide later where I want to deploy to.

So I tried using a Setup project until I read that it is not possible to build such projects from the command line.

Next, I tried using InstallShield Limited Edition 2010 but it seems I'll have to get a licence to be able to run it on the server outside of VS2010.

What has been your experience? How have you set up a CI build for executable (non-web) .Net applications?

share|improve this question

1 Answer 1

up vote 1 down vote accepted

From the setup / installer side one solution is to have a look at using the WiX toolset. Because WiX solutions are Visual Studio solutions they can be build using MsBuild and there is no need to install Visual Studio or something similar on the build machine.

One thing to note is that WiX has a pretty steep learning curve (there is an awesome tutorial available though), but most of the complexity seems to be due to the underlying complexity of Windows Installer, not so much because of the WiX toolset. I found that it took me a while to get going with WiX but once I got it working I understood why it was working and what the potential problems could be.

share|improve this answer
+1 - thanks. I actually found the WiX Documentation more useful that the tutorial. My recommendation would be to start there. –  paul Mar 7 '13 at 7:18
Does this answer your question or were you after a more general "how to set-up a CI build for .NET applications" answer? –  Petrik Mar 10 '13 at 19:12
I think WiX will be they way to go. You are right that the learning curve is steep but the first impressions are that it will fit in better with out current CI setup. I'll mark your reply as an answer. –  paul Mar 11 '13 at 6:05

Your Answer


