blob: 9799a91005b5bb8afc5ba0623b6a73b52c66722a [file] [log] [blame]
# -*- mode: ruby -*-
# vi: set ft=ruby :
require 'yaml'
settings = YAML.load_file('genconfig/config.yml')
$cordpath = "../../.."
$ciab_dir = "/opt/ciab"
Vagrant.configure(2) do |config|
config.vm.synced_folder '.', '/vagrant', disabled: true
config.vm.define "corddev" do |d|
d.ssh.forward_agent = true
d.vm.box = settings["vagrant_box"]
d.vm.hostname = "corddev"
d.vm.network "private_network", ip: "10.100.198.200"
d.vm.synced_folder $cordpath, settings['build_cord_dir']
d.vm.synced_folder settings['host_cord_profile_dir'], settings['build_cord_profile_dir'], create: true
d.vm.provision :hosts do |provisioner|
provisioner.autoconfigure = true
provisioner.sync_hosts = true
provisioner.add_host '10.100.198.201', ['docker-registry']
end
d.vm.provider :virtualbox do |v|
v.memory = settings['dev_vm_mem']
v.cpus = settings['dev_vm_cpu']
end
d.vm.provider :libvirt do |v, override|
v.memory = settings['dev_vm_mem']
v.cpus = settings['dev_vm_cpu']
override.vm.synced_folder $cordpath, settings['build_cord_dir'], type: "nfs", nfs_udp: false, nfs_version: 4
override.vm.synced_folder settings['host_cord_profile_dir'], settings['build_cord_profile_dir'], type: "nfs", nfs_udp: false, nfs_version: 4
end
end
config.vm.define "head1" do |d|
d.vm.box = settings["vagrant_box"]
d.vm.hostname = "head1"
d.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: '0.0.0.0'
d.vm.network "private_network", ip: "10.100.198.201"
d.vm.synced_folder $cordpath, $ciab_dir
d.vm.network "private_network",
ip: "0.0.0.0", # not used, ignore
auto_config: false,
virtualbox__intnet: settings['vm_management_network_name'],
libvirt__network_name: settings['vm_management_network_name'],
libvirt__forward_mode: "none",
libvirt__dhcp_enabled: false
d.vm.network "public_network",
mac: "02420a060101",
auto_config: false,
type: "bridge",
dev: "leaf1",
ovs: true
d.vm.provider :virtualbox do |v|
v.memory = settings['head_vm_mem']
v.cpus = settings['head_vm_cpu']
end
d.vm.provider :libvirt do |v, override|
v.memory = settings['head_vm_mem']
v.cpus = settings['head_vm_cpu']
v.storage :file, :size => '100G', :type => 'qcow2'
override.vm.synced_folder $cordpath, $ciab_dir, type: "nfs", nfs_udp: false, nfs_version: 4
override.vm.provision :ansible do |ansible|
ansible.playbook = $cordpath + "/build/ansible/add-extra-drive.yml" # Needs testing
end
end
end
config.vm.define "compute1" do |c|
c.vm.communicator = "none"
c.vm.hostname = "compute1"
c.vm.network "private_network",
adapter: 1,
ip: "0.0.0.0",
auto_config: false,
virtualbox__intnet: settings['vm_management_network_name'],
libvirt__network_name: settings['vm_management_network_name']
c.vm.network "public_network",
adapter: 2, # The fabric interface for each node
auto_config: false,
type: "bridge",
dev: "leaf1",
ovs: true
c.vm.provider :libvirt do |v|
v.memory = settings['compute_vm_mem']
v.cpus = settings['compute_vm_cpu']
v.machine_virtual_size = 100
v.storage :file, :size => '100G', :type => 'qcow2'
v.boot 'network'
v.boot 'hd'
v.nested = true
end
c.vm.provider :virtualbox do |v, override|
override.vm.box = "clink15/pxe"
v.memory = settings['compute_vm_mem']
v.cpus = settings['compute_vm_cpu']
v.gui = "true"
end
end
config.vm.define "compute2" do |c|
c.vm.communicator = "none"
c.vm.hostname = "compute2"
c.vm.network "private_network",
adapter: 1,
ip: "0.0.0.0",
auto_config: false,
virtualbox__intnet: settings['vm_management_network_name'],
libvirt__network_name: settings['vm_management_network_name']
c.vm.network "public_network",
adapter: 2, # The fabric interface for each node
auto_config: false,
type: "bridge",
dev: "leaf2",
ovs: true
c.vm.provider :libvirt do |v|
v.memory = settings['compute_vm_mem']
v.cpus = settings['compute_vm_cpu']
v.machine_virtual_size = 100
v.storage :file, :size => '100G', :type => 'qcow2'
v.boot 'network'
v.boot 'hd'
v.nested = true
end
c.vm.provider :virtualbox do |v, override|
override.vm.box = "clink15/pxe"
v.memory = settings['compute_vm_mem']
v.cpus = settings['compute_vm_cpu']
v.gui = "true"
end
end
config.vm.define "compute3" do |c|
c.vm.communicator = "none"
c.vm.hostname = "compute3"
c.vm.network "private_network",
adapter: 1,
ip: "0.0.0.0",
auto_config: false,
virtualbox__intnet: settings['vm_management_network_name'],
libvirt__network_name: settings['vm_management_network_name']
c.vm.network "public_network",
adapter: 2, # The fabric interface for each node
auto_config: false,
type: "bridge",
dev: "leaf2",
ovs: true
c.vm.provider :libvirt do |v|
v.memory = settings['compute_vm_mem']
v.cpus = settings['compute_vm_cpu']
v.machine_virtual_size = 100
v.storage :file, :size => '100G', :type => 'qcow2'
v.boot 'network'
v.boot 'hd'
v.nested = true
end
c.vm.provider :virtualbox do |v, override|
override.vm.box = "clink15/pxe"
v.memory = settings['compute_vm_mem']
v.cpus = settings['compute_vm_cpu']
v.gui = "true"
end
end
end