Cf README, this adds support to install and setup a dev instance through Vagrant. The Vagrantfile at the root handles the vagrant commands like `vagrant up`. Provisioning is done by the shell script `vagrant-provisionning.sh`, which is a light wrapper around the `create-dev-setup.sh` which does most of the job using the standard process, but limiting possible side-effect by ensuring the environment on which the install is performed is clean. Based on an Ubuntu precise 12.04 LTS.
34 lines
1.2 KiB
Ruby
34 lines
1.2 KiB
Ruby
# -*- mode: ruby -*-
|
|
# vi: set ft=ruby :
|
|
|
|
Vagrant.configure("2") do |config|
|
|
config.vm.box = "precise32"
|
|
config.vm.box_url = "http://files.vagrantup.com/precise32.box"
|
|
|
|
config.vm.network :forwarded_port, guest: 8000, host: 9000
|
|
config.vm.network :forwarded_port, guest: 8001, host: 9001
|
|
|
|
# Create a private network, which allows host-only access to the machine
|
|
# using a specific IP.
|
|
config.vm.network :private_network, ip: "192.168.20.40"
|
|
|
|
nfs_setting = RUBY_PLATFORM =~ /darwin/ || RUBY_PLATFORM =~ /linux/
|
|
config.vm.synced_folder ".", "/edx/edx-platform", id: "vagrant-root", :nfs => nfs_setting
|
|
|
|
# Make it so that network access from the vagrant guest is able to
|
|
# use SSH private keys that are present on the host without copying
|
|
# them into the VM.
|
|
config.ssh.forward_agent = true
|
|
|
|
config.vm.provider :virtualbox do |vb|
|
|
# Use VBoxManage to customize the VM. For example to change memory:
|
|
vb.customize ["modifyvm", :id, "--memory", "1024"]
|
|
|
|
# This setting makes it so that network access from inside the vagrant guest
|
|
# is able to resolve DNS using the hosts VPN connection.
|
|
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
|
|
end
|
|
|
|
config.vm.provision :shell, :path => "scripts/vagrant-provisioning.sh"
|
|
end
|