2013-02-25 23:14:10 +00:00
|
|
|
# -*- mode: ruby -*-
|
|
|
|
# vi: set ft=ruby :
|
|
|
|
|
2013-03-29 16:31:57 +00:00
|
|
|
# Not really needed, but useful while developing so that vagrant picks it up
|
2013-03-03 02:34:48 +00:00
|
|
|
Vagrant.require_plugin 'vagrant-lxc'
|
2013-07-12 23:38:38 +00:00
|
|
|
Vagrant.require_plugin 'vagrant-omnibus'
|
2013-02-25 23:14:10 +00:00
|
|
|
|
2013-03-02 19:51:28 +00:00
|
|
|
Vagrant.configure("2") do |config|
|
2013-03-04 01:42:18 +00:00
|
|
|
config.vm.synced_folder "/tmp", "/vagrant_data"
|
|
|
|
|
2013-03-02 19:51:28 +00:00
|
|
|
config.vm.provider :lxc do |lxc|
|
2013-04-06 01:08:02 +00:00
|
|
|
lxc.customize 'cgroup.memory.limit_in_bytes', '400M'
|
|
|
|
lxc.customize 'cgroup.memory.memsw.limit_in_bytes', '500M'
|
2013-03-02 19:51:28 +00:00
|
|
|
end
|
2013-03-04 04:14:38 +00:00
|
|
|
|
2013-03-08 04:07:41 +00:00
|
|
|
config.vm.provision :shell, :inline => <<-SCRIPT
|
|
|
|
echo "Hi there I'm a shell script used for provisioning"
|
|
|
|
SCRIPT
|
2013-03-04 04:14:38 +00:00
|
|
|
|
|
|
|
config.vm.provision :puppet do |puppet|
|
|
|
|
puppet.module_path = "puppet/modules"
|
|
|
|
puppet.manifests_path = "puppet/manifests"
|
|
|
|
puppet.manifest_file = "site.pp"
|
|
|
|
end
|
2013-03-29 16:50:04 +00:00
|
|
|
|
2013-04-22 04:42:24 +00:00
|
|
|
port = 8080
|
2013-06-27 13:39:14 +00:00
|
|
|
releases = %w(precise quantal raring wheezy squeeze sid)
|
2013-04-22 04:42:24 +00:00
|
|
|
releases.each do |release|
|
2013-04-22 02:58:54 +00:00
|
|
|
config.vm.define(release) do |lxc_config|
|
|
|
|
lxc_config.vm.box = "#{release}64"
|
2013-07-12 17:25:24 +00:00
|
|
|
lxc_config.vm.box_url = "http://dl.dropbox.com/u/13510779/lxc-#{release}-amd64-2013-07-12.box"
|
2013-04-22 02:58:54 +00:00
|
|
|
# Uncomment if you want to try out a box built locally
|
2013-07-12 17:25:24 +00:00
|
|
|
# lxc_config.vm.box_url = "../boxes/output/lxc-#{release}-amd64-2013-07-12.box"
|
2013-07-08 13:50:15 +00:00
|
|
|
lxc_config.vm.network :forwarded_port, guest: 80, host: (port += 1)
|
2013-04-22 02:58:54 +00:00
|
|
|
lxc_config.vm.hostname = "lxc-#{release}64-example"
|
2013-07-12 23:38:38 +00:00
|
|
|
|
|
|
|
if %w(precise quantal raring squeeze).include? release
|
|
|
|
lxc_config.omnibus.chef_version = :latest
|
|
|
|
|
|
|
|
lxc_config.vm.provision :chef_solo do |chef|
|
|
|
|
chef.add_recipe "hello-world"
|
|
|
|
chef.log_level = :debug
|
|
|
|
end
|
|
|
|
end
|
2013-05-08 19:40:44 +00:00
|
|
|
end
|
|
|
|
end
|
2013-02-25 23:14:10 +00:00
|
|
|
end
|