来自框嵌入式Vagrantfile

时间:2015-04-25 15:53:09

标签: ruby vagrant vagrantfile

我有一个自定义框,其中包含嵌入式Vagrantfile(我们称之为VF1)。此文件包含许多特定于框的配置/功能,目标是我应该(并且)能够生成项目Vagrantfile(VF2),只需:

Vagrant.configure(2) do |config|
  config.vm.box = "my/box"
end

仍然可以获得所有功能(Puppet集成,VirtualBox调整,YAML配置支持等)。问题是我想从VF1读取相对于VF2的文件。我看到它的方式,VF2在VF1之前被加载,因此,Vagrant应该能够在加载VF1之前找出VF2的位置。那么,我该如何访问这些信息?

现在,对我来说更具体一点,我将首先将GH repo链接到您可以看到我正在尝试做的事情:https://github.com/dkarlovi/vagrant-playground

所以:

  1. 我的自定义框名为dkarlovi/centos-6.6
  2. 它嵌入了自定义Vagrantfilehttps://github.com/dkarlovi/vagrant-playground/blob/master/box/_Vagrantfile
  3. 安装后,该文件最终以/home/dkarlovi/.vagrant.d/boxes/dkarlovi-VAGRANTSLASH-centos-6.6/1.0.0/virtualbox/include/_Vagrantfile
  4. 结尾
  5. 我在/home/dkarlovi/Vagrant/project1vagrant init dkarlovi/centos-6.6 --minimal
  6. 中创建了一个新的Vagrant项目
  7. 在运行时,我可以看到/home/dkarlovi/Vagrant/project1/Vagrantfile/home/dkarlovi/.vagrant.d/boxes/dkarlovi-VAGRANTSLASH-centos-6.6/1.0.0/virtualbox/include/_Vagrantfile之前得到评估,所以理论上我应该能够找出启动它的所有Vagrantfile
  8. 我目前正在模拟这个,请参阅line 11,但如果我从说/home/dkarlovi/Vagrant/project1/src
  9. 运行流浪汉,这不起作用

    我正在做所有这些以便能够检查是否存在某些文件(Puppet相关)并打开/关闭配置,这样我就可以拥有一个完整的Puppet堆栈(如果存在文件)或者没有(如果没有,)我的盒子变得更加通用和可用(对于我的用途)。

0 个答案:

没有答案