<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Musings of a Launchpad Engineer</title>
	<atom:link href="http://bigjools.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://bigjools.wordpress.com</link>
	<description>A personal blog about being a Launchpad developer</description>
	<lastBuildDate>Thu, 05 Jan 2012 07:46:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='bigjools.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Musings of a Launchpad Engineer</title>
		<link>http://bigjools.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://bigjools.wordpress.com/osd.xml" title="Musings of a Launchpad Engineer" />
	<atom:link rel='hub' href='http://bigjools.wordpress.com/?pushpress=hub'/>
		<item>
		<title>A KDE user&#8217;s view of Unity &#8211; Day One</title>
		<link>http://bigjools.wordpress.com/2011/11/09/a-kde-users-view-of-unity-day-one/</link>
		<comments>http://bigjools.wordpress.com/2011/11/09/a-kde-users-view-of-unity-day-one/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 18:03:34 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=63</guid>
		<description><![CDATA[As most of my colleagues know, I am a KDE fan.  I love using Kubuntu, despite its lack of &#8220;official&#8221; attention from Canonical. I&#8217;ve heard all this fuss about Unity and I&#8217;ve no real idea what it&#8217;s all about, so I thought I&#8217;d give it a try.  Today will be my first full day of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=63&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As most of my colleagues know, I am a KDE fan.  I love using Kubuntu, despite its lack of &#8220;official&#8221; attention from Canonical.</p>
<p>I&#8217;ve heard all this fuss about Unity and I&#8217;ve no real idea what it&#8217;s all about, so I thought I&#8217;d give it a try.  Today will be my first full day of using it (and the last for 2 weeks since I am heading out on vacation) and I will attempt to write up my experiences.  It&#8217;s a bit of a brain dump, but here follows day one!</p>
<h2>First impressions</h2>
<p>My initial impression is that it looks pretty slick, but not as pretty as KDE4.  I&#8217;m clicking around a bit to see what&#8217;s what and I&#8217;ve immediately noticed a few things that I will miss from KDE:</p>
<ul>
<li>There doesn&#8217;t seem to be a way to put widgets on the panel &#8211; I want my CPU/MEM/SWAP meter! (Some time later I found &#8220;indicators&#8221; in the Software Centre, there&#8217;s a system load indicator, but after installing there&#8217;s no obvious way of using it)</li>
<li>I am used to ctrl-F&lt;N&gt; to switch virtual desktops, I can&#8217;t see a way of emulating that.  (Ok I found the setting an hour later, great)</li>
</ul>
<div>I&#8217;m also not sure about the global menu thing, I&#8217;m finding it a lot more effort to mouse around to get to menus.</div>
<div>Right, so let&#8217;s try and configure things as I like them.  First, I am a focus-follows-mouse junkie (I first used X Windows in the early 1990s with twm!) so let&#8217;s poke around in the settings.  Hmmm, doesn&#8217;t seem like I can change that&#8230; Ok some quick Googling reveals I have to install a so-called compiz settings manager and run ccsm. Right, I can set it in there.  That&#8217;s bizarre that I have to install something to edit more settings!</div>
<div>Now, focus-follows-mouse  has also made the global menu even less desirable as it changes to whatever app I mouse through to get to it. Eugh.  (I realise this is a concious design decision by the Unity team, rather than a shortcoming though &#8211; doesn&#8217;t mean I have to like it!)</div>
<h2>Visual differences</h2>
<div>Ok so I&#8217;ve had some more time to get used to the layout now.  More thoughts:</div>
<div>
<ul>
<li>The icons on the left have some weird triangles on them, some solid some not.  I&#8217;ve no idea what they mean, but I am sure I will find out at some point.</li>
<li>It seems like I have to run an application before I can add it to the left panel as a quick launcher (by setting &#8220;Keep in Launcher&#8221;)</li>
<li>The KDE file browser Dolphin is massively better than Nautilus (I&#8217;ll write more about that some other time)</li>
<li>The mail indicator is a nice idea at the top right, but it wants to use Evolution.  I don&#8217;t! How can I make it use kmail?</li>
<li>Having a music player integrated into the volume indicator is a nice touch. I&#8217;d like to use Amarok though; it lists it but there&#8217;s no controls for it.</li>
<li>Clicking on the time indicator shows a calendar, like KDE.  I suspect I can&#8217;t use an arbitrary calendar app though, it seems tied to evolution.</li>
<li>The logout button shows a load of seemingly arbitrary menu items. Odd.</li>
</ul>
<div>
<h2>Interaction</h2>
</div>
</div>
<div>As a KDE user I love krunner (a bit like Gnome-Do). So one my reactions is to hit alt-f2 when I want to run something.  I see that it starts up a smiliar dialog as hitting the button at the top left.  I started typing the name of the program I wanted to run, &#8220;kmail&#8221;, and it found it quickly.  I hit &#8220;enter&#8221; to run it but nothing happened.  I noticed that the kmail icon was not on the list of icons found any more!  I then noticed that if I backspace my input one character, so it says &#8220;kmai&#8221;, then the kmail icon appears again.  This must be a bug I guess.</div>
<div>I decided to have a play with the menu system a bit.  It seems a bit more work to find stuff than simply mousing around the K menu but I&#8217;ll keep trying it out and see how I get on.  My initial impression is that it needs some work though as it feels as though it&#8217;s trying to hide results for no reason until you click on &#8220;See N more results →&#8221;.  I don&#8217;t understand why it doesn&#8217;t put a scroll bar up and show everything right away, I&#8217;m sure this would be quicker to navigate.</div>
<div>Dealing with windows:</div>
<div>
<ul>
<li>The window controls have moved to the opposite corner.  Not a problem, but hard to get used to.</li>
<li>alt-tab selects windows that are not on the current virtual desktop.  This is *really* annoying <img src='http://s0.wp.com/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </li>
</ul>
<div>The final point to note today is that there appears to be no way to save my session and have it restored at login.  This is a feature I rely on extremely heavily in KDE and I am really sad to see it not available in Unity.</div>
</div>
<div>I hope to write ongoing reports over the next week or so.  I am actually away on holiday so it will be sporadic, but I&#8217;m sure I will find some moments.</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/63/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/63/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/63/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=63&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2011/11/09/a-kde-users-view-of-unity-day-one/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>Twisted is great!</title>
		<link>http://bigjools.wordpress.com/2010/09/10/twisted-is-great/</link>
		<comments>http://bigjools.wordpress.com/2010/09/10/twisted-is-great/#comments</comments>
		<pubDate>Fri, 10 Sep 2010 16:27:17 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=52</guid>
		<description><![CDATA[I&#8217;ve been learning a lot of Twisted lately and I&#8217;m really enjoying it.  Back in the day when I did C++ coding I almost exclusively used event-driven programming, so getting back into it again with a Python twist (pun fully intended) is making my coding juices flow once more. One of the drivers for me [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=52&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been learning a lot of <span style="color:#888888;"><a href="http://twistedmatrix.com">Twisted</a></span> lately and I&#8217;m really enjoying it.  Back in the day when I did C++ coding I almost exclusively used event-driven programming, so getting back into it again with a Python twist (pun fully intended) is making my coding juices flow once more.</p>
<p>One of the drivers for me to learn more about it is to be able to maintain the <a href="https://launchpad.net/builders">Launchpad Build Farm</a> manager, which is written mostly using Twisted events.  When it was first put together by <a href="http://cprov.blogspot.com/">Celso</a> to replace the old slave scanner, it was quite a tough task to slot it into the existing Launchpad code base without too much disruption.  He did a pretty good job, but now the code is in need of an overhaul as it scales quite badly.</p>
<p>There&#8217;s three main reasons that it scales badly:</p>
<ol>
<li>It scans each builder in turn once per &#8220;cycle&#8221; that it wakes up to do its scan</li>
<li>It synchronously uploads build results, blocking further progress until the upload completes</li>
<li>It synchronously polls the builders before setting up Twisted Deferreds to do the actual dispatch in parallel.</li>
</ol>
<p><a href="http://jelmer.vernstok.nl/blog/">Jelmer</a> is currently tackling (2) above, and I plan on sprinting with <a href="http://mumak.net">Jono</a> in a couple of weeks to tackle (3).</p>
<p>I started tackling (1) a while ago now as it was obvious there was a better way.  So now instead of polling each builder in turn, it sets up a separate Deferred event for each builder in the system and lets it fire independently of all the others.  Because the code is not really threaded, there are no race conditions or exclusivity to worry about and we get a couple of really big wins from this approach:</p>
<ul>
<li>If there&#8217;s any kind of exception during the scan, it only takes out the current scan cycle on a single builder, not all of them.  Other builders continue to dispatch quite happily.</li>
<li>We can now overlap events better.  Previously, we did all the dispatching at the same time and that involves mostly sat waiting for the reset scripts to finish on the virtual builders (which sometimes take up to 30 seconds).  Now, we can kick that off and poll another builder or upload a build at the same time.  Throughput has increased slightly but the overall effect is dramatic on the build farm page as you no longer see builders idle for long periods even though there&#8217;s a big queue.</li>
</ul>
<p>This code went live in production a month ago and we had a massive problem with it immediately that I had not thought of.  Because the builder reset events (which are a sub process) now happen in parallel with other non-Twisted events they get interrupted with SIGCHLD when the sub process finishes &#8211; this manifests itself as an EINTR exception in the middle of a comms operation with another builder.  We added some code to retry the operation in this case and it finally worked!  I&#8217;m really happy that this was the only problem. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>However, the really, really big win in scalability will come with <a href="https://code.launchpad.net/~jelmer/launchpad/506256-remove-popen/+merge/34549">Jelmer&#8217;s fix</a> which will land Real Soon Now.  This will remove the blocking that happens when uploading builds &#8211; a block that can last for over a minute for large uploads.  I can&#8217;t wait to see this branch land.</p>
<p>Here&#8217;s to more Twisted!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/52/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/52/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/52/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=52&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2010/09/10/twisted-is-great/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>Launchpad SFTP upload service</title>
		<link>http://bigjools.wordpress.com/2010/08/27/launchpad-sftp-upload-service/</link>
		<comments>http://bigjools.wordpress.com/2010/08/27/launchpad-sftp-upload-service/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 15:59:39 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=43</guid>
		<description><![CDATA[We launched (forgive the pun) the SFTP service to upload packages securely to Ubuntu and PPAs a few months ago, but I&#8217;m not seeing much use of it.  I would really appreciate it if more people would give it a go! It also has the bonus that it doesn&#8217;t suffer from the bug where uploads [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=43&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>We launched (forgive the pun) the SFTP service to upload packages securely to Ubuntu and PPAs a few months ago, but I&#8217;m not seeing much use of it.  I would really appreciate it if more people would give it a go!</p>
<p>It also has the bonus that it doesn&#8217;t suffer from the bug where uploads sometimes hang with 1k to go, as on the regular FTP server.</p>
<p>Configure your dput.cf with these changes for Ubuntu:</p>
<pre>method = sftp
incoming = ubuntu/
login = &lt;your LP account name here&gt;</pre>
<p>For PPAs it&#8217;s similar, just make sure your fqdn and incoming are set appropriately.</p>
<p>Let me know in the comments how you get on.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/43/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/43/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/43/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=43&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2010/08/27/launchpad-sftp-upload-service/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>Feeling productive?</title>
		<link>http://bigjools.wordpress.com/2010/02/12/feeling-productive/</link>
		<comments>http://bigjools.wordpress.com/2010/02/12/feeling-productive/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 13:38:10 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=36</guid>
		<description><![CDATA[As the lead on the Launchpad Soyuz project, I have to deal with a lot of different tasks at the same time.  I hate this as much as the next engineer, but burying my head in the sand and hoping things will just be all right simply won&#8217;t work. At the end of the day [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=36&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As the lead on the <a title="Launchpad Soyuz" href="http://launchpad.net/soyuz">Launchpad Soyuz</a> project, I have to deal with a lot of different tasks at the same time.  I hate this as much as the next engineer, but burying my head in the sand and hoping things will just be all right simply won&#8217;t work.</p>
<p>At the end of the day I was feeling really unproductive and anxious about time wasted &#8211; I&#8217;d sit back and think, what did I do today?  I felt really busy but I can&#8217;t remember what the heck I&#8217;ve been doing! Even worse, I&#8217;d leave my office at the end of the day in a bad mood and the 30 seconds it takes to get back into the house is not enough to ease the tensions, which made it hard to interact with my wife and kids.  I want to reclaim that precious hour between finishing work and the kids going to bed!</p>
<p>So, what can I do about this?</p>
<p>Three things:</p>
<p>1. I made a conscious effort to finish my major work items 30 minutes before leaving the office and to spend those 30 minutes doing all the simple tasks that you know you need to sort out but never get around to doing.  This has had a dramatic affect on not only how I feel when I finish, but also I get the warm fuzzy feeling of having cleared out stuff that was niggling me at the back of my brain.</p>
<p>2. I have eschewed technology in favour of the classic pen and paper!  I used to keep TODO lists electronically, but I found this hard to keep up with as they were always hidden by other windows on another virtual desktop somewhere.  So now,  each week I start on a fresh piece of paper and write down all the things I know I need to do, with a little box next to them.  When I&#8217;ve done that task, I can put a great big satisfying tick next to it.  At the end of each day I can see visible progress.  This is very uplifting!  I start a new sheet each week so that the TODO list is not cluttered, and it also forces me to think of anything I missed.</p>
<p>3. Take regular breaks.  I know, this is easier said than done.  Michael Nelson put me on to the <a href="http://www.pomodorotechnique.com/">Pomodoro Technique</a> which while I don&#8217;t follow religiously, does give some effective tips on how to time-box your activities.</p>
<p>If you&#8217;ve got any more tips, or used mine and found them useful, I&#8217;d love to hear about it!  Please leave a comment.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/36/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/36/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/36/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=36&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2010/02/12/feeling-productive/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>Success in Wellington</title>
		<link>http://bigjools.wordpress.com/2010/01/22/success-in-wellington/</link>
		<comments>http://bigjools.wordpress.com/2010/01/22/success-in-wellington/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 12:10:07 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=20</guid>
		<description><![CDATA[One of the  things that Launchpad is working on is the daily builds project, where we take a source branch, a recipe and turn it into a source package that can be built. It turns out that this is quite hard because you need a secure environment to run the Bazaar recipe builder in.  Fortunately [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=20&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the  things that Launchpad is working on is the daily builds project, where we take a source branch, a <a href="https://wiki.ubuntu.com/DailyBuilds/BzrBuilder" target="_blank">recipe</a> and turn it into a source package that can be built.</p>
<p>It turns out that this is quite hard because you need a secure environment to run the Bazaar recipe builder in.  Fortunately we already have the <a title="Launchpad Build Farm" href="http://launchpad.net/builders" target="_blank">Launchpad Build Farm</a>!  So, on January 11th the Soyuz and Codehosting teams, plus Launchpad Strategist <a href="http://launchpad.net/~jml" target="_blank">Jono Lange</a> and community contributor <a href="http://launchpad.net/~wgrant" target="_blank">William Grant</a> all met at the <a title="West Plaza Hotel" href="//westplaza.co.nz/" target="_blank">West Plaza Hotel</a> in Wellington, New Zealand for a week-long coding sprint with the goal of getting a recipe build job through the build farm before the week was out.</p>
<div id="attachment_23" class="wp-caption alignright" style="width: 310px"><a href="http://bigjools.files.wordpress.com/2010/01/dsc_0297.jpg"><img class="size-medium wp-image-23" title="The Team" src="http://bigjools.files.wordpress.com/2010/01/dsc_0297.jpg?w=300&#038;h=199" alt="" width="300" height="199" /></a><p class="wp-caption-text">The team hard at work</p></div>
<p>The amount of work was pretty sizeable, but we&#8217;d already done quite a lot of preparatory work before leaving so that non-Soyuz developers could get involved from day one.</p>
<p>We split the task into a few areas:</p>
<ul>
<li>Writing the code that runs on the build slave itself</li>
<li>Job dispatching</li>
<li>Job collection</li>
<li>Job candidate selection</li>
<li>Creating a generalised build infrastructure to make it easy to plug in new job types</li>
</ul>
<p>The team split into coding pairs that mostly lasted the week and there were no bloodied noses!  We had a strict rule that no pair could contain two people from the same Launchpad team, so that we could spread the knowledge around better.  This worked out really well.</p>
<p>The local coffee shop certainly had plenty of custom that week!  But by the end of it, on Friday afternoon at about 5:45pm, we finally got a recipe build job to run through a local Launchpad instance on William&#8217;s laptop and eventually turned into a binary package.  Success!</p>
<p>We&#8217;ll be building on this work in the next couple of months so that it has a UI that will allow a user to click on a branch and get it built and uploaded to their PPA.  It&#8217;s all very cool!</p>
<p>Finally, huge thanks to everyone involved, including the hotel.  It was the best wifi/internet anyone had ever had at any hotel, ever.</p>
<div id="attachment_22" class="wp-caption alignleft" style="width: 310px"><a href="http://bigjools.files.wordpress.com/2010/01/dsc_0298.jpg"><img class="size-medium wp-image-22" title="Bjorn, William and Michael" src="http://bigjools.files.wordpress.com/2010/01/dsc_0298.jpg?w=300&#038;h=199" alt="" width="300" height="199" /></a><p class="wp-caption-text">Bjorn, William and Michael</p></div>
<div id="attachment_19" class="wp-caption alignright" style="width: 310px"><a href="http://bigjools.files.wordpress.com/2010/01/dsc_0337.jpg"><img class="size-medium wp-image-19" title="Success in Wellington" src="http://bigjools.files.wordpress.com/2010/01/dsc_0337.jpg?w=300&#038;h=199" alt="" width="300" height="199" /></a><p class="wp-caption-text">The team celebrates after a long week</p></div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/20/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/20/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/20/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=20&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2010/01/22/success-in-wellington/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>

		<media:content url="http://bigjools.files.wordpress.com/2010/01/dsc_0297.jpg?w=300" medium="image">
			<media:title type="html">The Team</media:title>
		</media:content>

		<media:content url="http://bigjools.files.wordpress.com/2010/01/dsc_0298.jpg?w=300" medium="image">
			<media:title type="html">Bjorn, William and Michael</media:title>
		</media:content>

		<media:content url="http://bigjools.files.wordpress.com/2010/01/dsc_0337.jpg?w=300" medium="image">
			<media:title type="html">Success in Wellington</media:title>
		</media:content>
	</item>
		<item>
		<title>Soyuz 3.0 review</title>
		<link>http://bigjools.wordpress.com/2009/09/24/soyuz-3-0/</link>
		<comments>http://bigjools.wordpress.com/2009/09/24/soyuz-3-0/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 09:28:45 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=14</guid>
		<description><![CDATA[The Soyuz team was very, very busy over the last year fixing lots of bugs and adding plenty of new features.  These are the highlights that I&#8217;d like to mention! New features Multiple PPAs per person &#8211; split your packages into different repositories without the hassle of creating new LP users Karma for uploads! Distro [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=14&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The Soyuz team was very, very busy over the last year fixing lots of bugs and adding plenty of new features.  These are the highlights that I&#8217;d like to mention!</p>
<h2>New features</h2>
<ul>
<li> <strong>Multiple PPAs per person</strong> &#8211; split your packages into different repositories without the hassle of creating new LP users</li>
<li> <strong>Karma for uploads! </strong> Distro and PPA uploaders (and the package creator if different) will be recognised for their work and get karma.</li>
<li><strong> Massively improved webservice APIs</strong> to control various operations, such as copying packages, manipulating builds, inspecting PPAs etc.  Allows script-based control of many soyuz-related operations.</li>
<li><strong> Hugely faster build farm scanner,</strong> builds are dispatched a LOT quicker now.  That means there&#8217;s less waiting around for your packages to get built.</li>
<li> <strong>Private PPA subscriptions</strong> / tokens.  People can now control who is able to download their PPA software.</li>
<li><strong>Package sets</strong> and their upload ACLs implemented for Ubuntu.  Karmic and onwards will be using package sets for upload permissioning.</li>
<li> <strong>Security in Soyuz. </strong>Complete support for the Canonical security team to use a private PPA and directly unembargo packages from it</li>
</ul>
<h2>3.0 UI</h2>
<p>We also did a lot of complete page redesigns for 3.0:</p>
<ul>
<li> PPA page split into two pages; one user-focused, one developer-focused</li>
<li>New build page, with a cleaner look</li>
<li> New global /builders page; sortable table data and a time-based estimate of the queue sizes</li>
<li>New distribution source package release page; much better presentation of data</li>
<li> New distribution source package page; makes more use of upstream package description/logo etc.</li>
<li> Distro series source package release page gets a new layout</li>
<li>Builder +admin and builder +edit collapsed into a single page</li>
<li>New builder page</li>
</ul>
<p>But the work doesn&#8217;t stop here.  We&#8217;re already <a href="https://dev.launchpad.net/VersionFourDotO/Soyuz">thinking about 4.0</a>!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/14/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=14&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2009/09/24/soyuz-3-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>Soyuz template conversions all done!</title>
		<link>http://bigjools.wordpress.com/2009/09/11/soyuz-template-conversions-all-done/</link>
		<comments>http://bigjools.wordpress.com/2009/09/11/soyuz-template-conversions-all-done/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 11:09:11 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=12</guid>
		<description><![CDATA[Thanks to the hard work from everyone in the Soyuz team, the Soyuz effort to convert all our templates to the new 3.0 UI standard is all done!  If you&#8217;re a beta tester, the new pages can be seen on on the edge service already. Many of the changes were complete page re-designs based on [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=12&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Thanks to the hard work from everyone in the Soyuz team, the Soyuz effort to <a href="http://people.canonical.com/~beuno/conversions.html">convert all our templates</a> to the new 3.0 UI standard is all done!  If you&#8217;re a beta tester, the new pages can be seen on on the edge service already.</p>
<p>Many of the changes were complete page re-designs based on better knowledge of use-cases that has been gathered over the years.  There was certainly a lot of dust on some of them!</p>
<p>There are still some minor tweaks to be made, but all feedback is most welcome.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=12&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2009/09/11/soyuz-template-conversions-all-done/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>A foray into virtual machines</title>
		<link>http://bigjools.wordpress.com/2009/06/25/a-foray-into-virtual-machines/</link>
		<comments>http://bigjools.wordpress.com/2009/06/25/a-foray-into-virtual-machines/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 20:18:32 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>
		<category><![CDATA[testing]]></category>
		<category><![CDATA[virtual machine]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=6</guid>
		<description><![CDATA[One of the things that&#8217;s frustrating about being a Launchpad Developer is waiting three hours for the test suite to complete.  It&#8217;s always irked me that my quad-core sat there with three idle cores, and parallelising the tests would be tough, so I thought I&#8217;d try and partition the tests across some virtual machines. I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=6&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the things that&#8217;s frustrating about being a Launchpad Developer is waiting three hours for the test suite to complete.  It&#8217;s always irked me that my quad-core sat there with three idle cores, and parallelising the tests would be tough, so I thought I&#8217;d try and partition the tests across some virtual machines.</p>
<p>I know pretty much nothing about VMs so I was pretty pleased to come across this <a href="https://help.ubuntu.com/community/JeOSVMBuilder">JeOS VMBuilder</a> resource!  I got my first VM built pretty quick with it, but then, what next?  The instructions don&#8217;t tell me how to actually run up my new VM.</p>
<p>So, I had a little chuckle to myself when I saw this <a href="http://blog.dustinkirkland.com/2009/06/kvms-inside-of-byobu.html">blog post from Dustin Kirkland</a> just appear!  I&#8217;m going to try his suggestions out now and see how it works out, but it looks like just what I need.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/6/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=6&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2009/06/25/a-foray-into-virtual-machines/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
		<item>
		<title>Build retrying and rescoring via the webservice</title>
		<link>http://bigjools.wordpress.com/2009/06/15/build-retrying-and-rescoring-via-the-webservice/</link>
		<comments>http://bigjools.wordpress.com/2009/06/15/build-retrying-and-rescoring-via-the-webservice/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 10:00:21 +0000</pubDate>
		<dc:creator>bigjools</dc:creator>
				<category><![CDATA[Launchpad]]></category>

		<guid isPermaLink="false">http://bigjools.wordpress.com/?p=3</guid>
		<description><![CDATA[I recently added functionality to Launchpad so that you can retry and re-score builds via the webservice API.  This was the number one requested API feature from PPA users and Ubuntu packagers alike! It&#8217;s trivial to use: &#62;&#62;&#62; ubuntu = launchpad.distributions['ubuntu'] &#62;&#62;&#62; main_archive = ubuntu.main_archive &#62;&#62;&#62; sources = main_archive.getPublishedSources(source_name='my_package_name') &#62;&#62;&#62; builds = sources[0].getBuilds() &#62;&#62;&#62; for [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=3&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I recently added functionality to Launchpad so that you can retry and re-score builds via the webservice API.  This was the number one requested API feature from PPA users and Ubuntu packagers alike!</p>
<p>It&#8217;s trivial to use:</p>
<pre style="padding-left:30px;">&gt;&gt;&gt; ubuntu = launchpad.distributions['ubuntu']
&gt;&gt;&gt; main_archive = ubuntu.main_archive
&gt;&gt;&gt; sources = main_archive.getPublishedSources(source_name='my_package_name')
&gt;&gt;&gt; builds = sources[0].getBuilds()
&gt;&gt;&gt; for build in builds:
...     build.rescore(score=1000)
...     build.retry()</pre>
<p>`rescore` requires that you have buildd admin privileges.   `retry` simply requires that you have permission to upload the source.</p>
<p>A more advanced example is to fetch all builds that are failed in a series:</p>
<pre style="padding-left:30px;">&gt;&gt;&gt; karmic = ubuntu.getSeries(name_or_version="karmic")
&gt;&gt;&gt; failed_states = (
...     'Failed to build',
...     'Dependency wait',
...     'Chroot problem',
...     'Failed to upload',
...     )
&gt;&gt;&gt; builds = []
&gt;&gt;&gt; for build_state in failed_states:
...     builds.extend(
...         karmic.getBuildRecords(build_state=build_state))</pre>
<p>This will potentially return builds that are superseded so they need to be filtered to see if the build&#8217;s source is published.  This is something we&#8217;re going to fix soon, so that you can specify that you only want builds with published sources in the getBuildRecords() call.</p>
<pre></pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bigjools.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bigjools.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/bigjools.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/bigjools.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bigjools.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bigjools.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bigjools.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bigjools.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=bigjools.wordpress.com&amp;blog=8062068&amp;post=3&amp;subd=bigjools&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://bigjools.wordpress.com/2009/06/15/build-retrying-and-rescoring-via-the-webservice/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1ac1e2da073b3c1a979e763e710102eb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bigjools</media:title>
		</media:content>
	</item>
	</channel>
</rss>
