# -*- mode: ruby -*- # vi: set ft=ruby : # This is a set of different vagrant setups that are primarily useful for package # building and testing. The techniques here were borrowed from the Git Fusion # team. Vagrant.configure(2) do |config| #General Centos VM config.vm.define 'test-centos6' do |vagrant| vagrant.vm.hostname = 'test-centos6' vagrant.vm.box = 'chef/centos-6.5' vagrant.vm.network :private_network, ip: '172.16.100.13' vagrant.vm.synced_folder '.', '/home/vagrant/hws' vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end # vagrant.vm.provision "shell", path: "setup.sh" end #Generic ubuntu machine config.vm.define 'ubuntu_12' do |vagrant| vagrant.vm.hostname = 'test-ubuntu12' vagrant.vm.box = 'precise64' vagrant.vm.box_url = 'http://files.vagrantup.com/precise64.box' # vagrant.vm.network :private_network, ip: '172.16.100.11' vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.network :public_network #vagrant.vm.network :private_network vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_helix_vb.sh" end #For latest Git Fusion on Ubuntu Trusty config.vm.define 'gitfusion_trusty' do |vagrant| vagrant.vm.hostname = 'gitfusion' vagrant.vm.box = 'ubuntu/trusty64' vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.network :public_network vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_helix_basic.sh" end #GF 15.1 machine for testing config.vm.define 'gitfusion_15.1' do |vagrant| vagrant.vm.hostname = 'gitfusion' vagrant.vm.box = 'ubuntu/precise64' vagrant.vm.communicator = "ssh" config.ssh.insert_key=false #vagrant.vm.network :private_network, ip: '172.16.100.12' vagrant.vm.network "public_network" vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_15.1.sh" end #Centos machines, one for GitSwarm and one for Git Fusion config.vm.define 'centos6gf' do |vagrant| vagrant.vm.hostname = 'test-centos6' vagrant.vm.box = 'chef/centos-6.5' # vagrant.vm.network :private_network, ip: '172.16.100.13' vagrant.vm.network :public_network vagrant.vm.synced_folder '.', '/home/vagrant/hws' vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "centos_gf.sh" end config.vm.define 'centos6gs' do |vagrant| vagrant.vm.hostname = 'test-centos6' vagrant.vm.box = 'chef/centos-6.5' # vagrant.vm.network :private_network, ip: '172.16.100.13' vagrant.vm.network :public_network vagrant.vm.synced_folder '.', '/home/vagrant/hws' vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "centos_gitswarm.sh" end #A VM for GitSwarm15.3 and beyond. config.vm.define 'gitswarm' do |vagrant| vagrant.vm.hostname = 'gitswarmvm' vagrant.vm.box = 'ubuntu/precise64' # vagrant.vm.network :private_network, ip: '172.16.100.13' vagrant.vm.network :public_network vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_gitswarm.sh" end #For testing GITLFS client with Git Fusion beta support. config.vm.define 'gitfusion_lfs' do |vagrant| vagrant.vm.hostname = 'gitfusion' vagrant.vm.box = 'ubuntu/trusty64' vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.network :public_network vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_helix_basic.sh" end #A VM for just running P4 and P4D config.vm.define 'basic' do |vagrant| vagrant.vm.hostname = 'basic' vagrant.vm.box = 'ubuntu/precise64' # vagrant.vm.network :private_network, ip: '172.16.100.13' vagrant.vm.network :public_network vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_helix_vb.sh" end #VMs for GitSwarm, which connects to a VM running GitFusion and P4D. config.vm.define 'gitswarm_stand_alone' do |vagrant| vagrant.vm.hostname = 'gitswarmvm' vagrant.vm.box = 'ubuntu/precise64' # vagrant.vm.network :private_network, ip: '172.16.100.13' vagrant.vm.network :public_network vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_gitswarm.sh" end #The VM containing P4D and GitFusion. config.vm.define 'perforce_gs_components' do |vagrant| vagrant.vm.hostname = 'gitfusion' vagrant.vm.box = 'ubuntu/trusty64' vagrant.vm.communicator = "ssh" config.ssh.insert_key=false vagrant.vm.network :public_network vagrant.vm.synced_folder '.', '/home/vagrant/hws' # We have real problems provisioning a machine with only 1GB RAM. vagrant.vm.provider 'virtualbox' do |vb| vb.memory = 4096 end vagrant.vm.provision "shell", path: "setup_helix_basic.sh" end #A windows7 Vagrant box config.vm.define "windows7" do |windows| windows.vm.box = "ferventcoder/win7pro-x64-nocm-lite" windows.vm.synced_folder ".", "/home/vagrant/hws", create: true, owner: "vagrant", group: "vagrant" # windows.vm.communicator = "winrm" windows.vm.communicator = "ssh" config.ssh.insert_key=false windows.vm.network :public_network # windows.vm.provision :shell, path: "p4gf_submit_trigger_sanity.cmd" # end end end