Create vagrant boxes easily (Veewee)
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 ).
Lets start!
First step, cloning the repository:
git clone https://github.com/jedi4ever/veewee.git
cd veewee
gem install bundler
bundle install
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.
Written by Marco da Silva
Related protips
2 Responses
thank you for the short tutorial. It may help to have it updated to show that exporting has changed. "veewee box export debian7b4" will export the vbox. Afterwards "vagrant box add 'name.of.vagrant.box.as.desired' '/location /of /box as given from /veewee'" will make the vagrant box available
veewee is back to fast gem releases, it is enough to gem install veewee
now