Commit 7c84249438e0471da4f0ab15e1b3467308239aba
Committed by
Sergio Oliveira
1 parent
a045ae18
Exists in
master
and in
39 other branches
Vagrantfile: ask about which box to use
Showing
1 changed file
with
25 additions
and
5 deletions
Show diff stats
Vagrantfile
@@ -6,7 +6,26 @@ | @@ -6,7 +6,26 @@ | ||
6 | # - trusty64 | 6 | # - trusty64 |
7 | # - centos6.5 | 7 | # - centos6.5 |
8 | 8 | ||
9 | -distro = "precise64" | 9 | +default_box = "precise64" |
10 | +if $stdin.isatty | ||
11 | + if Dir.glob(File.join(File.dirname("__FILE__"), '.vagrant/**/id')).empty? | ||
12 | + puts "Bases boxes available locally:" | ||
13 | + puts '------------------------------' | ||
14 | + system('vagrant', 'box', 'list') | ||
15 | + puts | ||
16 | + puts 'Base boxes we can provide you:' | ||
17 | + puts '------------------------------' | ||
18 | + puts 'precise64 (virtualbox)' | ||
19 | + puts 'trusty64 (virtualbox)' | ||
20 | + puts 'centos6.5 (virtualbox)' | ||
21 | + puts | ||
22 | + print "Which box to use [#{default_box}]: " | ||
23 | + choice = $stdin.gets.strip | ||
24 | + if !choice.empty? | ||
25 | + default_box = choice | ||
26 | + end | ||
27 | + end | ||
28 | +end | ||
10 | 29 | ||
11 | # Vagrantfile API/syntax version. Don't touch unless you know what you're doing! | 30 | # Vagrantfile API/syntax version. Don't touch unless you know what you're doing! |
12 | VAGRANTFILE_API_VERSION = "2" | 31 | VAGRANTFILE_API_VERSION = "2" |
@@ -18,13 +37,14 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| | @@ -18,13 +37,14 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| | ||
18 | 37 | ||
19 | # Every Vagrant virtual environment requires a box to build off of. | 38 | # Every Vagrant virtual environment requires a box to build off of. |
20 | 39 | ||
21 | - config.vm.box = distro | 40 | + config.vm.box = default_box |
22 | 41 | ||
23 | - if distro == "precise64" | 42 | + case config.vm.box |
43 | + when "precise64" | ||
24 | config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/precise/current/precise-server-cloudimg-amd64-vagrant-disk1.box" | 44 | config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/precise/current/precise-server-cloudimg-amd64-vagrant-disk1.box" |
25 | - elsif distro == "trusty64" | 45 | + when "trusty64" |
26 | config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box" | 46 | config.vm.box_url = "https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box" |
27 | - elsif distro == "centos6.5" | 47 | + when "centos6.5" |
28 | config.vm.box_url = "https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box" | 48 | config.vm.box_url = "https://github.com/2creatives/vagrant-centos/releases/download/v6.5.3/centos65-x86_64-20140116.box" |
29 | end | 49 | end |
30 | 50 |