# -*- mode: ruby -*- # vi: set ft=ruby : # All Vagrant configuration is done below. The "2" in Vagrant.configure # configures the configuration version (we support older styles for # backwards compatibility). Please don't change it unless you know what # you're doing. Vagrant.configure("2") do |config| # The most common configuration options are documented and commented below. # For a complete reference, please see the online documentation at # https://docs.vagrantup.com. config.vbguest.auto_update = false config.vbguest.no_remote = true config.vm.provision :shell, inline: "localectl set-keymap fr" config.vm.define "firewall" do |firewall| firewall.vm.box = "ubuntu/xenial64" firewall.vm.hostname = "firewall" firewall.vm.network "public_network" firewall.vm.network "private_network", ip: "192.168.200.254", virtualbox_intnet: "accounting" firewall.vm.network "private_network", ip: "192.168.201.254", virtualbox_intnet: "developer" firewall.vm.network "private_network", ip: "192.168.202.254", virtualbox_intnet: "intra-services" firewall.vm.provision :shell, path: "provisioning/common/disable_predictable_interfaces.sh" firewall.vm.provision :reload firewall.vm.provision :shell, path: "provisioning/firewall/configure_dns.sh" firewall.vm.provision :shell, path: "provisioning/firewall/configure_ip_forwarding.sh" firewall.vm.provision :shell, path: "provisioning/firewall/configure_firewall_rules.sh" end config.vm.define "intranet-portal" do |portal| portal.vm.box = "ubuntu/xenial64" portal.vm.hostname = "intranet-portal" portal.vm.network "private_network", ip: "192.168.202.10", virtualbox_intnet: "intra-services" portal.vm.provision :shell, :inline => "ip route delete default 2>&1 >/dev/null || true; ip route add default via 192.168.202.254" end config.vm.define "workstation1-developer-linux" do |workstation| workstation.vm.box = "ubuntu/xenial64" workstation.vm.hostname = "developer-ws1" workstation.vm.network "private_network", ip: "192.168.201.10", virtualbox_intnet: "developer", auto_config: false workstation.vm.provision :shell, path: "provisioning/workstation/configure_desktop.sh" workstation.vm.provision :reload workstation.vm.provision :shell, path: "provisioning/workstation/configure_network.sh" end config.vm.define "workstation1-accounting-linux" do |workstation| workstation.vm.box = "ubuntu/xenial64" workstation.vm.hostname = "accounting-ws1" workstation.vm.network "private_network", ip: "192.168.200.10", virtualbox_intnet: "accounting", auto_config: false workstation.vm.provision :shell, path: "provisioning/workstation/configure_desktop.sh" workstation.vm.provision :reload workstation.vm.provision :shell, path: "provisioning/workstation/configure_network.sh" end end