Note: I’m putting build ISOs and Sledgehammer TARs on crowbar.zehicle.com if you don’t want to follow these steps then download the ISO. We are updating the ISO daily, so don’t assume that you have that latest!
To build Crowbar, you need a Linux machine and access to the internet. The video shows how you can use an Ubuntu 10.10 Rackspace Cloud Server. We build Crowbar inside our firewall on our PCs too. No matter how you do it, Crowbar is full of fuzzily delicious cloud bits.
Victor “got your back” Lowther, CI & build automation czar on our team at Dell, spent a lot of time cleaning up the open source build to make it MUCH easier. The latest build only requires ONE server for all components. To make it repeatable and fast, I’m using a hosted VM from Rackspace Cloud.
Here are the steps that you should follow (cool: if you build before the prereqs are in place, the script will tell you what’s missing).
Note: You must build the discovery image (build_sledgehammer.sh) before building Crowbar. This image does not change very often, so it’s helpful to cache it somewhere (like in the Crowbar cache where it normally lives) and save time.
Starting from a Rackspace Cloud Ubuntu 10.10 image (512 RAM is OK, $0.03/hr)
Get libraries for git, RPM, & Ruby: apt-get install git rpm ruby
Get the sledgehammer repo: git clone git://github.com/dellcloudedge/crowbar-sledgehammer.git
To make sure that it was possible for mortals, I signed up for a Ubuntu 10.10 VM (512 Mb RAM, $0.03/hr) at RackSpace Cloud. I did this from a non-Dell to ensure that it was as independent from our source as possible.
Once I had my vm, there were just a few steps to follow (these are NOT verbatim):
Got the results from a sledgehammer build (a fresh sledgehammer tarball) and extracted it into $HOME/.crowbar-build-cache/tftpboot, which is where build_crowbar.sh expects to find it cached.
NOTE: I’m not ready to document sledgehammer builds yet, but I will tell you that you’d need a CentOS VM.
In the crowbar directory, ran ./build_crowbar.sh
The build will pull down all the packages that you need and cache them to the VM. Subsequent builds will be much faster!
The end result of the build is an “openstack-dev.iso” that will install Crowbar with the OpenStack barclamps (here’s how to do it on VMs). Just for fun, I copied _my build_ output ISO off the build VM and to my web server.
Please let me know if you have problems with this process, we want people to try Crowbar!
$$ Note: Turn off your VM when you’re done so you don’t incur extra expenses. Since this process only took about 2 hours, the whole build cost me less than a dime. Which is good, since I was building it on “my own dime” anyway.