我一直在试图弄清楚如何从packer创建一个自定义的vagrant文件,我知道在这一post-processor
部分你将定义一个可以从中废弃的目录,我不明白的是,是否需要一个专门命名的文件从哪里收集数据.
"post-processors": [{ "vagrantfile_template": "configs/vagrantfile_template", "type": "vagrant" }],
根据我的知识,上面的代码可以查看configs/vagrantfile_template
,但需要在这里提供什么?我会创建一个Vagrantfile
并将其放在那里,还是需要一个专门命名的Ruby文件?
后处理器中的vagrantfile_template
选项vagrant
直接指向文件而不是目录[0].此文件的内容应该像普通的Vagrantfile一样构造,并包含您正在创建的框工件的任何自定义.
例如,如果您希望自定义Vagrant框的用户/vagrant
默认情况下未安装共享文件夹,则您的Vagrantfile
模板可能如下所示...
Vagrant.configure("2") do |config| config.vm.synced_folder \ ".", "/vagrant", :disabled => true end
[0]:https://github.com/mitchellh/packer/blob/53b1db16692c7bf2e654ac125b8676c02154d07a/post-processor/vagrant/post-processor.go#L113-L138