required_plugins = %w() requires_restart = false # Add vagrant-vbguest plugin only if using VirtualBox Vagrant.configure("2") do |config| config.vm.provider :virtualbox do required_plugins.push("vagrant-vbguest") end end required_plugins.each do |plugin| unless Vagrant.has_plugin? plugin system "vagrant plugin install #{plugin}" requires_restart = true end end if requires_restart exec "vagrant #{ARGV.join' '}" end