# -*- mode: ruby -*-
# vi: set ft=ruby :

# https://codingpackets.com/blog/linux-network-components-used-in-openstack/

Vagrant.configure("2") do |config|

  ##########################
  #          node01        #
  ##########################

  config.vm.define "node01" do |node|
    node.vm.box = "elastic/ubuntu-16.04-x86_64"
    node.vm.hostname = "node01"
    node.vm.synced_folder ".", "/vagrant", disabled: true
    node.ssh.insert_key = false

    node.vm.provider :libvirt do |domain|
      domain.memory = 1024
    end

    node.vm.network :private_network,
      :mac => "28:b7:ad:f8:5b:7d",
      :libvirt__tunnel_type => "udp",
      :libvirt__tunnel_local_ip => "127.1.1.1",
      :libvirt__tunnel_local_port => "10001",
      :libvirt__tunnel_ip => "127.1.1.2",
      :libvirt__tunnel_port => "10001",
      :libvirt__iface_name => "eth1",
      auto_config: false

    node.vm.provision "shell",
      inline: "sudo ip address add 10.10.10.10/24 dev eth1"

  end

  ##########################
  #          node02        #
  ##########################

  config.vm.define "node02" do |node|
    node.vm.box = "elastic/ubuntu-16.04-x86_64"
    node.vm.hostname = "node02"
    node.vm.synced_folder ".", "/vagrant", disabled: true
    node.ssh.insert_key = false

    node.vm.provider :libvirt do |domain|
      domain.memory = 1024
    end

    node.vm.network :private_network,
      :mac => "28:b7:ad:f8:5b:7c",
      :libvirt__tunnel_type => "udp",
      :libvirt__tunnel_local_ip => "127.1.1.2",
      :libvirt__tunnel_local_port => "10001",
      :libvirt__tunnel_ip => "127.1.1.1",
      :libvirt__tunnel_port => "10001",
      :libvirt__iface_name => "eth1",
      auto_config: false

    node.vm.provision "shell",
      inline: "sudo ip address add 10.10.10.20/24 dev eth1"

  end



end