forked from how2dock/docbook
/
Vagrantfile
51 lines (43 loc) · 1.53 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
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
$bootstrap=<<SCRIPT
apt-get update
apt-get -y install unzip
apt-get -y install python-pip
curl -sSL https://get.docker.com/ | sudo sh
gpasswd -a vagrant docker
service docker restart
SCRIPT
$gce=<<SCRIPT
wget https://dl.google.com/dl/cloudsdk/release/google-cloud-sdk.zip
unzip google-cloud-sdk.zip
rm google-cloud-sdk.zip
google-cloud-sdk/install.sh --usage-reporting=false --path-update=true --bash-completion=true --rc-path=/home/vagrant/.bashrc --disable-installation-options
yes | /home/vagrant/google-cloud-sdk/bin/gcloud components update preview
rm /home/vagrant/.bashrc
echo "source '/home/vagrant/google-cloud-sdk/path.bash.inc'\nsource '/home/vagrant/google-cloud-sdk/completion.bash.inc'" >> /home/vagrant/.profile
SCRIPT
$aws=<<SCRIPT
pip install awscli
SCRIPT
$azure=<<SCRIPT
apt-get -y install nodejs-legacy
apt-get -y install npm
npm install azure-cli --global
SCRIPT
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.define "cloud" do |cloud|
cloud.vm.box = "ubuntu/trusty64"
cloud.vm.hostname = "cloud"
cloud.vm.network :private_network, ip: "192.168.33.10"
cloud.vm.provider "virtualbox" do |vb|
vb.customize ["modifyvm", :id, "--memory", "1024"]
end
cloud.vm.provision :shell, inline: $bootstrap
cloud.vm.provision :shell, inline: $gce
cloud.vm.provision :shell, inline: $aws
cloud.vm.provision :shell, inline: $azure
end
end