> 1. Having it be part of the Svn solution is sufficient for now. Minimally,
> we let the thing travel with the tools part of the project and let it be.

If you're using a standard installation of Visual Studio for your
developers, you shouldn't really need to do this type of thing.
Installing Visual Studio components on a build server *may* require
you to have a Visual Studio license for that server.  This *may* be
covered by an appropriate MSDN volume license, but you need to verify
that with your compliance folks.

Oftimes new Visual Studio project types are supported in MSBuild using
new "targets" files and sometimes additional or modified assemblies.
If you can discern (perhaps using an installation watcher program)
what those changes are, you might be able to make just those
modifications on your build server and eliminate the need to install
either Visual Studio or any addins on the server itself.

> 2. The setup.exe requires some user interaction anyway. It asks at least one
> or two questions that require end-user input.

Using the command line can often eliminate the user interaction
entirely.  Another option is to modify the MSI file itself to change
the queried values to the ones you want.  This requires tools you may
or may not have.

> 3. This adds a project type to the Visual Studio environment that is
> required by one of the solution's projects. Definitely more than I want to
> get into for any CI configuration concerns.

If it's solely a matter of additional assemblies, that can usually be
managed by source control, in your case, Subversions svn:externals
capability.  If it's a matter of targets in MSBuild build files, then
you have a slightly different problem.  Making those changes one time
and forgetting about them is likely to be much easier.

> All that said, good to know about the <msiexec/> block.

To be clear, I was talking about using MSIEXEC.EXE, the program to
which msi files are tied in Windows, not anything in NAnt or CC.NET.

Brad

Reply via email to