-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathVagrantfile
46 lines (37 loc) · 887 Bytes
/
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
# -*- mode: ruby -*-
# vi: set ft=ruby :
# VM Configurations to install and test the base development environment.
$setup = <<-SCRIPT
#!/usr/bin/env bash
set -euo pipefail
rm -Rdf $HOME/src
mkdir -p $HOME/src
cd /mnt/src
git ls-files -z | xargs -0 -i cp --parents {} $HOME/src
cd $HOME/src
bin/setup.sh
SCRIPT
$test = <<-SCRIPT
#!/usr/bin/env bash
set -euo pipefail
if ! command -v direnv &> /dev/null; then
exit 1
fi
SCRIPT
Vagrant.configure("2") do |config|
config.vm.synced_folder ".", "/mnt/src"
config.vm.provision "setup", type: "shell" do |p|
p.inline = $setup
p.privileged = false
end
config.vm.provision "test", type: "shell" do |p|
p.inline = $test
p.privileged = false
end
config.vm.define "ubuntu1904" do |v|
v.vm.box = "generic/ubuntu1904"
v.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = "2048"
end
end
end