我試圖實現對流浪新的自定義選項,如下Vagrantfile
:如何在沒有無效選項警告的情況下爲Vagrant實現自定義選項?
# -*- mode: ruby -*-
require 'getoptlong'
opts = GetoptLong.new(
[ '--vm-name', GetoptLong::OPTIONAL_ARGUMENT ],
)
vm_name = ENV['VM_NAME'] || 'default'
begin
opts.each do |opt, arg|
case opt
when '--vm-name'; vm_name = arg
end
end
rescue
# @fixme: An invalid option error happens here.
end
Vagrant.configure(2) do |config|
config.vm.define vm_name
config.vm.provider "virtualbox" do |vbox, override|
override.vm.box = "ubuntu/wily64"
end
end
現在,每次當我運行任何流浪漢命令它顯示下面的警告,例如
vagrant destroy -f
/opt/vagrant/embedded/gems/gems/vagrant-1.8.1/bin/vagrant:無效選項 - ˚F
又如:
$ vagrant --vm-name=foo up --no-provision
/opt/vagrant/embedded/gems/gems/vagrant-1.8.1/bin/vagrant: unrecognized option `--no-provision'
Bringing machine 'foo' up with 'virtualbox' provider...
==> foo: Importing base box 'ubuntu/wily64'...
有沒有什麼辦法可以忽略上述rescue
節中發生的這種警告?
這個post是類似的,但它在這種情況下沒有多大幫助。
我認爲這是可能的,對於上面顯示的用例 - 請參閱下面的答案。 –