我开始使用Vagrant(+ chef_solo)作为我的应用程序,现在App的文件夹包含以下文件和目录:
... app's files
.vagrant
Vagrantfile
Cheffile
Cheffile.lock
data_bags
cookbooks
projects_cookbooks
... app's files
如果我可以将与Vagrant相关的文件移动到特殊目录中,那将会很棒。 我的意思是这样的:
... app's files
.vagrant
Vagrantfile
Vagrant
Cheffile
Cheffile.lock
data_bags
cookbooks
projects_cookbooks
... app's files
在这种情况下,我只会在我的应用程序的根文件夹中获得3个文件(dirs)
... app's files
.vagrant
Vagrantfile
Vagrant
... app's files
我认为这对我和我的项目非常有益。
所以,我想恢复Vargant文件的文件结构。
有人知道我该怎么办? 或者Vargant文件的结构是完全硬编码的?
答案 0 :(得分:0)
vagrant chef provisioning有一些可以使用的变量,因此您已经可以使用
config.vm.provision :chef_solo do |chef|
chef.cookbooks_path = ["vagrant/cookbooks", "vagrant/projects_cookbooks"]
chef.data_bags_path = "vagrant/data_bags"
end
我不确定Cheffile
但是我相信它必须与Vagrantfile
一起存储,但我不完全确定
答案 1 :(得分:0)
我想我找到了一种让我的应用程序文件夹更好的方法。 如果您想清理项目文件夹,请执行以下操作:
(我的意思是APP是HOST机器上项目的文件夹)
1)在APP文件夹中创建 Vagrant 文件夹
2)移动以下文件
.vagrant
Cheffile
Cheffile.lock
Vagrantfile
cookbooks
cookbooks_addons
bata_bags
... and all Vagrant-related files
进入APP / Vagrant文件夹
3)在 Vagrant 文件中添加额外的行
config.vm.synced_folder '..', '/APP'
就是这样。现在,您将所有与Vagrant相关的文件放入Vagrant文件夹
现在你应该使用 vagrant up , vagrant ssh , vagrant halt 进入 APP / Vagrant 文件夹。< / p>
您应该使用虚拟机中的 / APP 文件夹来访问您的项目代码。
看起来对我很好!