X-Git-Url: https://git.openstreetmap.org./nominatim.git/blobdiff_plain/23a53661e05761a475a5f032755cca148df24682..86ea07709218a7ec8ae18e53268f8c67b42c9f17:/Vagrantfile diff --git a/Vagrantfile b/Vagrantfile index 042148f7..033e1507 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -2,48 +2,109 @@ # vi: set ft=ruby : Vagrant.configure("2") do |config| - - # Ubuntu LTS 14.04 - config.vm.box = "ubuntu/trusty64" - # Apache webserver - config.vm.network "forwarded_port", guest: 8089, host: 8089 - + 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 - config.vm.synced_folder ".", "/home/vagrant/Nominatim" + # 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 "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 - # provision using a simple shell script - config.vm.provision :shell, :path => "vagrant-provision.sh" + 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' + end + end + config.vm.define "ubuntu", primary: true do |sub| + sub.vm.box = "generic/ubuntu2004" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Ubuntu-20.sh" + s.privileged = false + s.args = [checkout] + end + end - # configure shared package cache if possible - if Vagrant.has_plugin?("vagrant-cachier") - config.cache.enable :apt - config.cache.scope = :box + config.vm.define "ubuntu-apache" do |sub| + sub.vm.box = "generic/ubuntu2004" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Ubuntu-20.sh" + s.privileged = false + s.args = [checkout, "install-apache"] + end end + config.vm.define "ubuntu-nginx" do |sub| + sub.vm.box = "generic/ubuntu2004" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Ubuntu-20.sh" + s.privileged = false + s.args = [checkout, "install-nginx"] + end + end - config.vm.provider "virtualbox" do |vb| - vb.gui = false - vb.customize ["modifyvm", :id, "--memory", "1024"] + config.vm.define "ubuntu18" do |sub| + sub.vm.box = "generic/ubuntu1804" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Ubuntu-18.sh" + s.privileged = false + s.args = [checkout] + end end + config.vm.define "ubuntu18-apache" do |sub| + sub.vm.box = "generic/ubuntu1804" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Ubuntu-18.sh" + s.privileged = false + s.args = [checkout, "install-apache"] + end + end - config.vm.provider :digital_ocean do |provider, override| - override.ssh.private_key_path = '~/.ssh/id_rsa' - override.vm.box = 'digital_ocean' - override.vm.box_url = "https://github.com/smdahlen/vagrant-digitalocean/raw/master/box/digital_ocean.box" + config.vm.define "ubuntu18-nginx" do |sub| + sub.vm.box = "generic/ubuntu1804" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Ubuntu-18.sh" + s.privileged = false + s.args = [checkout, "install-nginx"] + end + end - provider.token = 'e74c5c15501bd2782e689b0805ad577f954bfd39ea1fde3f17ff62835f2fc6c1' - # provider.token = 'YOUR TOKEN' - provider.image = 'ubuntu-14-04-x64' - provider.region = 'nyc2' - provider.size = '512mb' + config.vm.define "centos7" do |sub| + sub.vm.box = "centos/7" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Centos-7.sh" + s.privileged = false + s.args = [checkout] + end end + config.vm.define "centos" do |sub| + sub.vm.box = "generic/centos8" + sub.vm.provision :shell do |s| + s.path = "vagrant/Install-on-Centos-8.sh" + s.privileged = false + s.args = [checkout] + end + end + + end