Wednesday 28 October 2009

Checklist announcement

I've been running EC2 AMI tests for a little while now, and it quickly became apparent
that many if not all of the tests could be automated and would then probably be much more
interesting to run -- that, and just the automation process is really interesting to work on.

At the moment, it's only a branch that I've registered in its own
project: lp:checklist. Its project page is here: https://edge.launchpad.net/checklist

You can get started using checklist by grabbing it from Bazaar (since there is no official
release yet):

bzr branch lp:checklist


It's possible that a lot of the work I've done could just as well have been included into other
tools, like checkbox, but for starters, I was mostly interested in getting some basic stuff to
work, and worrying about the other details later.


At this point, checklist is able to run commands over ssh, locally, and the most interesting
feature is that it can also create EC2 instances (using python-boto), which it would then ssh
onto to run a testcase.

Checklist also is all configured using an easy to use configuration file format: ini files. It
can look at the stdout and stderr of the commands run in order to check for success or failure
using regexes, which will give a fairly high level of control to someone writing special tests.

Thinking about it more, I'm also going to be using it to remotely verify machines that have been
kickstarted to make sure the unattended installs run properly and do everything required. The
fact that it can run tests on a remote machine is definitely a plus when trying to test
kickstarted systems from an isolated network.

Don't hesitate to branch checklist and provide me with patches :)

No comments: