我正在重新学习厨师(我在以前的生活中做了2年多),并帮助我在CentOS 7 Vagrant盒子上安装LAMP应用程序。为了简单起见,我的所有食谱都在/ path_to / cookbooks目录中,即
/path_to/cookbooks/
------------------/my_mysql
------------------/my_php
------------------/my_apache
他们也在同一个chef-repo.git存储库中,再次保持简单。也就是说,当我克隆我的chef-repo.git存储库时,我得到了上面的目录结构。
my_php食谱取决于my_apache食谱,所以我有这个..
my_php:metadata.rb file
depends 'my_apache'
这样我就可以在我的my_php:default.rb配方中重启httpd服务,就像这样
file '/var/www/html/info.php' do
content "
<?php phpinfo();
"
mode '0644'
owner 'root'
group 'root'
notifies :restart, 'service[httpd]', :immediately
end
再次保持简单,我不想使用Berkshelf。我如何为my_php食谱做这项工作?有可能吗?
$ chef exec rspec --color spec/unit/recipes/default_spec.rb
如果我不想用Berkshelf这样做,我的Berksfile应该是什么样的?
答案 0 :(得分:0)
好的,我现在回忆一下。使用Berksfile,我不得不这样做。 (它正在慢慢回来)
source 'https://supermarket.chef.io'
cookbook 'cf_apache', '~> 0.1.0', github: "my_user/chef-repo", rel: 'cookbooks/cf_apache'
我现在能够运行我的chefspec,但必须修复错误。