<p>OK, so we all know the daily build is the heart beat of a project, but whats the single best way of automating it? </p>

<p>We have perl scripts wrapping our pipeline which includes ClearCase, VS2005 (C++), Intel FORTRAN, Inno setup. We use cron jobs on UNIX to schedule the build, and host a simple Apache web server to view and monitor the build. All in all its rather complex, I would like to know whats the best off the shelf solution that people use?</p>

<p>And yes I did say FORTRAN no escaping it sometimes, it works, no point doing a huge re-implementation project for some tried and tested FEA code that just works.</p>

[{'answer_id': 53772, 'author': 'Chris Kimpton', 'author_id': 48310, 'author_profile': 'https://Stackoverflow.com/users/48310', 'pm_score': 2, 'selected': False, 'text': '<p>We use <a href="http://www.jetbrains.com/teamcity/index.html" rel="nofollow noreferrer">TeamCity</a> - but then its a simple C#/Java development - maybe your pipeline can done via scripts it can drive?</p>\n'}, {'answer_id': 53774, 'author': 'Brad Bruce', 'author_id': 5008, 'author_profile': 'https://Stackoverflow.com/users/5008', 'pm_score': 3, 'selected': True, 'text': "<p>We're in the process of implementing CC.Net.  So far it seems like it would fit your model pretty well.  </p>\n\n<p>Out of the box it offers automated building, results tracking and notification.  I'm not sure how detailed the build-in-progress monitoring is though.</p>\n"}, {'answer_id': 53775, 'author': 'Chris Kimpton', 'author_id': 48310, 'author_profile': 'https://Stackoverflow.com/users/48310', 'pm_score': 2, 'selected': False, 'text': '<p>A new one to me that I\'ve heard is quite slick is <a href="http://hudson.gotdns.com/wiki/display/HUDSON/Plugins" rel="noreferrer">hudson</a> - also with MSBuild support.</p>\n'}, {'answer_id': 53782, 'author': 'Aardvark', 'author_id': 3655, 'author_profile': 'https://Stackoverflow.com/users/3655', 'pm_score': 1, 'selected': False, 'text': '<p>I have had success using <a href="http://www.kinook.com/VisBuildPro/" rel="nofollow noreferrer">Visual Build Pro</a>.</p>\n'}, {'answer_id': 53787, 'author': 'John Meagher', 'author_id': 3535, 'author_profile': 'https://Stackoverflow.com/users/3535', 'pm_score': 2, 'selected': False, 'text': '<p>There are many tools that specifically handle this:</p>\n\n<ul>\n<li><a href="http://cruisecontrol.sourceforge.net/" rel="nofollow noreferrer">Cruise Control</a></li>\n<li><a href="http://hudson-ci.org/" rel="nofollow noreferrer">Hudson</a></li>\n<li><a href="http://continuum.apache.org/" rel="nofollow noreferrer">Continuum</a></li>\n</ul>\n\n<p>The tools have out of the box support for the most common build types.  They all also support some sort of "run this script" type build process.  </p>\n\n<p>In the end you should use the nicer build tools (MSBuild, Ant, Maven, Make, ...) where you can and fill the gaps for the odder tools with custom scripts.  The automated build can just invoke these in the right order.  </p>\n'}, {'answer_id': 53795, 'author': 'ibz', 'author_id': 5475, 'author_profile': 'https://Stackoverflow.com/users/5475', 'pm_score': 1, 'selected': False, 'text': '<p>CC.NET is very powerful. Used it and was really happy about it. Even the status icon in the systray. It\'s a small detail, but it gives you a good overview of the project\'s "health". You immediately feel motivated to fix the tests when you see it red.</p>\n\n<p>Now we use a self-baked series of scripts. Since we write Python, compilation is non-existant, so the only problem is running the tests.</p>\n'}, {'answer_id': 53969, 'author': 'Jay Bazuzi', 'author_id': 5314, 'author_profile': 'https://Stackoverflow.com/users/5314', 'pm_score': 1, 'selected': False, 'text': '<p>If you\'re working with Visual Studio, be sure to check out <a href="http://msdn.microsoft.com/en-us/library/ms181710(VS.80).aspx" rel="nofollow noreferrer">Team Foundation Build</a> to see if it will suit your situation.</p>\n\n<p>It looks like Buck Hodges\' <a href="http://blogs.msdn.com/buckh/archive/2007/08/14/tfs-2008-a-basic-guide-to-team-build-2008.aspx" rel="nofollow noreferrer">blog post on the VS 2008 version</a> is a good resource, too.</p>\n'}, {'answer_id': 99352, 'author': 'David Segonds', 'author_id': 13673, 'author_profile': 'https://Stackoverflow.com/users/13673', 'pm_score': 2, 'selected': False, 'text': '<p>Here is the best resource we found to help us pick a Continuous Integration tool. We have been evaluating 5 or 6 tools on this page.</p>\n\n<p><a href="http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix" rel="nofollow noreferrer">http://confluence.public.thoughtworks.org/display/CC/CI+Feature+Matrix</a></p>\n'}, {'answer_id': 27812723, 'author': 'naught101', 'author_id': 210945, 'author_profile': 'https://Stackoverflow.com/users/210945', 'pm_score': 0, 'selected': False, 'text': '<p>I know this is a really old question, but it\'s still coming up in searches, so someone should mention <a href="http://jenkins-ci.org/" rel="nofollow noreferrer">Jenkins</a> - the open source continuation of Hudson.</p>\n<p>From the <a href="https://wiki.jenkins-ci.org/display/JENKINS/Meet+Jenkins" rel="nofollow noreferrer">Jenkins wiki</a>:</p>\n<blockquote>\n<p>Among those things, current Jenkins focuses on the following two jobs:</p>\n<ul>\n<li><strong>Building/testing software projects continuously</strong>, just like CruiseControl or DamageControl. In a nutshell, Jenkins provides an easy-to-use so-called continuous integration system, making it easier for developers to integrate changes to the project, and making it easier for users to obtain a fresh build. The automated, continuous build increases the productivity.</li>\n<li><strong>Monitoring executions of externally-run jobs</strong>, such as cron jobs and procmail jobs, even those that are run on a remote machine. For example, with cron, all you receive is regular e-mails that capture the output, and it is up to you to look at them diligently and notice when it broke. Jenkins keeps those outputs and makes it easy for you to notice when something is wrong.</li>\n</ul>\n</blockquote>\n<p>It was originally built with Java in mind, so it integrates well with lots of other Java tools, but you can use it with any language, including all those mentioned by the OP.</p>\n'}]
['https://Stackoverflow.com/questions/53766', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/2387/']