Update of Packer builder for Vagrant and various clouds
[osm/devops.git] / packer / vagrant_tests / Vagrantfile
1 # -*- mode: ruby -*-
2 # vi: set ft=ruby :
3
4 #   Licensed under the Apache License, Version 2.0 (the "License");
5 #   you may not use this file except in compliance with the License.
6 #   You may obtain a copy of the License at
7 #
8 #       http://www.apache.org/licenses/LICENSE-2.0
9 #
10 #   Unless required by applicable law or agreed to in writing, software
11 #   distributed under the License is distributed on an "AS IS" BASIS,
12 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 #   See the License for the specific language governing permissions and
14 #   limitations under the License.
15
16 Vagrant.configure("2") do |config|
17   required_plugins = %w( vagrant-vbguest vagrant-disksize )
18   _retry = false
19   required_plugins.each do |plugin|
20       unless Vagrant.has_plugin? plugin
21           system "vagrant plugin install #{plugin}"
22           _retry=true
23       end
24   end
25   if (_retry)
26       exec "vagrant " + ARGV.join(' ')
27   end
28   config.disksize.size = "40GB"
29   config.vm.box = "osm/osm-rel7"
30   config.vm.network "forwarded_port", guest: 80, host: 8080
31   config.vm.provider "virtualbox" do |vb|
32     vb.memory = "6144"
33     vb.cpus = 2
34   end
35   config.vm.provision "shell", name: "Post-provisiĆ³n", privileged: false, inline: <<-SHELL
36     /etc/osm/update_osm_info_docker.sh  # Updates IP address for Docker Swarm
37   SHELL
38 end