From 96f0d8e2fa2fd85debc7be4e9b8f0556fa02cd01 Mon Sep 17 00:00:00 2001 From: Fabio Rehm Date: Mon, 14 Oct 2013 19:41:53 -0300 Subject: [PATCH] Allow bootstraping Vagrant VM with a cached stack tarball --- .gitignore | 1 + Vagrantfile | 11 +++++++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 2647fa47b..a3c121f5b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ .vagrant .DS_Store +stack.tgz diff --git a/Vagrantfile b/Vagrantfile index 184818d86..1d4d4e483 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -5,17 +5,24 @@ BOX_NAME = ENV["BOX_NAME"] || "raring" BOX_URI = ENV["BOX_URI"] || "https://cloud-images.ubuntu.com/vagrant/raring/current/raring-server-cloudimg-amd64-vagrant-disk1.box" DOKKU_DOMAIN = ENV["DOKKU_DOMAIN"] || "dokku.me" DOKKU_IP = ENV["DOKKU_IP"] || "10.0.0.2" +PREBUILT_STACK_URL = File.exist?("#{File.dirname(__FILE__)}/stack.tgz") ? 'file:///root/dokku/stack.tgz' : nil + +make_cmd = "make install" +if PREBUILT_STACK_URL + make_cmd = "PREBUILT_STACK_URL='#{PREBUILT_STACK_URL}' #{make_cmd}" +end Vagrant::configure("2") do |config| config.vm.box = BOX_NAME config.vm.box_url = BOX_URI config.vm.synced_folder File.dirname(__FILE__), "/root/dokku" - config.vm.provision :shell, :inline => "apt-get -y install git && cd /root/dokku && make install" config.vm.network :forwarded_port, guest: 80, host: 8080 config.vm.hostname = "#{DOKKU_DOMAIN}" config.vm.network :private_network, ip: DOKKU_IP - + config.vm.provider :virtualbox do |vb| vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"] end + + config.vm.provision :shell, :inline => "apt-get -y install git && cd /root/dokku && #{make_cmd}" end