Skip to content

Commit level build and testing of Gnome on Ubuntu: Juju + JHBuild + Canonistack + Jenkins

October 1, 2012

I was working on automating commit level building and testing of the gnome stack, and one of the painful and boring task is to setup the development and testing environment. Especially when you know that developers will have to use the same environment to reproduce failures found with testing and the QA Lab has restricted access.

So I went the Juju way and the result is a JHBuild charm .

This charm can be set up for manual use of JHBuild or automated building and testing. It is currently deployed in the Ubuntu QA Lab to build and test the gnome-core moduleset (197 modules) on Quantal.

Deploying JHBuild is as easy as configuring the service in config.yaml to your needs, bootstrapping juju and deploying jhbuild. Depending on the number of modules you want to build, you’ll need a medium or bigger instance type. Which consists in the following instructions:

1. Bootstrap the environment and deploy the service

$ juju bootstrap --constraints "instance-type=m1.medium"
$ juju deploy --config gnome.yaml \
 --repository $HOME/ubuntu/qa/juju/charms \
 local:jhbuild jhbuild

2. after installation, connect to the unit with:

$ juju ssh <unit_or_machine>

3. And run your first build

$ jhbuild build

4. You want to organize a hacking party ;)

$ juju add-unit jhbuild -n 10

6. To setup the service for automated build and publish the results:

$ juju set jhbuild autobuild=True publish=True

Results will be accessible on `http://<unit_public_addr>/`

Please see the README for more details and deployment instructions.

I hope it’ll be useful for you as well.

About these ads

From → Testing, Ubuntu

Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

%d bloggers like this: