vagrant-lxc-ng/development/Vagrantfile

46 lines
1.4 KiB
Ruby

# -*- mode: ruby -*-
# vi: set ft=ruby :
def local_cache(box_name)
cache_dir = File.join(File.expand_path(Vagrant::Environment::DEFAULT_HOME),
'cache',
'apt',
box_name)
partial_dir = File.join(cache_dir, 'partial')
FileUtils.mkdir_p(partial_dir) unless File.exists? partial_dir
cache_dir
end
Vagrant.require_plugin 'vagrant-lxc'
Vagrant.configure("2") do |config|
config.vm.box = "lxc-quantal64"
config.vm.box_url = 'http://dl.dropbox.com/u/13510779/lxc-quantal64-2013-03-08.box'
config.vm.hostname = 'lxc-quantal64'
config.vm.synced_folder "../", "/vagrant", name: 'vagrant-root'
cache_dir = local_cache(config.vm.box)
config.vm.synced_folder cache_dir,
"/var/cache/apt/archives/",
name: "vagrant-cache"
config.vm.provider :lxc do |lxc|
# Not sure we need this
lxc.start_opts << 'lxc.aa_profile=unconfined'
end
config.vm.provision :shell, inline: '
if ! [ -f /home/vagrant/.updated ]; then
sudo apt-get update &&
sudo apt-get install puppet -y &&
touch /home/vagrant/.updated
fi'
config.vm.provision :puppet do |puppet|
puppet.manifests_path = "."
puppet.manifest_file = "site.pp"
# Pass DEBUG=1 to vagrant commands if you want to make some debugging noise
puppet.options << [ '--verbose', '--debug' ] if ENV['DEBUG'] == '1'
end
end