我正在尝试调整我的 Vagrantfile,以便它在项目根目录丢失时自动创建一个文件夹。创建文件夹没问题,但我找不到在哪里创建该文件夹。
我能够弄清楚这个信息在Vagrant::Environment
对象上是可用的cwd
,但我不知道如何从我的 Vagrantfile 中获取当前实例。Vagrant 的文档似乎有点稀疏。
编辑:
我的问题不是关于如何使用 Puppet。我正在 Vagrantfile 中编写一些代码。我想知道如何获取Vagrant::Environment
.
我正在尝试调整我的 Vagrantfile,以便它在项目根目录丢失时自动创建一个文件夹。创建文件夹没问题,但我找不到在哪里创建该文件夹。
我能够弄清楚这个信息在Vagrant::Environment
对象上是可用的cwd
,但我不知道如何从我的 Vagrantfile 中获取当前实例。Vagrant 的文档似乎有点稀疏。
编辑:
我的问题不是关于如何使用 Puppet。我正在 Vagrantfile 中编写一些代码。我想知道如何获取Vagrant::Environment
.
要找到 Vagrantfile 目录,请在 Vagrantfile 中尝试:
vagrant_root = File.dirname(__FILE__)
默认情况下,根目录是/home/vagrant
new_folder
这是一个使用vagrant
用户创建的示例
exec { 'create folder':
cwd => '/home/vagrant',
user => 'vagrant',
command => 'mkdir new_folder',
unless => "/usr/bin/test -d /home/vagrant/new_folder",
}
我不确定这个Vagrant::Environment
对象是什么......它似乎没有记录......
如果我想在与我相同的目录中创建一个新文件夹,Vagrantfile
我只需使用 shell 配置程序:
config.vm.provision :shell, :inline => "mkdir -p /vagrant/test_folder;"
Vagrantfile
如果您想要在主机上包含 的文件夹,请尝试将其放入您的Vagrantfile
:
puts Dir.pwd
那应该打印目录...这样您就可以尝试使用该变量进行操作。