Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby Chef-提供程序中的模板找不到源_Ruby_Chef Infra - Fatal编程技术网

Ruby Chef-提供程序中的模板找不到源

Ruby Chef-提供程序中的模板找不到源,ruby,chef-infra,Ruby,Chef Infra,我有一个nginx站点的资源和提供者,它为一个站点写出一个配置文件 action :start do template "/etc/nginx/sites-enabled/my_site" do source "nginx_site.conf.erb" notifies :reload, "service[nginx]" end end 当我从另一本烹饪书中使用它时,没有找到模板nginx_site.conf.erb,因为chef正在寻找

我有一个nginx站点的资源和提供者,它为一个站点写出一个配置文件

action :start do
    template "/etc/nginx/sites-enabled/my_site" do
        source    "nginx_site.conf.erb"
        notifies  :reload, "service[nginx]"
    end
end
当我从另一本烹饪书中使用它时,没有找到模板nginx_site.conf.erb,因为chef正在寻找调用此资源的模板

有没有办法告诉chef在nginx资源和提供者食谱中查找模板?

您可以为其设置食谱值


我真的很想看到这个问题的答案。但是如果没有,我建议您在特定资源之外定义模板(action:nothing),并在执行操作时通知它,就像在模板资源中一样。如果未调用启动操作,则模板资源也不会调用。所以你会得到同样的结果。
action :start do
  template "/etc/nginx/sites-enabled/my_site" do
    source    "nginx_site.conf.erb"
    notifies  :reload, "service[nginx]"
    cookbook 'nginx'
  end
end