Releng – The Plan

The plan

Everyone loves it when a plan comes together so here’s the general approach to setting up the system:

All the configuration files and Puppet Manifests are stored in a git repository
Changes are made and then committed to the repository before being “pushed” to the CI server
The CI Server (Jenkins in our case) runs a series of tests on the manifests and configuration files
If the tests fail, the build breaks and notifications are sent via Jabber, Email or even a large robotic rabbit…
If the builds pass, the manifests and config files are deployed to the Puppetmaster by Capistrano
A puppet run is forced across all servers using MCollective

Code happens

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 through ssh to another machine makes editing and iterating more clumsy; I need to do agent forwarding etc – not terribly hard, but not free either, particularly when I travel, I need to remember to sync my source trees back to my laptop. So I prefer to live on my laptop and use my desktop for compute power.

I had a couple of Juju charms I wanted to investigate, but I needed enough compute power to make my laptop really quite warm – so I thought, its time to update my local cloud provider from Eucalyptus to Openstack. This was easy enough, until I came to…

View original post 235 more words