Now try to put up some existing practices and given advice to start with, you can read one of MS's early pattern and practices book called "Team Development with Visual Studio® .NET and Visual SourceSafe" esp the Chapter 5 "The Build Process" and "BuildIt—An Automated Build Tool for Visual Studio .NET".
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=94FDB8C8-5A87-4545-AF75-6053F32C7ECA
Other tools
CruiseControl http://cruisecontrol.sourceforge.net/
FinalBuilder http://www.atozedsoftware.com/finalbuilder/
Visual Build Pro http://www.kinook.com/VisBuildPro/
Pasted from <http://forums.sgdotnet.org/ShowPost.aspx?PostID=5612>
Hi BIB,
cool stuff. I think as part of this article, we need to do an indepth review of the above build servers, and then come up with a recommendation. would you be interested in taking up one tool and doing a review of that.
we can split the reviews this way for different tools and do a final compilation.
For this, would you like to kickstart a discussion in the build server thread about the criteria to evaluate a build server? We can firm up a criteria this week, and measuring mechanism and then go out and do a build server evaluation. I think this way we can create something really valuable for all .NET developers out there.
P.S. On a side note, apart from a developer's curiosity:
If this effort works out, I am also looking at seeing how we can publish this article in the MSDN Asia magazine, ofcourse giving proper credit to all parties involved
so maybe we can get to see our names in print
. This way we can reach out to more people and really make a difference.
blackinkbottle wrote:
I went to look at all 3 of these build systems and interestingly enough, both FinalBuilder and Visual Build Pro doesn't really provide alot of information on it. Both of them are "need-to-pay" applications, and not really what it's supposedly intended to be. It tries to be everything.
Anyway, FinalBuilder seems to be an alternative to the normal batch-file scripting with a nice interface. Well, it looks good, but everything's very visual, and they don't quite put alot of information about the product. Just that it's a build system. That's all.
For Visual Build Pro, it also doesn't really provide much information on the usage of the system, just benefits and marketing stuff. I don't quite like products without detailed technical information on their products. But anyway, it seems to be (correct me if I'm wrong) a visual approach to creating your build system. It depends on plugins and such, and not scripts. And interestingly enough, it doesn't integrate with subversion, so this product won't be something I'll test and try out. But it does integrate directly into Visual Studio .Net 2003, so I'm not too sure how wonderful this is.
Now for CruiseControl. There is a .Net version for it. I've already mentioned the link over here. It's called CruiseControl.Net. (so much for being innovative) It uses XML for your configuration files. The website has quite a bit of information on it. It's FREE. But it isn't quite updated. Last update way back in May I think. Anyway it supports quite a lot of the free and popular source control systems, like subversion, and the popular NAnt and NUnit. So I guess I'll be taking CruiseControl out for a test run.
Btw, it comes with a full complete set of build and monitoring system. There's the build server, which runs as a service or a commandline. There's a web application to show the status of the builds. There's webservices to retrieve the status of the builds. There's a task bar app that shows you the status of the build on your desktop. Looks fantastic, and rather a complete solution than the previous two. Though I think the drawback is there's no visual IDE to edit the configuration files, but what the hell, that's what documentations are for. Welcome to the Linux world.
Vector:
I tested out the CruiseControl.NET yesterday. Seems a decent tool. The documentation is accurate to quite an acceptable extent and I was able to extract a solution with 4 subprojects from sourcesafe (on a separate machine network share), and build it in about an hour and a half. After that, setting it to extract and build other projects and solutions is a breeze. It took a further half an hour to figure out the logging mechanism and get the web application going and it looks good. I didnt miss the lack of GUI in the process.
However, something missing is the lack of post build tasks, which are integrated into the system like ftp or xcopy files over. will look into this on monday. tomo I will be consolidating this week's discussion, faq's and shifting the build server posts to the correct thread.