diff --git a/Vagrantfile b/Vagrantfile index ebb2498ba..a2c2c1c8f 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -7,10 +7,12 @@ Vagrant.require_version ">= 1.8.0" CONFIG = File.join(File.dirname(__FILE__), "vagrant/config.rb") +COREOS_URL_TEMPLATE = "https://storage.googleapis.com/%s.release.core-os.net/amd64-usr/current/coreos_production_vagrant.json" + SUPPORTED_OS = { - "coreos-stable" => {box: "coreos-stable", bootstrap_os: "coreos", user: "core"}, - "coreos-alpha" => {box: "coreos-alpha", bootstrap_os: "coreos", user: "core"}, - "coreos-beta" => {box: "coreos-beta", bootstrap_os: "coreos", user: "core"}, + "coreos-stable" => {box: "coreos-stable", bootstrap_os: "coreos", user: "core", box_url: COREOS_URL_TEMPLATE % ["stable"]}, + "coreos-alpha" => {box: "coreos-alpha", bootstrap_os: "coreos", user: "core", box_url: COREOS_URL_TEMPLATE % ["alpha"]}, + "coreos-beta" => {box: "coreos-beta", bootstrap_os: "coreos", user: "core", box_url: COREOS_URL_TEMPLATE % ["beta"]}, "ubuntu" => {box: "bento/ubuntu-16.04", bootstrap_os: "ubuntu", user: "ubuntu"}, } @@ -24,7 +26,6 @@ $shared_folders = {} $forwarded_ports = {} $subnet = "172.17.8" $os = "ubuntu" -$box = SUPPORTED_OS[$os][:box] # The first three nodes are etcd servers $etcd_instances = $num_instances # The first two nodes are masters @@ -39,6 +40,7 @@ if File.exist?(CONFIG) require CONFIG end +$box = SUPPORTED_OS[$os][:box] # if $inventory is not set, try to use example $inventory = File.join(File.dirname(__FILE__), "inventory") if ! $inventory @@ -64,8 +66,10 @@ Vagrant.configure("2") do |config| # always use Vagrants insecure key config.ssh.insert_key = false config.vm.box = $box + if SUPPORTED_OS[$os].has_key? :box_url + config.vm.box_url = SUPPORTED_OS[$os][:box_url] + end config.ssh.username = SUPPORTED_OS[$os][:user] - # plugin conflict if Vagrant.has_plugin?("vagrant-vbguest") then config.vbguest.auto_update = false