-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathVagrantfile
53 lines (44 loc) · 1.73 KB
/
Vagrantfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# -*- mode: ruby -*-
# vi: set ft=ruby :
def set_up_base_box(config)
config.vm.box = "ubuntu/xenial64"
end
def set_jenkins_network_configs(config)
config.vm.network "private_network", ip: "172.28.128.10"
config.vm.network "private_network", ip: "172.28.129.5", auto_config: false
config.vm.network "private_network", ip: "172.28.130.2", auto_config: false
end
def set_testing_network_configs(config)
config.vm.network "private_network", type: "dhcp"
config.vm.network "private_network", ip: "172.28.128.1", auto_config: false
config.vm.network "private_network", ip: "172.28.129.2", auto_config: false
end
def shared_config(config)
config.vm.provision "file", source: "~/.ssh/id_rsa", destination: "~/.ssh/id_rsa"
config.vm.provision "file", source: "~/.ssh/known_hosts", destination: "~/.ssh/known_hosts"
config.vm.provision "file", source: "~/.ssh/id_rsa.pub", destination: "~/.ssh/id_rsa.pub"
config.vm.provision :shell, path: "vagrant/provision.sh"
config.vm.provision :reload
config.ssh.extra_args = "-t"
config.vm.provider :virtualbox do |vb|
vb.customize [ "modifyvm", :id, "--memory", 2048 ]
end
end
Vagrant.configure("2") do |config|
config.vm.define :test, primary: true do |test|
set_up_base_box test
set_testing_network_configs test
shared_config test
end
config.vm.define :jenkins_build, autostart: false do |jenkins_build|
set_up_base_box jenkins_build
set_jenkins_network_configs jenkins_build
shared_config jenkins_build
end
config.vm.define :jenkins_coverity, autostart: false do |jenkins_coverity|
set_up_base_box jenkins_coverity
jenkins_coverity.disksize.size = "20GB"
set_jenkins_network_configs jenkins_coverity
shared_config jenkins_coverity
end
end