# The following patch needs to be applied for ansible to run cleanly on vagrant up: # https://github.com/mitchellh/vagrant/pull/1723.diff on /opt/vagrant/embedded/gems/gems/vagrant-1.2.x $boxes = [ { :name => 'ansible.local', :forwards => { 22 => 22222, 80 => 80, 25 => 25, 143 => 143, 465 => 465, 993 => 993 } } ] Vagrant.configure('2') do |config| config.vm.provider :lxc do |lxc, override| override.vm.box = 'precise64' override.vm.box_url = 'http://bit.ly/vagrant-lxc-precise64-2013-05-08' end config.vm.provider :virtualbox do |vbox, override| override.vm.box = 'precise64' override.vm.box_url = 'http://files.vagrantup.com/precise64.box' end $boxes.each do |opts| config.vm.hostname = opts[:name] opts[:forwards].each do |guest_port, host_port| config.vm.network :forwarded_port, :guest => guest_port, :host => host_port end config.vm.provision :shell, :inline => 'if [ ! -e /root/apt.updated ]; then apt-get update && touch /root/apt.updated ; fi; apt-get install -y python-apt' config.vm.provision :ansible do |ansible| ansible.playbook = 'site.yml' end config.vm.provision :shell, :inline => "echo [test] > /vagrant/hosts.autogen && ifconfig eth0 | grep 'inet addr' | awk '{print $2}' | cut -d: -f2 >> /vagrant/hosts.autogen" end end