我想尽量减少我的流浪者项目用户的设置。
我已经认为安装Virtualbox和Vagrant对我的项目用户来说太多了。有关详细信息,请参阅here。
因为我的项目依赖于一些插件,而不是要求用户使用vagrant plugin install ...
,所以我想自动安装插件。
问题1:在我的项目树中包含插件源并使用Vagrant.require_plugin "plugin-dir/plugin-name"
包含插件是否可以?
问题2:这种方法有效吗?
我依赖的插件在github上可用,所以我可以将它们添加为git子模块,如here所述
修改
上述方法不适用于vagrant-vbguest插件
答案 0 :(得分:2)
我有类似的需求,我采用的方法是在Vagrantfile
的顶部添加以下内容:
unless Vagrant.has_plugin?("vagrant-omnibus") || ARGV[0] == 'plugin'
origargs = ARGV.join(" ");
puts "Plugins not found"
exec "vagrant plugin install vagrant-omnibus;vagrant #{origargs}"
end
我猜它并没有真正回答你的问题,但它对我有用,我发现我还需要在我的ubuntu设置的sudo
命令前添加vagrant plugin
,但是当你不要说明您正在运行的可能不相关的操作系统。