justworks-hardware-vendors
Ok, so micro rant time: this is the effect of not taking things upstream: hardware doesn’t work Out Of The Box. Very briefly, I purchased a Vodafone prepaid mobile broadband package today, which comes...
View Articledmraid (fakeraid) mirror + striped
While some folk look down on fakeraid (that is BIOS based RAID-until-OS-takes-over) solutions, I think they are pretty neat: they let a user get many of the benefits of dedicated controller cards at a...
View ArticlePublic service announcement: signals implies reentrant code even in Python
This is a tiny PSA prompted by my digging into a deadlock condition in the Launchpad application servers. We were observing a small number of servers stopping cold when we did log rotation, with no...
View ArticleReading list
I’ve recently caught up on a bunch of reading some of which are worth commending. Switch – documents the factors that cause changes to fail (both in organisations and personal stuff), and provides a...
View ArticleLess SPOFs: pyjunitxml, testscenarios
I’ve made the Testtools committers team own both the project and the trunk branch for both pyjunitxml and testscenarios. This removes me as a SPOF if anything needs doing in those projects – any...
View ArticleRunning juju against a private openstack instance.
My laptop has somewhat less than 1/2 the grunt of my desktop at home, but I prefer to work on it as I can go sit in the sun etc, very hard to do that with a mini tower case However, running everything...
View ArticleReprap driver pinouts
This is largely a memo-to-my-future self, but it may save some time for someone else facing what I was last weekend. I’ve been putting together a Reprap recently, seeded by the purchase of a partially...
View Articleminimising downtime for schema changes with postgresql
Edits: Corrected the description of the slony bug, and noted that there is a typo on the lazr_postgresql PYPI page. Two years ago Launchpad did schema changes once a month. Everyone would cross their...
View ArticleWhy platform specific package systems exist and won’t go away
A while back mdz blogged about challenges facing Ubuntu and other Linux distributions. He raises the point that runtime libraries for Python / Ruby etc have a unique set of issues because they tend to...
View ArticleLaunchpads page performance report now reusable
Thanks to Corey Goldberg, one of my colleagues @ Canonical, the page performance report can now be used on regular Apache log files, rather than just the zserver trace log files that Launchpad’s middle...
View ArticleMulti-machine parallel testing of nova with testrepository
I recently added a formal interface to testrepository to enable cross-machine scaling of test runs. As testrepository is still a static scheduler, this isn’t perfect, but its quite a minimal interface,...
View ArticleLaunchpadlib without gnome-keyring
Recently I’ve been doing my personal development SSH’d into my personal laptop. I found that launchpadlib (which various projects use for release automation) was failing – the gnome keyring API threw...
View ArticleTime to revise the subunit protocol
Subunit is seven and a half years old now – Conrad Parker and I first sketched it up at a CodeCon – camping and coding, a brilliant combination – in mid 2005. revno: 1 committer: Robert Collins...
View ArticleMore subunit needs
Of course, as happens sadly often, the scope creeps.. Additional pain points Zope’s test runner runs things that are not tests, but which users want to know about – ‘layers’. At the moment these are...
View ArticleFirst experience implementing StreamResult
My last two blog posts were largely about the needs of subunit, but a key result of any protocol is how easy working with it in a high level language is. In the weekend and evenings I’ve done an...
View ArticleSimpler is better – a single event type for StreamResult
StreamResult, covered in my last few blog posts, has panned out pretty well. Until that is, that I sat down to do a serialised version of it. It became fairly clear that the wire protocol can be very...
View ArticleEl cheapo 10Gbps networking
I’ve been hitting the limits of gigabit ethernet at home for quite a while now, and as I spend more time working with cloud technologies this started to frustrate me. I’d heard of other folk getting...
View Articlesubunit version 2 progress
Subunit V2 is coming along very well. Current status: I have a complete implementation of the StreamResult API up as a patch for testtools. Thats 2K LOC including comeprehensive tests. Similarly, I...
View ArticleUsing vanilla novaclient with Rackspace cloud
The Rackspace docs describe how to use rackspace’s custom extensions, but not how to use plain ol’ nova. Using plain nova is important if you want cloud portability in your scripts. So – for future...
View ArticleSubunit and subtests
Python 3 recently introduced a nice feature – subtests. When I was putting subunit version 2 together I tried to cater for this via a heuristic approach – permitting the already known requirement that...
View Article