CORD-912
OpenCloud-in-a-Box script
apply VAGRANT_CWD in proper place, fix order on elk.diff application
nvme drive support for Utah cloudlab
utah cloudlab fixes
fix logic inversion on SSH keygen
rename network interface
configuration of libvirt networks
network fixes
vagrant-libvirt fails to use networks created by others
update ip addresses for OCiaB
change IP's for head/compute VM's
fix VM destroy
manually configure mgmt network
use a bogus ip address range for management network
typo
dns failure check
don't install docker on the host node
frontload more package installation
sudo on cleanup vagrant command
s/loghost/cordloghost/ to fix logging to logstash
remove now-unneccesary steps
make suitable for CiaB use
fix paths in CiaB Vagrantfile
fixed paths in a more maintainable way
set vagrantfile path in more places
bump Vagrant version, fix for compute-node naming

Change-Id: Icbaaab4e74bd18c87b17f474bd5eea347c98cfaf
diff --git a/targets/opencloud-in-a-box/Vagrantfile b/targets/opencloud-in-a-box/Vagrantfile
new file mode 100644
index 0000000..83c9ce3
--- /dev/null
+++ b/targets/opencloud-in-a-box/Vagrantfile
@@ -0,0 +1,66 @@
+# -*- mode: ruby -*-
+# vi: set ft=ruby :
+#
+# OpenCloud-in-a-Box Vagrantfile
+require 'yaml'
+settings = YAML.load_file('config/opencloud_in_a_box.yaml')
+
+Vagrant.configure(2) do |config|
+
+  config.vm.box = "ubuntu/trusty64"
+
+  config.vm.define "head1" do |h|
+    h.vm.hostname = "head1"
+    h.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: '*'
+    h.vm.provider :libvirt do |v|
+      v.memory = 16384
+      v.cpus = 8
+      v.machine_virtual_size = 100
+      v.management_network_name = settings['public_network_name'] # public network
+      v.management_network_address = settings['public_network_cidr']
+    end
+    h.vm.network "private_network", # management network, eth1
+      ip: "0.1.1.0", # not used, ignore
+      auto_config: false,
+      libvirt__network_name: settings['mgmt_network'],
+      libvirt__forward_mode: "none",
+      libvirt__dhcp_enabled: false
+  end
+
+  config.vm.define "compute1" do |c|
+    c.vm.hostname = "compute1"
+    c.vm.provider :libvirt do |v|
+      v.memory = 8192
+      v.cpus = 4
+      v.machine_virtual_size = 50
+      v.nested = true
+      v.management_network_name = settings['public_network_name'] # public network
+      v.management_network_address = settings['public_network_cidr']
+    end
+    c.vm.network "private_network", # management network, eth1
+      ip: "0.1.1.0",
+      auto_config: false,
+      libvirt__network_name: settings['mgmt_network'],
+      libvirt__forward_mode: "none",
+      libvirt__dhcp_enabled: false
+  end
+
+  config.vm.define "compute2" do |c|
+    c.vm.hostname = "compute2"
+    c.vm.provider :libvirt do |v|
+      v.memory = 8192
+      v.cpus = 4
+      v.machine_virtual_size = 50
+      v.nested = true
+      v.management_network_name = settings['public_network_name'] # public network
+      v.management_network_address = settings['public_network_cidr']
+    end
+    c.vm.network "private_network", # management network, eth1
+      ip: "0.1.1.0",
+      auto_config: false,
+      libvirt__network_name: settings['mgmt_network'],
+      libvirt__forward_mode: "none",
+      libvirt__dhcp_enabled: false
+  end
+
+end