如何共享自定义资源属性值

时间:2016-02-12 15:15:03

标签: chef

我刚开始在Chef 12.5中引入new pattern之后编写自定义资源。

我想在资源之间共享属性值。例如,可能有一个资源用于安装应用程序,然后是另一个用于向该应用程序添加功能的资源,并且该资源取决于安装位置。

app 'myApp' do
    install_path '/usr/local'
    action       :install
end

app_feature 'newFeature' do
    app     'myApp'
    action  :install
end

app_feature资源取决于install_path资源的app。如何在install_path代码中引用app_feature

我在Poise Python cookbook看到过这样的事情,但对资源开发不熟悉,我无法将其翻译成我的场景。

1 个答案:

答案 0 :(得分:0)

Poise的一个功能称为“子资源”,其中两个资源(容器和子容器)之间存在父/子关系。孩子可以通过访问者方法访问父母的数据。不幸的是,像大多数Poise一样,我实际上没有记录任何这些: - (

您可能想要查看应用程序食谱,因为它有一个相对容易实现这样的东西的框架。