Vagrant-soup is a project mainly written in RUBY and PERL, it's free.
A collection of chef cookbooks and roles to set up vagrant virtual machines even faster.
git clone git://github.com/fnordfish/vagrant-soup.git my_new_vagrant_project
Vagrantfile
to match your needs (e.g. add or remove a role and/or recipes)vagrant up
Simply put your new Cookbook into the cookbooks
path and chef.add_recipe("new_one")
within the config.vm.provision
-block of your Vagrantfile
.
Downloading Cookbooks from the Chef Community is fairly simple and described in the Opscode Wiki - Working with Git and Cookbooks.
In short: Say you want to install couchdb
knife cookbook site vendor "couchdb" -d -o $PWD/cookbooks
The knife
command comes with the chef
gem. So you may need to gem install chef
on your local machine.
A good overview of available Cookbooks by Opscode may be found in their github repository. However, it is not recommended by Opscode to simply include all Cookbooks. Doing so may lead into strange errors regarding not even used Cookbooks.
My Roles combines Cookbooks and configurations to provide a basic setup for development machines.
All of them include the default
Role, which makes developing on the "remote-vm" easier. Basically it includes git
and subversion
so we can fetch remote sources and an nfs-server
to get a fast remote connection into the VM.
default
: git
, subversion
, nfs::server
ruby_devel
: rvm