2016-08-20 60 views
0

有没有办法从配方中获取cookbook_path(在solo.rbclient.rb中定义)?厨师 - 在配方中获取cookbook_path

我发现这一点:

run_context.cookbook_collection 

,输出食谱的缓存路径,而不是原来的cookbook_path

+0

什么是'cookbook_path'在你的观点?文档说*厨师客户*上的食谱子目录。你有什么样的例子,你期望什么,你会得到什么?或者你在找这个? http://stackoverflow.com/questions/14075847/how-to-get-a-full-path-of-the-running-cookbook-in-the-rightscale-chef-recipe – slowjack2k

+0

因此,在'solo.rb'我已经将它定义为'/ path/to/my/cookbooks'。使用'run_context.cookbook_collection'或':: Chef :: Config时。 cookbook_path'输出'/ etc/chef/local-mode-cache/cache/cookboo ks' –

+0

你有远程主机上的'/ etc/chef/client.rb'吗? 'cookbook_path'每个地方都有相同的名称,但我认为它具有不同的含义,取决于位置(solo.rb与knife.rb与client.rb)。你最终的目标是什么?你想要做什么? – slowjack2k

回答

0

您可以通过Chef::Config访问厨师客户的/ Solo的配置设置。在你的情况下,使用:

Chef::Config[:cookbook_path] 
+0

这只输出缓存目录:'/ etc/chef/local-mode-cache/cache/cookbooks' –