diff --git a/ovn/Vagrantfile b/ovn/Vagrantfile index cdf94b9..7b2a9e7 100644 --- a/ovn/Vagrantfile +++ b/ovn/Vagrantfile @@ -1,10 +1,14 @@ # -*- mode: ruby -*- # vi: set ft=ruby : -# Specify Vagrant version, Vagrant API version, and Vagrant clone location -Vagrant.require_version ">= 1.6.0" -VAGRANTFILE_API_VERSION = "2" +# Specify Vagrant version, Vagrant API version, Vagrant clone location, +# and default Vagrant provider +Vagrant.require_version '>= 1.6.0' +VAGRANTFILE_API_VERSION = '2' +ENV['VAGRANT_DEFAULT_PROVIDER'] = 'vmware_fusion' ENV['VAGRANT_VMWARE_CLONE_DIRECTORY'] = '~/.vagrant' +#ENV['VAGRANT_DEFAULT_PROVIDER'] = 'virtualbox' +#ENV['VAGRANT_DEFAULT_PROVIDER'] = 'vmware_appcatalyst' # Require 'yaml' module require 'yaml' @@ -19,22 +23,38 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.ssh.insert_key = false # Iterate through entries in YAML file to create VMs - servers.each do |servers| - config.vm.define servers["name"] do |srv| + servers.each do |server| + config.vm.define server['name'] do |srv| # Don't check for box updates srv.vm.box_check_update = false - srv.vm.hostname = servers["name"] - srv.vm.box = servers["box"] + srv.vm.hostname = server['name'] + srv.vm.box = server['box'] - # Disable default synced folder - srv.vm.synced_folder ".", "/vagrant", disabled: true + # Configure default synced folder (disable by default) + if server['sync_disabled'] != nil + srv.vm.synced_folder '.', '/vagrant', disabled: server['sync_disabled'] + else + srv.vm.synced_folder '.', '/vagrant', disabled: true + end #if servers['sync_disabled'] - # Configure VMs with RAM and CPUs per settings in servers.yml + # Configure CPU & RAM per settings in servers.yml (Fusion) srv.vm.provider :vmware_fusion do |vmw| - vmw.vmx["memsize"] = servers["ram"] - vmw.vmx["numvcpus"] = servers["vcpu"] - end # srv.vm.provider + vmw.vmx['memsize'] = server['ram'] + vmw.vmx['numvcpus'] = server['vcpu'] + end # srv.vm.provider vmware_fusion + + # Configure CPU & RAM per settings in servers.yml (AppCatalyst) + srv.vm.provider :vmware_appcatalyst do |vmw| + vmw.vmx['memsize'] = server['ram'] + vmw.vmx['numvcpus'] = server['vcpu'] + end # srv.vm.provider vmware_appcatalyst + + # Configure CPU & RAM per settings in servers.yml (VirtualBox) + srv.vm.provider :virtualbox do |vb| + vb.memory = server['ram'] + vb.cpus = server['vcpu'] + end # srv.vm.provider virtualbox end # config.vm.define end # servers.each end # Vagrant.configure diff --git a/ovn/servers.yml b/ovn/servers.yml new file mode 100644 index 0000000..1cc67de --- /dev/null +++ b/ovn/servers.yml @@ -0,0 +1,16 @@ +--- +- name: "ovn-01" + box: "slowe/ubuntu-trusty-x64" + ram: "512" + vcpu: "1" + ip_addr: "192.168.100.101" +- name: "ovn-02" + box: "slowe/ubuntu-trusty-x64" + ram: "512" + vcpu: "1" + ip_addr: "192.168.100.102" +- name: "ovn-03" + box: "slowe/ubuntu-trusty-x64" + ram: "512" + vcpu: "1" + ip_addr: "192.168.100.103"