definisce gli ambienti di produzione e test in file di testo/DSL. vagrant permette di definire la macchina virtuale, puppet di definire i pacchetti da installare ma anche files di configurazione, permessi, comandi.

apt-get install vagrant
mkdir -p ~/Vagrant/test
cd ~/Vagrant/test
vagrant box add precise32 http://files.vagrantup.com/precise32.box
vagrant init precise32
vagrant up
vagrant ssh
 
# nel bisogno:
vagrant reload

il Vagrantfile:

The share_folder lines are really useful for mapping a folder in the instance to a local folder. Using nfs => true the instance will be able to write and change permissions of the files, which is useful if you are, for example, trying to install a CMS in there.

vagrant provision

Provisioning: installare lo stesso software su piĆ¹ macchine. vedi Puppet and Chef. you build a manifest for Puppet explaining everything that you need to ensure has been done.

sudo apt-get install puppet
sudo puppet apply /vagrant/manifests/site.pp