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

  # Base machine config
  config.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
  config.vm.provider :virtualbox do |virtualbox|
    virtualbox.customize ["modifyvm", :id, "--memory", "8048"]
    virtualbox.customize ["modifyvm", :id, "--cpuexecutioncap", "100"]
    virtualbox.customize ["modifyvm", :id, "--cpus", "10"]
  end

  # Rsync config, triggered on every vagrant refresh
  config.vm.synced_folder "/usr/local/autotest", "/usr/local/autotest", type: "rsync",
    owner: "chromoes-test", group: "root",
    rsync__args: ["--chmod=ug=rwX,o=rxX", "-r"],
    rsync__exclude: ["site-packages/", "logs/", "results/", "shadow_config.ini", ".git/", "chromeos-admin/", "*.box"]

  # Chown autotest, triggered via vagrant provision --provision-with shell
  config.vm.provision :shell do |shell|
    shell.inline = "sudo chown -R chromeos-test /usr/local/autotest"
  end

  # Master config
  # Port mappings:
  #  80: tcp port, access the master afe via http://localhost:master_port on host
  #  3306: mysql port, access the master db via 'mysql --host localhost --port 8002' on host
  # both these will be autocorrected if the ports are occupied.
  config.vm.define "%(master)s" do |%(master)s|
      %(master)s.vm.network "forwarded_port", guest: 80, host: %(master_port)s, auto_correct: true
      %(master)s.vm.network "forwarded_port", guest: 3306, host: 8002, auto_correct: true
      %(master)s.vm.box = "chromeos_lab_core_cluster"
      %(master)s.vm.hostname = "%(master)s"
      ip = "172.17.8.103"
      %(master)s.vm.network "private_network", ip: ip
      %(master)s.vm.provision :puppet do |puppet|
        puppet.manifests_path = "%(manifest_path)s"
        puppet.manifest_file = "nodes.pp"
        puppet.module_path = "%(module_path)s"
        #puppet.options = "--verbose --debug "
        puppet.facter = {
          "is_vagrant" => "1",
          "server_type" => "testing-shard-master",
        }
      end
  end

  # Shard configs, extend by duplicating this section
  # Port mappings:
  #  80: tcp port, access the master afe via http://localhost:shard1_port on host
  config.vm.define "%(shard1)s" do |%(shard1)s|
      %(shard1)s.vm.network "forwarded_port", guest: 80, host: %(shard1_port)s, auto_correct: true
      %(shard1)s.vm.box = "chromeos_lab_core_cluster"
      %(shard1)s.vm.hostname = "%(shard1)s"
      ip = "172.17.8.104"
      %(shard1)s.vm.network "private_network", ip: ip
      %(shard1)s.vm.provision :puppet do |puppet|
        puppet.manifests_path = "%(manifest_path)s"
        puppet.manifest_file = "nodes.pp"
        puppet.module_path = "%(module_path)s"
        #puppet.options = "--verbose --debug "
        puppet.facter = {
          "is_vagrant" => "1",
          "shard_hostname" => "%(shard1_shadow_config_hostname)s",
          "server_type" => "autotest-shard",
        }
      end
  end
end
