# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(2) do |config|
  config.vm.define 'ldap' do |config|
  config.vm.box = 'ubuntu/bionic64'
  config.vm.hostname = "ldap.example.com"

  config.vm.network "private_network", ip: "192.168.33.253", libvirt__forward_mode: "route", libvirt__dhcp_enabled: false

  config.vm.provider "libvirt" do |lv, config|
    lv.memory = 2048
    lv.cpus = 2
    lv.cpu_mode = "host-passthrough"
    lv.keymap = "pt"
    config.vm.synced_folder ".", "/vagrant", type: "nfs"
  end

  config.vm.provider "virtualbox" do |vb|
    vb.linked_clone = true
    vb.memory = 1024
    vb.cpus = 2
  end

  config.vm.provision "shell", path: "provision.sh"
end
#A VM for running P4 and P4D, as well as acting as a potential Jenkins slave machine.
  config.vm.define 'helix_core' do |vagrant|
    vagrant.vm.hostname = 'helix'
    vagrant.vm.box = "bento/ubuntu-18.04"
    vagrant.vm.communicator = "ssh"
config.ssh.keys_only = true
    config.ssh.insert_key=true  

#    vagrant.vm.network :private_network, ip: '192.168.1.74'
#vagrant.vm.network :public_network
    vagrant.vm.communicator = "ssh"
    config.ssh.insert_key=false  

    vagrant.vm.synced_folder '.', '/home/vagrant/hws'

    # We have real problems provisioning a machine with only 1GB RAM.
    vagrant.vm.provider 'virtualbox' do |vb|
      vb.memory = 4096
    end
  vagrant.vm.provision "shell", path: 'setup_p4d.sh'
  end
end