Vagrant::Boxen
Inspired by Rails Wizard and GitHub's Boxen, this gem attempts to lower the "entry barrier" of getting a manageable Vagrant machine targetted for development up and running without the need to learn Puppet or Chef.
Installation
If you use the gem version of Vagrant, use:
$ gem install vagrant-boxen
otherwise, use:
$ vagrant gem install vagrant-boxen
Usage
Just add a Vagrant::Boxen::Provisioner
to your Vagrantfile:
require 'vagrant-boxen'
Vagrant::Config.run do |config|
# ... other settings ...
config.vm.provision Vagrant::Boxen::Provisioner do |boxen|
# Install redis and memcached with defaults
boxen.install :redis, :memcached
# or specify configuration options for the module
boxen.redis {
port '1234'
memory '1gb'
}
end
end
For now, please refer to the sample Vagrantfile on this repo for the most up to date documentation.
While the modules provided might work on most linux distributions, I'm developing against an Ubuntu 12.10 64bits box based on https://github.com/downloads/roderik/VagrantQuantal64Box/quantal64.box
To find out more about the planned functionality, check out the project's issues.
How does it work?
Under the hood, Vagrant::Boxen::Provisioner
will generate a puppet manifest based on the configured modules that will get
passed to a Vagrant::Provisioners::Puppet
configured to use the bundled puppet modules.
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request