<?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>cd ~</title>
	<atom:link href="http://www.rottenbytes.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.rottenbytes.info</link>
	<description>/home/nico</description>
	<lastBuildDate>Fri, 21 Oct 2011 10:17:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Cuisine : a chef dashboard</title>
		<link>http://www.rottenbytes.info/2011/10/21/cuisine-a-chef-dashboard/</link>
		<comments>http://www.rottenbytes.info/2011/10/21/cuisine-a-chef-dashboard/#comments</comments>
		<pubDate>Fri, 21 Oct 2011 10:17:30 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Général]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=447</guid>
		<description><![CDATA[ When I wrote the asynchronous chef handler that I presented in the previous post, I had a little idea in mind. being able to track changes made by chef. The idea grew up a little and I now release a little dashboard I wrote. It&#8217;s still in a very early stage of development but [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-thumbnail wp-image-448" title="cuisine" src="http://www.rottenbytes.info/wp-content/uploads/2011/10/cuisine-150x150.jpg" alt="cuisine" width="150" height="150" /> When I wrote the <a href="http://www.rottenbytes.info/2011/07/28/asynchronous-reporting-with-chef/">asynchronous chef handler</a> that I presented in the previous post, I had a little idea in mind. being able to track changes made by chef. The idea grew up a little and I now release a little dashboard I wrote. It&#8217;s still in a very early stage of development but I&#8217;ll try to present the idea behind it.</p>
<p>The changes (including diffs) are pushed in a queue. This queue is consumed by a script and datas are indexed in elasticsearch, an open source search engine. On the top of this I wrote a web interface, based on sinatra and twitter&#8217;s bootstrap) that allow you to see the latest runs, filter out runs with no changes and search on criterias (hostname, updated resources and inside the diffs)</p>
<p>To use this you will need a couple of things :</p>
<ul>
<li>a STOMP broker (I use rabbitmq, but activemq or stompserver will fit too)</li>
<li>an elasticsearch instance (or cluster)</li>
<li>sinatra and its dependencies + the stomp ruby gem</li>
</ul>
<p>The <a href="https://github.com/rottenbytes/Cuisine">code is available</a> on github, feel free to get in touch on freenode IRC, you can find me on the #chef-hacking channel (nickname : nico)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2011/10/21/cuisine-a-chef-dashboard/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Asynchronous reporting with chef</title>
		<link>http://www.rottenbytes.info/2011/07/28/asynchronous-reporting-with-chef/</link>
		<comments>http://www.rottenbytes.info/2011/07/28/asynchronous-reporting-with-chef/#comments</comments>
		<pubDate>Thu, 28 Jul 2011 08:33:45 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Général]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=431</guid>
		<description><![CDATA[ Configuration management tools are awesome. Using them, you are now managing loads of servers, reaching the pub on time and you can focus on really fun stuff. A counterpart is that they almost work in your back : changes are propagated quickly, and even if you store your cookbooks/modules in a VCS, even if [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-432" title="gousset" src="http://www.rottenbytes.info/wp-content/uploads/2011/07/gousset.jpg" alt="gousset" width="150" height="113" /> Configuration management tools are awesome. Using them, you are now managing loads of servers, reaching the pub on time and you can focus on really fun stuff. A counterpart is that they almost work in your back : changes are propagated quickly, and even if you store your cookbooks/modules in a VCS, even if you review them, you still want to know what really happens on your servers. Puppet has a really nice automatic summary part to do that job, and some people are doing <a href="http://www.devco.net/archives/2011/07/03/real_time_puppet_events_and_network_wide_callbacks.php">cool things</a> with it. Chef also has summary of updated resources but they don&#8217;t get back to a master like puppet do. So I wrote a little<a href="http://wiki.opscode.com/display/chef/Exception+and+Report+Handlers"> report handler</a> to push back data to wherever you want to. It is based on the stomp protocol, to be non blocking and easily scale if you have a large number of machine. With this you just need to have a consumer that will process data to your favorite datastore.</p>
<p>I&#8217;ve put that on my <a href="https://github.com/rottenbytes/chef">github chef repo</a>, check the readme for the extensive file list &amp; function.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2011/07/28/asynchronous-reporting-with-chef/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trigger your chef runs with mcollective</title>
		<link>http://www.rottenbytes.info/2011/07/26/trigger-your-chef-runs-with-mcollective/</link>
		<comments>http://www.rottenbytes.info/2011/07/26/trigger-your-chef-runs-with-mcollective/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 09:27:29 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Général]]></category>
		<category><![CDATA[chef]]></category>
		<category><![CDATA[mcollective]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=423</guid>
		<description><![CDATA[ Mcollective has been able to fire up puppetd runs for a while now, via a standalone RPC call or through the puppet commander binary (check it out, spread your load). I wanted to be able to fire up my chef clients with mcollective, to use metadata to filter what should be impacted. So I [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" /> Mcollective has been able to fire up puppetd runs for a while now, via a standalone RPC call or through the puppet commander binary (check it out, spread your load). I wanted to be able to fire up my chef clients with mcollective, to use metadata to filter what should be impacted. So I wrote a little piece of ruby, mostly based on the puppet one, to achieve this. You can now do the following :</p>
<p><span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; font-size: 12px; line-height: 18px; white-space: pre;"> mco rpc chef runonce </span>or  <span style="font-family: Consolas, Monaco, 'Courier New', Courier, monospace; font-size: 12px; line-height: 18px; white-space: pre;">mco rpc chef status</span><br />
The plugin is available on my <a href="https://github.com/rottenbytes/mcollective">github mcollective repository</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2011/07/26/trigger-your-chef-runs-with-mcollective/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mcollective agent, to manage agents</title>
		<link>http://www.rottenbytes.info/2011/03/15/mcollective-agent-to-manage-agents/</link>
		<comments>http://www.rottenbytes.info/2011/03/15/mcollective-agent-to-manage-agents/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 07:37:06 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Général]]></category>
		<category><![CDATA[agent]]></category>
		<category><![CDATA[mcollective]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=417</guid>
		<description><![CDATA[It started like a toy, to learn a little more about mcollective agents but I finally turned into something useful (at least for me). I pushed my agent &#8220;smith&#8221; on my github account. It allows you to install or remove agents within mcollective. I usually use my configuration management tool to deploy such pieces of [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-thumbnail wp-image-418" title="agent_smith" src="http://www.rottenbytes.info/wp-content/uploads/2011/03/agent_smith-150x150.jpg" alt="agent_smith" width="150" height="150" />It started like a toy, to learn a little more about mcollective agents but I finally turned into something useful (at least for me). I pushed my agent &#8220;<a href="https://github.com/rottenbytes/mcollective/blob/master/plugins/agents/smith.rb">smith</a>&#8221; on <a href="https://github.com/rottenbytes">my github account</a>. It allows you to install or remove agents within mcollective. I usually use my configuration management tool to deploy such pieces of software but it can be useful in some case to go without it.</p>
<p>The mandatory internet meme reference : yes xzibit approves.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2011/03/15/mcollective-agent-to-manage-agents/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generic use of chef providers in mcollective</title>
		<link>http://www.rottenbytes.info/2011/03/11/generic-use-of-chef-providers-in-mcollective/</link>
		<comments>http://www.rottenbytes.info/2011/03/11/generic-use-of-chef-providers-in-mcollective/#comments</comments>
		<pubDate>Fri, 11 Mar 2011 20:16:44 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[BOFH Life]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[chef]]></category>
		<category><![CDATA[devops]]></category>
		<category><![CDATA[mcollective]]></category>
		<category><![CDATA[providers]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=412</guid>
		<description><![CDATA[This post follows my previous one, dealing with the reuse of chef providers of chef in mcollective. In the comments Adam Jacob had an interesting word and when I wrote my second agent, to manage package I saw it would be a piece of cake to write a really generic agent, due to the nature [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" />This post follows my <a href="http://www.rottenbytes.info/?p=404">previous</a> one, dealing with the reuse of chef providers of chef in mcollective. In the comments Adam Jacob had <a href="http://www.rottenbytes.info/?p=404#comment-1405">an interesting word</a> and when I wrote my second agent, to manage package I saw it would be a piece of cake to write a really generic agent, due to the nature of chef resource (and the way to invoke them)</p>
<p>So, this is a <a href="https://github.com/rottenbytes/mcollective/blob/master/plugins/agents/chef-resource.rb">generic chef resource mcollective agent</a>, with the associated <a href="https://github.com/rottenbytes/mcollective/blob/master/clients/generic_chefresource.rb">example client code</a>. It anyway deserves an little explanation; it is not mean to work with a command line invocation. Why ? Because I push quite &#8220;complex&#8221; data as the <em>resourceactions</em> parameter. The only way I found to make this work from command line is to use eval on the argument, which is no way acceptable. Anyway I hope some people will find this useful.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2011/03/11/generic-use-of-chef-providers-in-mcollective/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reusing chef providers in mcollective</title>
		<link>http://www.rottenbytes.info/2011/03/08/reusing-chef-providers-in-mcollective/</link>
		<comments>http://www.rottenbytes.info/2011/03/08/reusing-chef-providers-in-mcollective/#comments</comments>
		<pubDate>Tue, 08 Mar 2011 18:59:34 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[BOFH Life]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[chef]]></category>
		<category><![CDATA[devops]]></category>
		<category><![CDATA[mcollective]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=404</guid>
		<description><![CDATA[It has been quite calm for a couple of months here. I have switched job, it explains why I had less time to post some things.I now work at fotolia, and I switched from puppet to chef (no troll intended, I still think puppet is a great tool, please read this).
However, a tool I still [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" />It has been quite calm for a couple of months here. I have switched job, it explains why I had less time to post some things.I now work at fotolia, and I switched from puppet to chef (no troll intended, I still think puppet is a great tool, please <a href="http://www.quora.com/What-are-the-key-reasons-to-choose-Puppet-over-Chef-or-vice-versa/answer/Andrew-Clay-Shafer">read this</a>).</p>
<p>However, a tool I still have is the awesome mcollective. Unfortunately, the most used agents (package, service) relay on puppet providers to do their actions. Fortunately, open source is here, so I wrote a (basic) service agent that uses chef providers to start/stop or restart an agent. It still needs some polish for the status part (ho the ugly hardcoded path) but I was quite excited to share <a href="https://github.com/rottenbytes/mcollective/blob/master/plugins/agents/chef-service.rb">this</a>. Freshly pushed on github !</p>
<p>Thanks to Jordan Sissel for <a href="https://github.com/jordansissel/ruby-minstrel">minstrel</a>, an awesome debug tool, the opscode team for the help on the provider and R.I. Pienaar for mcollective (and the support).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2011/03/08/reusing-chef-providers-in-mcollective/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Mcollective + Cluster SSH</title>
		<link>http://www.rottenbytes.info/2010/10/14/mcollective-cluster-ssh/</link>
		<comments>http://www.rottenbytes.info/2010/10/14/mcollective-cluster-ssh/#comments</comments>
		<pubDate>Thu, 14 Oct 2010 06:59:36 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Général]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=398</guid>
		<description><![CDATA[Just a little script that enables you to launch a cluster ssh based on mcollective discovery capacities. Now you can say &#8220;I want cssh to all my openbsd boxes&#8221; in only one command.
mc-cluster-ssh --wf kernel=OpenBSD
Grab it in my github
]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" />Just a little script that enables you to launch a cluster ssh based on mcollective discovery capacities. Now you can say &#8220;I want cssh to all my openbsd boxes&#8221; in only one command.</p>
<pre style="padding-left: 60px;">mc-cluster-ssh --wf kernel=OpenBSD</pre>
<p><a href="http://github.com/rottenbytes/mcollective/blob/master/clients/mc-cluster-ssh">Grab it</a> in my github</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2010/10/14/mcollective-cluster-ssh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>STOMP-ed nagios</title>
		<link>http://www.rottenbytes.info/2010/09/27/stomp-ed-nagios/</link>
		<comments>http://www.rottenbytes.info/2010/09/27/stomp-ed-nagios/#comments</comments>
		<pubDate>Mon, 27 Sep 2010 19:30:19 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Général]]></category>
		<category><![CDATA[mcollective]]></category>
		<category><![CDATA[monitoring]]></category>
		<category><![CDATA[nagios]]></category>
		<category><![CDATA[stomp]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=393</guid>
		<description><![CDATA[Basing more and more stuff on mcollective means relying more and more on one of its underlying components : the activeMQ middleware, and more precisely the stomp connector. I hit a weird bug a few days ago and realized that I was not functionnaly monitoring this part of the system. The port was bound and [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" />Basing more and more stuff on mcollective means relying more and more on one of its underlying components : the activeMQ middleware, and more precisely the stomp connector. I hit a weird bug a few days ago and realized that I was not <em>functionnaly</em> monitoring this part of the system. The port was bound and responded to connections, subscriptions were possible but messages didn&#8217;t pass through.So I wrote this little <a href="http://github.com/rottenbytes/Scripts/blob/master/monitoring/check_stomp.rb">plugin</a> that makes this possible : it creates a random string, sends it to a queue and then reads the queue to check if the result is the same.</p>
<p>This has been possible with the help of <a href="http://twitter.com/ripienaar">@ripienaar</a>. Thanks for the explanation for the difference between topics &amp; queues !</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2010/09/27/stomp-ed-nagios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Monitoring puppet trough mcollective</title>
		<link>http://www.rottenbytes.info/2010/09/14/monitoring-puppet-trough-mcollective/</link>
		<comments>http://www.rottenbytes.info/2010/09/14/monitoring-puppet-trough-mcollective/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 12:10:18 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[NetAdmin]]></category>
		<category><![CDATA[Puppet]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[mcollective]]></category>
		<category><![CDATA[nagios]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=387</guid>
		<description><![CDATA[I recently switched from puppet daemon to mcollective commander : it kicks the &#8220;stuck in outer space puppet daemon&#8221; feature out of the way and brings me nice features (as load control). To do so I deployed the puppetd agent over my boxes.
As most of the sysadmins say : &#8220;if it&#8217;s not monitored, it doesn&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" />I recently switched from puppet daemon to <a href="http://marionette-collective.org/">mcollective</a> <a href="http://code.google.com/p/mcollective-plugins/wiki/PuppetCommander">commander</a> : it kicks the &#8220;stuck in outer space puppet daemon&#8221; feature out of the way and brings me nice features (as load control). To do so I deployed the puppetd agent over my boxes.</p>
<p>As most of the sysadmins say : &#8220;if it&#8217;s not monitored, it doesn&#8217;t exist&#8221; I had placed a script in cron based on the puppetlast script to report by mail once a day which hosts had not checked in during the last 30 minutes. This method had 2 serious flaws : it runs only once a day (I hate being flooded by mails) and test machines keep nagging you until you remove the yaml files on the puppetmaster. Talking with <a href="http://www.devco.net">Volcane</a> on #mcollective I discovered that the agent was able to report when the client last run, so I decided to use this to check my <a href="http://github.com/rottenbytes/Scripts/blob/master/monitoring/check_mc-puppet.rb">puppet runs freshness with a nagios plugin</a>.</p>
<p>Good bye cron job, say hello nagios.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2010/09/14/monitoring-puppet-trough-mcollective/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SVN agent for Mcollective</title>
		<link>http://www.rottenbytes.info/2010/09/08/svn-agent-for-mcollective/</link>
		<comments>http://www.rottenbytes.info/2010/09/08/svn-agent-for-mcollective/#comments</comments>
		<pubDate>Wed, 08 Sep 2010 17:33:41 +0000</pubDate>
		<dc:creator>Nico</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Puppet]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[mcollective]]></category>
		<category><![CDATA[subversion]]></category>

		<guid isPermaLink="false">http://www.rottenbytes.info/?p=378</guid>
		<description><![CDATA[ Most people that work with puppet use a VCS : subversion, git, CVS, mercurial&#8230; Pick yours. My company uses subversion and each cmmit to the repository needs to be pulled by the master. Since I have two masters, I also want them to be synchronized. Once again it&#8217;s mcollective that comes to the rescue. [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-62" title="eth0" src="http://www.rottenbytes.info/wp-content/uploads/2009/02/eth0.jpg" alt="eth0" width="80" height="103" /> Most people that work with puppet use a VCS : subversion, git, CVS, mercurial&#8230; Pick yours. My company uses subversion and each cmmit to the repository needs to be pulled by the master. Since I have two masters, I also want them to be synchronized. Once again it&#8217;s mcollective that comes to the rescue. I wrote a very simple agent (a 5 minutes work, to be improved) that can update a specified path. Grab it <a href="http://github.com/rottenbytes/mcollective/tree/master/plugins/agents/">here</a>. Once it is deployed you can use a post commit hook that calls it.</p>
<p>Example of mine :</p>

<div class="wp_syntax"><div class="code"><pre class="ruby ruby" style="font-family:monospace;"><span style="color:#008000; font-style:italic;">#!/usr/local/bin/ruby</span>
&nbsp;
<span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'mcollective'</span>
<span style="color:#9966CC; font-weight:bold;">include</span> <span style="color:#6666ff; font-weight:bold;">MCollective::RPC</span>
&nbsp;
mc = rpcclient<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#996600;">&quot;svnagent&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span>
mc.<span style="color:#9900CC;">progress</span> = <span style="color:#0000FF; font-weight:bold;">false</span>
mc.<span style="color:#9900CC;">class_filter</span> <span style="color:#996600;">&quot;puppet::master&quot;</span>
mc.<span style="color:#9900CC;">update</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#ff3333; font-weight:bold;">:path</span> <span style="color:#006600; font-weight:bold;">=&gt;</span> <span style="color:#996600;">&quot;/etc/puppet&quot;</span><span style="color:#006600; font-weight:bold;">&#41;</span></pre></div></div>

<p>The agent will only be called on machines being puppet masters by using the class filter.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.rottenbytes.info/2010/09/08/svn-agent-for-mcollective/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

