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

c3n1Vdi = '../../tmp/c3-n1.vdi'
c3n2Vdi = '../../tmp/c3-n2.vdi'
c3n3Vdi = '../../tmp/c3-n3.vdi'

Vagrant.configure("2") do |config|
  # https://docs.vagrantup.com.
  config.vm.box = "debian/buster64"
  config.vm.provider "virtualbox" do |vb|
    vb.gui = false
    vb.memory = "2048"
    vb.cpus = "1"
  end
  config.vm.provision "shell", inline: <<-SHELL
    apt-get update
  SHELL
  config.vm.define "c3-n1" do |machine|
    machine.vm.hostname = "c3-n1"
    machine.vm.network "private_network", ip: "192.168.11.31"
    machine.vm.provider "virtualbox" do |vbm|
      unless File.exist?(c3n1Vdi)
        vbm.customize ['createhd', '--filename', c3n1Vdi, '--variant', 'Fixed', '--size', 5 * 1024]
      end
      vbm.customize ['storageattach', :id,  '--storagectl', 'SATA Controller', '--port', 1, '--device', 0, '--type', 'hdd', '--medium', c3n1Vdi]
    end
  end
  config.vm.define "c3-n2" do |machine|
    machine.vm.hostname = "c3-n2"
    machine.vm.network "private_network", ip: "192.168.11.32"
    machine.vm.provider "virtualbox" do |vbm|
      unless File.exist?(c3n2Vdi)
        vbm.customize ['createhd', '--filename', c3n2Vdi, '--variant', 'Fixed', '--size', 5 * 1024]
      end
      vbm.customize ['storageattach', :id,  '--storagectl', 'SATA Controller', '--port', 1, '--device', 0, '--type', 'hdd', '--medium', c3n2Vdi]
    end
  end
  config.vm.define "c3-n3" do |machine|
    machine.vm.hostname = "c3-n3"
    machine.vm.network "private_network", ip: "192.168.11.33"
    machine.vm.provider "virtualbox" do |vbm|
      unless File.exist?(c3n3Vdi)
        vbm.customize ['createhd', '--filename', c3n3Vdi, '--variant', 'Fixed', '--size', 5 * 1024]
      end
      vbm.customize ['storageattach', :id,  '--storagectl', 'SATA Controller', '--port', 1, '--device', 0, '--type', 'hdd', '--medium', c3n3Vdi]
    end
  end
end
