Vagrant is a great tool to help development team, and even individuals with multiple projects. But it does not create VirtualMachines (VMs) in a easy way.
Veewee is a tool to help create VMs in a automated way, based on Templates. It’s developed in Ruby and allows to create vagrant boxes, virtualbox, KVM and VMWare images.
On this example, I’m going to create a VM to work with Vagrant and it will be based on Debian 7 AMD64 ( Debian-7.0-b4-amd64-netboot ).
First step, cloning the repository:
git clone https://github.com/jedi4ever/veewee.git
gem install bundler
In the veewee/templates folder, you can find a list of all available templates for your virtual machines.
$ veewee vbox define 'debian7b4' 'Debian-7.0-b4-amd64-netboot'
The basebox ‘debian7b4′ has been succesfully created from the template ‘Debian-7.0-b4-amd64-netboot’
You can now check / edit the definition files stored in 'definitions/debian7b4'. With the template for your VM ready, just execute “build” command and wait:
$ veewee vbox build ‘debian7b4′
This should take around 10-15minutes depending on your machine and connection.
Veewee also has Tests to verify you VM.
$ veewee vbox validate ‘debian7b4′
After this, your VM is ready to be exported
$ vagrant basebox export ‘debian7b4′
And now you have a box ready to use with Vagrant.