2014-11-23 04:45:42 +00:00
|
|
|
# -*- mode: ruby -*-
|
|
|
|
# vi: set ft=ruby :
|
2016-05-16 13:36:51 +00:00
|
|
|
require 'yaml'
|
2014-11-23 04:45:42 +00:00
|
|
|
|
|
|
|
# Load local config overrides
|
|
|
|
local_config = File.file?("local_config.yml") ? YAML.load(File.read("local_config.yml")) : {}
|
2014-01-08 15:52:21 +00:00
|
|
|
|
|
|
|
Vagrant::configure("2") do |config|
|
2014-01-05 17:24:04 +00:00
|
|
|
# All Vagrant configuration is done here. The most common configuration
|
|
|
|
# options are documented and commented below. For a complete reference,
|
|
|
|
# please see the online documentation at vagrantup.com.
|
|
|
|
|
|
|
|
# Every Vagrant virtual environment requires a box to build off of.
|
2014-11-23 04:45:42 +00:00
|
|
|
config.vm.box = local_config["box"] || "hashicorp/precise64"
|
|
|
|
|
|
|
|
# Virtualbox
|
|
|
|
config.vm.provider "virtualbox" do |vb|
|
|
|
|
vb.customize [
|
|
|
|
"modifyvm", :id,
|
|
|
|
"--memory", local_config['ram'] || "1024",
|
|
|
|
"--cpus", local_config['cpu'] || 1,
|
|
|
|
"--ioapic", "on",
|
|
|
|
]
|
2014-01-08 15:52:21 +00:00
|
|
|
end
|
2014-01-05 17:24:04 +00:00
|
|
|
|
2014-11-23 04:45:42 +00:00
|
|
|
#vmware_fusion
|
|
|
|
config.vm.provider "vmware_fusion" do |v|
|
|
|
|
v.vmx["memsize"] = local_config['ram'] || "1024"
|
|
|
|
v.vmx["numvcpus"] = local_config['cpu'] || 1
|
|
|
|
end
|
2014-01-05 17:24:04 +00:00
|
|
|
|
|
|
|
# Boot with a GUI so you can see the screen. (Default is headless)
|
|
|
|
# config.vm.boot_mode = :gui
|
|
|
|
|
|
|
|
# Assign this VM to a host-only network IP, allowing you to access it
|
|
|
|
# via the IP. Host-only networks can talk to the host machine as well as
|
|
|
|
# any other machines on the same network, but cannot be accessed (through this
|
|
|
|
# network interface) by any external networks.
|
2014-01-08 15:52:21 +00:00
|
|
|
config.vm.network "forwarded_port", guest: 5001, host: 5001
|
2014-01-05 17:24:04 +00:00
|
|
|
|
|
|
|
# Share an additional folder to the guest VM. The first argument is
|
|
|
|
# an identifier, the second is the path on the guest to mount the
|
|
|
|
# folder, and the third is the path on the host to the actual folder.
|
2014-01-08 15:52:21 +00:00
|
|
|
config.vm.synced_folder "./", "/vagrant", create: true
|
2014-01-05 17:24:04 +00:00
|
|
|
|
|
|
|
# Provision the development environment
|
|
|
|
config.vm.provision :shell do |shell|
|
|
|
|
shell.inline = 'sudo /vagrant/bin/provision'
|
|
|
|
end
|
|
|
|
end
|