# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure("2") do |config| # Apache webserver config.vm.network "forwarded_port", guest: 80, host: 8089 config.vm.network "forwarded_port", guest: 8088, host: 8088 # If true, then any SSH connections made will enable agent forwarding. config.ssh.forward_agent = true # Never sync the current directory to /vagrant. config.vm.synced_folder ".", "/vagrant", disabled: true checkout = "yes" if ENV['CHECKOUT'] != 'y' then checkout = "no" end config.vm.provider "hyperv" do |hv, override| hv.memory = 2048 hv.linked_clone = true if ENV['CHECKOUT'] != 'y' then override.vm.synced_folder ".", "/home/vagrant/Nominatim", type: "smb", smb_host: ENV['SMB_HOST'] || ENV['COMPUTERNAME'] end end config.vm.provider "virtualbox" do |vb, override| vb.gui = false vb.memory = 2048 vb.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate//vagrant","0"] if ENV['CHECKOUT'] != 'y' then override.vm.synced_folder ".", "/home/vagrant/Nominatim" end end config.vm.provider "parallels" do |prl, override| prl.update_guest_tools = false prl.memory = 2048 if ENV['CHECKOUT'] != 'y' then override.vm.synced_folder ".", "/home/vagrant/Nominatim" end end config.vm.provider "libvirt" do |lv, override| lv.memory = 2048 lv.nested = true if ENV['CHECKOUT'] != 'y' then override.vm.synced_folder ".", "/home/vagrant/Nominatim", type: 'nfs', nfs_udp: false end end config.vm.define "ubuntu22", primary: true do |sub| sub.vm.box = "generic/ubuntu2204" if RUBY_PLATFORM.include?('darwin') && RUBY_PLATFORM.include?('arm64') # Apple M processor sub.vm.box = 'luminositylabsllc/ubuntu-22.04-arm64' end sub.vm.provision :shell do |s| s.path = "vagrant/Install-on-Ubuntu-22.sh" s.privileged = false s.args = [checkout] end end config.vm.define "ubuntu22-apache" do |sub| sub.vm.box = "generic/ubuntu2204" sub.vm.provision :shell do |s| s.path = "vagrant/Install-on-Ubuntu-22.sh" s.privileged = false s.args = [checkout, "install-apache"] end end config.vm.define "ubuntu22-nginx" do |sub| sub.vm.box = "generic/ubuntu2204" sub.vm.provision :shell do |s| s.path = "vagrant/Install-on-Ubuntu-22.sh" s.privileged = false s.args = [checkout, "install-nginx"] end end config.vm.define "ubuntu24" do |sub| sub.vm.box = "bento/ubuntu-24.04" sub.vm.provision :shell do |s| s.path = "vagrant/Install-on-Ubuntu-24.sh" s.privileged = false s.args = [checkout] end end config.vm.define "ubuntu24-apache" do |sub| sub.vm.box = "bento/ubuntu-24.04" sub.vm.provision :shell do |s| s.path = "vagrant/Install-on-Ubuntu-24.sh" s.privileged = false s.args = [checkout, "install-apache"] end end config.vm.define "ubuntu24-nginx" do |sub| sub.vm.box = "bento/ubuntu-24.04" sub.vm.provision :shell do |s| s.path = "vagrant/Install-on-Ubuntu-24.sh" s.privileged = false s.args = [checkout, "install-nginx"] end end end