<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: A tip for continuous integration shops</title>
	<atom:link href="http://www.cmdln.org/2009/07/04/a-tip-for-continuous-integration-shops/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.cmdln.org/2009/07/04/a-tip-for-continuous-integration-shops/</link>
	<description>a system administrators mutterings</description>
	<lastBuildDate>Sun, 28 Feb 2010 09:28:06 -0600</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Julian Simpson</title>
		<link>http://www.cmdln.org/2009/07/04/a-tip-for-continuous-integration-shops/comment-page-1/#comment-888</link>
		<dc:creator>Julian Simpson</dc:creator>
		<pubDate>Tue, 07 Jul 2009 07:38:29 +0000</pubDate>
		<guid isPermaLink="false">http://www.cmdln.org/?p=359#comment-888</guid>
		<description>Nice post.  Just thought I&#039;d add to the comment from Mr Hericus (hello again!) that CI looks set to become more and more central to the release process in organisations.  A lot of shops now generate tags from the CI processs and use them to track artifacts through to deployment.  There&#039;s a couple of CI servers now that allow you to invoke all your deploy steps from the server itself.  Which could be good with the right security and process.</description>
		<content:encoded><![CDATA[<p>Nice post.  Just thought I&#8217;d add to the comment from Mr Hericus (hello again!) that CI looks set to become more and more central to the release process in organisations.  A lot of shops now generate tags from the CI processs and use them to track artifacts through to deployment.  There&#8217;s a couple of CI servers now that allow you to invoke all your deploy steps from the server itself.  Which could be good with the right security and process.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mr. Hericus</title>
		<link>http://www.cmdln.org/2009/07/04/a-tip-for-continuous-integration-shops/comment-page-1/#comment-887</link>
		<dc:creator>Mr. Hericus</dc:creator>
		<pubDate>Sun, 05 Jul 2009 21:38:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.cmdln.org/?p=359#comment-887</guid>
		<description>Continuous Integration is actually getting more and more play outside of the &quot;pure dev&quot; team.  It has and continues to be applied to teams of documentation writers, QA test developers, and to other IT areas successfully.

As you state, it&#039;s the practice of ensuring that whatever is committed to the shared repository plays well with everything else already there and doesn&#039;t introduce any automatically detectable regressions in the code/docs/tests/etc.

I agree with your assessment, you have to have a plan when putting CI into place.  For the small team/small project it&#039;s easy to get up and running quickly.  But for larger projects, everything should be defined in the CI system.  It becomes the repository of knowledge for how the whole system is put together.

Thanks for the post!

Mr. Hericus</description>
		<content:encoded><![CDATA[<p>Continuous Integration is actually getting more and more play outside of the &#8220;pure dev&#8221; team.  It has and continues to be applied to teams of documentation writers, QA test developers, and to other IT areas successfully.</p>
<p>As you state, it&#8217;s the practice of ensuring that whatever is committed to the shared repository plays well with everything else already there and doesn&#8217;t introduce any automatically detectable regressions in the code/docs/tests/etc.</p>
<p>I agree with your assessment, you have to have a plan when putting CI into place.  For the small team/small project it&#8217;s easy to get up and running quickly.  But for larger projects, everything should be defined in the CI system.  It becomes the repository of knowledge for how the whole system is put together.</p>
<p>Thanks for the post!</p>
<p>Mr. Hericus</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nick Anderson</title>
		<link>http://www.cmdln.org/2009/07/04/a-tip-for-continuous-integration-shops/comment-page-1/#comment-886</link>
		<dc:creator>Nick Anderson</dc:creator>
		<pubDate>Sun, 05 Jul 2009 16:45:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.cmdln.org/?p=359#comment-886</guid>
		<description>I should clarify I am _not_ a developer either. :)

So the main thing is that upon each check-in a build is performed. Source code is compiled (if needed), unit tests are run, system tests are run. The idea is you can catch breakage right away. You try to keep &quot;bad&quot; commits from entering the repo by placing importance on the fact that _any_ revision of the main repository should successfully build. For dynamic languages a build could include running unit tests in the code, pushing the code to a staging server, running your fixtures and system tests. So really there is no change for your typical CVS/SVN you just add the build server to the mix. It monitors your repos for changes and upon change it kicks off a build. You then get trends of your breakage etc ... I think it is also useful to show the importance of automation. Its easy to not have automatic deployment but that possible variation by not being automated is dangerous for troubleshooting later.</description>
		<content:encoded><![CDATA[<p>I should clarify I am _not_ a developer either. <img src='http://www.cmdln.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So the main thing is that upon each check-in a build is performed. Source code is compiled (if needed), unit tests are run, system tests are run. The idea is you can catch breakage right away. You try to keep &#8220;bad&#8221; commits from entering the repo by placing importance on the fact that _any_ revision of the main repository should successfully build. For dynamic languages a build could include running unit tests in the code, pushing the code to a staging server, running your fixtures and system tests. So really there is no change for your typical CVS/SVN you just add the build server to the mix. It monitors your repos for changes and upon change it kicks off a build. You then get trends of your breakage etc &#8230; I think it is also useful to show the importance of automation. Its easy to not have automatic deployment but that possible variation by not being automated is dangerous for troubleshooting later.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Matt Simmons</title>
		<link>http://www.cmdln.org/2009/07/04/a-tip-for-continuous-integration-shops/comment-page-1/#comment-885</link>
		<dc:creator>Matt Simmons</dc:creator>
		<pubDate>Sun, 05 Jul 2009 16:31:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.cmdln.org/?p=359#comment-885</guid>
		<description>Ah, cool. Not being a developer, I was unfamiliar with the concept of continuous integration. I looked it up (http://www.martinfowler.com/articles/continuousIntegration.html) and it seems useful to the dev teams. 

What are some of the differences in the underlying infrastructure between a normal CVS/SVN environment and a continuous integration setup?</description>
		<content:encoded><![CDATA[<p>Ah, cool. Not being a developer, I was unfamiliar with the concept of continuous integration. I looked it up (<a href="http://www.martinfowler.com/articles/continuousIntegration.html" rel="nofollow">http://www.martinfowler.com/articles/continuousIntegration.html</a>) and it seems useful to the dev teams. </p>
<p>What are some of the differences in the underlying infrastructure between a normal CVS/SVN environment and a continuous integration setup?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
