我们希望使用标准的Vagrant配置,包括多个人和几个项目。我们现在在Vagrant配置中经历了大量更新,这使得每个项目都很难保持最新状态。
完美的情况是使用只包含远程文件的Vagrantfile(例如Github上的URL,文件可以是公共的)。这可能与Vagrantfile或puppet清单文件一起使用吗?
答案 0 :(得分:0)
Vagrantfile
是一个Ruby文件。您可以编写实际的Ruby代码,然后执行它。
添加类似
的内容require "open-uri"
File.open('puppet_script.pp', 'w') do |f|
f.write open("http://here.goes.url/to/the/script.pp").read
end
之前Vagrant.configure(2) do |config|
P.S。我怀疑,您只想在配置即将发生时下载文件,所以请查看this question
答案 1 :(得分:0)
这是一个解决方案,但我不喜欢@Alik提供的方式。
我建议您使用 Failed to run spark-submit executable: java.io.IOException: Cannot run program "spark-submit": error=2, No such file or directory
和傀儡代码直接将所有代码签入github(或其他人)。
对于您的开发人员,您需要让他们运行Vagrantfile
以获取更新。管理代码更改会更容易
使用puppet清单文件,您不应经常更改它们。对于大多数项目,使用层次结构yaml文件为vagrant / dev / stag / prod提供不同的环境数据将非常实用。