66 lines
1.8 KiB
Text
66 lines
1.8 KiB
Text
Vagrant.configure("2") do |c|
|
|
c.vm.box = "<%= config[:box] %>"
|
|
c.vm.box_url = "<%= config[:box_url] %>"
|
|
|
|
if Vagrant.has_plugin?("vagrant-cachier")
|
|
c.cache.auto_detect = true
|
|
c.cache.scope = :box
|
|
end
|
|
|
|
#if Vagrant.has_plugin?("vagrant-omnibus")
|
|
# c.omnibus.cache_packages = true
|
|
# c.omnibus.chef_version = <%= config[:chef_version] %>
|
|
#end
|
|
|
|
if Vagrant.has_plugin?("vagrant-libvirt")
|
|
c.vm.provider :libvirt do |libvirt|
|
|
libvirt.storage_pool_name = "Virt-SSD"
|
|
libvirt.channel :type => 'unix', :target_name => 'org.qemu.guest_agent.0', :target_type => 'virtio'
|
|
end
|
|
end
|
|
|
|
c.vbguest.auto_update = false
|
|
|
|
<% if config[:vm_hostname] %>
|
|
c.vm.hostname = "<%= config[:vm_hostname] %>"
|
|
<% end %>
|
|
<% if config[:guest] %>
|
|
c.vm.guest = <%= config[:guest] %>
|
|
<% end %>
|
|
<% if config[:username] %>
|
|
c.ssh.username = "<%= config[:username] %>"
|
|
<% end %>
|
|
<% if config[:ssh_key] %>
|
|
c.ssh.private_key_path = "<%= config[:ssh_key] %>"
|
|
<% end %>
|
|
|
|
<% Array(config[:network]).each do |opts| %>
|
|
c.vm.network(:<%= opts[0] %>, <%= opts[1..-1].join(", ") %>)
|
|
<% end %>
|
|
|
|
c.vm.synced_folder ".", "/vagrant", disabled: true
|
|
<% config[:synced_folders].each do |source, destination, options| %>
|
|
c.vm.synced_folder "<%= source %>", "<%= destination %>", <%= options %>
|
|
<% end %>
|
|
|
|
c.vm.provider :<%= config[:provider] %> do |p|
|
|
<% config[:customize].each do |key, value| %>
|
|
<% case config[:provider]
|
|
when "virtualbox" %>
|
|
p.customize ["modifyvm", :id, "--<%= key %>", "<%= value %>"]
|
|
<% when "rackspace", "softlayer" %>
|
|
p.<%= key %> = "<%= value%>"
|
|
<% when /^vmware_/ %>
|
|
<% if key == :memory %>
|
|
<% unless config[:customize].include?(:memsize) %>
|
|
p.vmx["memsize"] = "<%= value %>"
|
|
<% end %>
|
|
<% else %>
|
|
p.vmx["<%= key %>"] = "<%= value %>"
|
|
<% end %>
|
|
<% end %>
|
|
<% end %>
|
|
end
|
|
|
|
end
|
|
|