Ответ 1
A Vagrantfile
- это просто код ruby, поэтому вы можете легко получить аргументы командной строки с помощью массива ARGV
.
Возьмите следующую команду бродяг, например:
vagrant up webserver
Это запустит окно Vagrant, определенное как веб-сервер в вашем Vagrantfile
. Затем вы можете получить доступ к таким аргументам:
ARGV[0] = up
ARGV[1] = webserver
Итак, используя ваш пример, вам нужно сделать следующее:
config.vm.provider :virtualbox do |vb|
vb.gui = false
if ARGV[0] == "up"
if ENV["VB_GUI"] == "true" then vb.gui = true
else
puts("[info] VB_GUI environment variable not set so running headless")
end
end
end