The objective here is to capture all the "how to install" knowledge for buildbot, buildapi and redis in code by making a set of docker containers that can play together well inside of Vagrant. In this setup, we are going to assume the user has Ubuntu (or equivalent linux) in a virtualbox running; boot2docker is great for this! Once that 1 VM exists we are to have separate docker instances per app (buildbot, buildapi, redis, etc.). The benefit of connecting these docker instances inside vagrant to play together, is that it lets any combo of buildbot, buildapi standalone, or "system" to be run. This also allows more modules to be added later. Useful links: https://github.com/boot2docker/boot2docker https://www.docker.io/gettingstarted/
Assuming that the Ubuntu version we are using here will be Ubuntu 12.04 LTS. From the docker index, this is ubuntu:precise
May not be that hard to support OSX too: http://www.infoq.com/news/2014/02/docker_0_8
Short update on this... Creating 3 docker containers for buildapi, rabbitmq, and buildbot. Currently, buildapi and rabbitmq are up and running. Left to do on buildapi is getting kombu and selfserveagent up. Buildbot is next. Current working versions of the buildapi-app and rabbitmq-app containers are up here: http://hg.mozilla.org/users/jozeller_mozilla.com/vagrant-docker-setup/
The buildapi-app and rabbitmq-app are up on http://hg.mozilla.org/users/jozeller_mozilla.com/vagrant-docker-setup/ Both work and run well together. Working on getting buildbot-app up now.
It's live and runs :) Start using it! https://hg.mozilla.org/build/tupperware If any initial bugs are found, please submit them here. For new functionality, post a new bug under Release Engineering :: Tools!