<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Automation Inc. &#187; capistrano</title>
	<atom:link href="http://blog.frameos.org/tag/capistrano/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.frameos.org</link>
	<description>Finding the perfect blend between fun and money</description>
	<lastBuildDate>Tue, 03 Jan 2012 19:20:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Capistrano: YAW-TOY-CRAT</title>
		<link>http://blog.frameos.org/2008/07/12/capistrano-yaw-toy-crat/</link>
		<comments>http://blog.frameos.org/2008/07/12/capistrano-yaw-toy-crat/#comments</comments>
		<pubDate>Sat, 12 Jul 2008 10:49:51 +0000</pubDate>
		<dc:creator>rubiojr</dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[capistrano]]></category>

		<guid isPermaLink="false">http://rubiojr.netcorex.org/blog/?p=31</guid>
		<description><![CDATA[Or Yet Another Way To Organize Your Capistrano Roles and Tasks.I use Capistrano everyday. To deploy a Tomcat WAR, to search for a domU across many dom0s, to deploy and update ssh public keys across many servers, to create user accounts and change their credentials, etc.It makes those little repetitive tasks more enjoyable. It makes [...]]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fblog.frameos.org%2F2008%2F07%2F12%2Fcapistrano-yaw-toy-crat%2F">
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fblog.frameos.org%2F2008%2F07%2F12%2Fcapistrano-yaw-toy-crat%2F&amp;style=normal&amp;b=2" height="61" width="50" />
			</a>
		</div>Or Yet Another Way To Organize Your Capistrano Roles and Tasks.<br /><br />I use <a href="http://capify.org">Capistrano</a> everyday. To deploy a Tomcat WAR, to search for a domU across many dom0s, to deploy and update ssh public keys across many servers, to create user accounts and change their credentials, etc.<br />It makes those little repetitive tasks more enjoyable. It makes my sysadmin life easier.<br /><br />To organize all the capistrano tasks and roles I use a little trick in my $HOME/.caprc file:<br /><br /><code><br /># vim: filetype=ruby<br />#<br /># Roles must be the first files loaded, before any task files<br />#<br />Dir.glob("#{ENV['HOME']}/.capistrano/roles/*.cap") do |file|<br />    load file<br />end<br /><br />#<br /># Task files<br />#<br />Dir.glob("#{ENV['HOME']}/.capistrano/tasks/*.cap") do |file|<br />    load file<br />end<br /><br /><br />I put my roles in $HOME/.capistrano/roles and my tasks in </code><code>$HOME/.capistrano/tasks. That way, all my roles and tasks are loaded automatically whenever I use cap.<br /><br />I've found this is a great way to keep my capfiles organized. However, there is a gotcha: If you don't specify :roles in your task and you don't use the ROLES environment variable, all the roles defined will be used next time you run a task!<br />Fortunately, this is easily avoided adding the following line at the end of the .caprc file:<br /><br />ENV['ROLES'] = '' if ENV['ROLES'].nil?<br /><br />That way, I'm always forced to use ROLES when running a task.<br /><br />Long live to Capistrano!<br /></code>]]></content:encoded>
			<wfw:commentRss>http://blog.frameos.org/2008/07/12/capistrano-yaw-toy-crat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

