diff options
-rw-r--r-- | Vagrantfile | 44 | ||||
l---------[-rw-r--r--] | spec/bgp4/Vagrantfile | 37 | ||||
l---------[-rw-r--r--] | spec/bgp6/Vagrantfile | 45 | ||||
l---------[-rw-r--r--] | spec/one_node/Vagrantfile | 37 | ||||
l---------[-rw-r--r--] | spec/site_to_site_vpn/Vagrantfile | 37 |
5 files changed, 48 insertions, 152 deletions
diff --git a/Vagrantfile b/Vagrantfile new file mode 100644 index 0000000..f119ff4 --- /dev/null +++ b/Vagrantfile @@ -0,0 +1,44 @@ +require 'erb' +require 'yaml' + +configs = YAML.load_file('config.yaml') + +Vagrant.configure('2') do |config| + config.vm.provider :libvirt do |libvirt| + cpuinfo = File.read('/proc/cpuinfo') + if cpuinfo =~ /vmx|svm/ + libvirt.cpu_mode = 'host-passthrough' + else + libvirt.driver = 'qemu' + libvirt.cpu_mode = 'custom' + libvirt.cpu_model = 'Nehalem' + libvirt.cpu_feature name: 'vmx', policy: 'force' + end + end + configs.keys.each do |host| + config.vm.define host.to_sym do |c| + c.vm.box = 'higebu/vyos' + c.vm.synced_folder './', '/vagrant', + owner: 'vagrant', + group: 'vyattacfg', + mount_options: ['dmode=775,fmode=775'] + c.vm.hostname = host + + $script = '' + if !configs[host].nil? && configs[host].key?(:networks) + configs[host][:networks].keys.each do |net| + c.vm.network :private_network, + auto_config: false, + libvirt__network_name: net, + libvirt__dhcp_enabled: false, + libvirt__forward_mode: 'veryisolated' + end + $script = ERB.new(File.read('../interface_script.erb')).result(binding) + end + if !$script.empty? + c.vm.provision 'shell', inline: $script + end + c.vm.provision 'shell', path: "#{host}_script.sh" + end + end +end diff --git a/spec/bgp4/Vagrantfile b/spec/bgp4/Vagrantfile index a218807..2572fa2 100644..120000 --- a/spec/bgp4/Vagrantfile +++ b/spec/bgp4/Vagrantfile @@ -1,36 +1 @@ -require 'yaml' - -configs = YAML.load_file('config.yaml') - -Vagrant.configure('2') do |config| - config.vm.provider :libvirt do |libvirt| - cpuinfo = File.read('/proc/cpuinfo') - if cpuinfo =~ /vmx|svm/ - libvirt.cpu_mode = 'host-passthrough' - else - libvirt.driver = 'qemu' - libvirt.cpu_mode = 'custom' - libvirt.cpu_model = 'Nehalem' - libvirt.cpu_feature name: 'vmx', policy: 'force' - end - end - configs.keys.each do |host| - config.vm.define host.to_sym do |c| - c.vm.box = 'higebu/vyos' - c.vm.synced_folder './', '/vagrant', - owner: 'vagrant', - group: 'vyattacfg', - mount_options: ['dmode=775,fmode=775'] - c.vm.hostname = host - if !configs[host].nil? && configs[host].key?(:networks) - configs[host][:networks].keys.each do |net| - c.vm.network :private_network, - ip: configs[host][:networks][net], - libvirt__network_name: net, - libvirt__dhcp_enabled: false - end - end - c.vm.provision 'shell', path: "#{host}_script.sh" - end - end -end +../../Vagrantfile
\ No newline at end of file diff --git a/spec/bgp6/Vagrantfile b/spec/bgp6/Vagrantfile index f119ff4..2572fa2 100644..120000 --- a/spec/bgp6/Vagrantfile +++ b/spec/bgp6/Vagrantfile @@ -1,44 +1 @@ -require 'erb' -require 'yaml' - -configs = YAML.load_file('config.yaml') - -Vagrant.configure('2') do |config| - config.vm.provider :libvirt do |libvirt| - cpuinfo = File.read('/proc/cpuinfo') - if cpuinfo =~ /vmx|svm/ - libvirt.cpu_mode = 'host-passthrough' - else - libvirt.driver = 'qemu' - libvirt.cpu_mode = 'custom' - libvirt.cpu_model = 'Nehalem' - libvirt.cpu_feature name: 'vmx', policy: 'force' - end - end - configs.keys.each do |host| - config.vm.define host.to_sym do |c| - c.vm.box = 'higebu/vyos' - c.vm.synced_folder './', '/vagrant', - owner: 'vagrant', - group: 'vyattacfg', - mount_options: ['dmode=775,fmode=775'] - c.vm.hostname = host - - $script = '' - if !configs[host].nil? && configs[host].key?(:networks) - configs[host][:networks].keys.each do |net| - c.vm.network :private_network, - auto_config: false, - libvirt__network_name: net, - libvirt__dhcp_enabled: false, - libvirt__forward_mode: 'veryisolated' - end - $script = ERB.new(File.read('../interface_script.erb')).result(binding) - end - if !$script.empty? - c.vm.provision 'shell', inline: $script - end - c.vm.provision 'shell', path: "#{host}_script.sh" - end - end -end +../../Vagrantfile
\ No newline at end of file diff --git a/spec/one_node/Vagrantfile b/spec/one_node/Vagrantfile index a218807..2572fa2 100644..120000 --- a/spec/one_node/Vagrantfile +++ b/spec/one_node/Vagrantfile @@ -1,36 +1 @@ -require 'yaml' - -configs = YAML.load_file('config.yaml') - -Vagrant.configure('2') do |config| - config.vm.provider :libvirt do |libvirt| - cpuinfo = File.read('/proc/cpuinfo') - if cpuinfo =~ /vmx|svm/ - libvirt.cpu_mode = 'host-passthrough' - else - libvirt.driver = 'qemu' - libvirt.cpu_mode = 'custom' - libvirt.cpu_model = 'Nehalem' - libvirt.cpu_feature name: 'vmx', policy: 'force' - end - end - configs.keys.each do |host| - config.vm.define host.to_sym do |c| - c.vm.box = 'higebu/vyos' - c.vm.synced_folder './', '/vagrant', - owner: 'vagrant', - group: 'vyattacfg', - mount_options: ['dmode=775,fmode=775'] - c.vm.hostname = host - if !configs[host].nil? && configs[host].key?(:networks) - configs[host][:networks].keys.each do |net| - c.vm.network :private_network, - ip: configs[host][:networks][net], - libvirt__network_name: net, - libvirt__dhcp_enabled: false - end - end - c.vm.provision 'shell', path: "#{host}_script.sh" - end - end -end +../../Vagrantfile
\ No newline at end of file diff --git a/spec/site_to_site_vpn/Vagrantfile b/spec/site_to_site_vpn/Vagrantfile index a218807..2572fa2 100644..120000 --- a/spec/site_to_site_vpn/Vagrantfile +++ b/spec/site_to_site_vpn/Vagrantfile @@ -1,36 +1 @@ -require 'yaml' - -configs = YAML.load_file('config.yaml') - -Vagrant.configure('2') do |config| - config.vm.provider :libvirt do |libvirt| - cpuinfo = File.read('/proc/cpuinfo') - if cpuinfo =~ /vmx|svm/ - libvirt.cpu_mode = 'host-passthrough' - else - libvirt.driver = 'qemu' - libvirt.cpu_mode = 'custom' - libvirt.cpu_model = 'Nehalem' - libvirt.cpu_feature name: 'vmx', policy: 'force' - end - end - configs.keys.each do |host| - config.vm.define host.to_sym do |c| - c.vm.box = 'higebu/vyos' - c.vm.synced_folder './', '/vagrant', - owner: 'vagrant', - group: 'vyattacfg', - mount_options: ['dmode=775,fmode=775'] - c.vm.hostname = host - if !configs[host].nil? && configs[host].key?(:networks) - configs[host][:networks].keys.each do |net| - c.vm.network :private_network, - ip: configs[host][:networks][net], - libvirt__network_name: net, - libvirt__dhcp_enabled: false - end - end - c.vm.provision 'shell', path: "#{host}_script.sh" - end - end -end +../../Vagrantfile
\ No newline at end of file |