首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Chef在错误的文件夹中查找模板

Chef在错误的文件夹中查找模板
EN

Stack Overflow用户
提问于 2013-07-03 21:39:35
回答 1查看 1.1K关注 0票数 3

这是我的设置

代码语言:javascript
复制
cookbooks /
    supervisord /
        definitions /
            supervisord_group.erb
        templates /
            process_group.conf.erb
    my_app /
        recipes /
            default.rb

cookbooks/supervisord/definitions/supervisord_group.erb中,我有这样的功能:

代码语言:javascript
复制
define :supervisord_group, :programs => [], :enable => true do
include_recipe "supervisord::install"

if params[:enable]
    template "#{node[:supervisord][:conf_dir]}/#{params[:name]}_group.conf" do
    source "process_group.conf.erb"
            variables({
        :name => params[:name],
        :programs => params[:programs].join(",")
    })
    owner node[:user]
    group node[:group]
        mode 0755
    end
end
end

在cookbooks/my_app/recipes/default.rb中,我有:

代码语言:javascript
复制
supervisord_group "myapps" do
    programs ["test1", "test2"]
end

问题是,当我运行它时,我得到一个错误,它无法找到模板process_group.erb.conf。下面是输出:

代码语言:javascript
复制
Cookbook 'my_app' (0.0.0) does not contain a file at any of these locations:
templates/ubuntu-10.04/process_group.conf.erb
templates/ubuntu/process_group.conf.erb
templates/default/process_group.conf.erb

如果我的supervisord_group定义是引用模板的定义,那么为什么要让my_app食谱包含它呢?有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2013-07-03 21:54:38

因此,看起来模板提供程序有一个文档不明确的属性,它允许您指定模板所在的食谱。您必须将cookbook "supervisord"添加到模板设置中,才能正确地找到它。

感谢this question

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17449587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档