Chef infra 如何使用Chef自定义资源名称作为变量?

Chef infra 如何使用Chef自定义资源名称作为变量?,chef-infra,Chef Infra,如果我们正在定义一个资源,使其能够被如此使用: custom_resource 'name' do some_property some_value action :create end 有没有办法在自定义资源定义中将name用作变量?类似于文件资源使用名称作为路径的方式 file '/var/www/myfile.php' do content '<html>Some HTML</html>' mode '0755' owner 'web_ad

如果我们正在定义一个资源,使其能够被如此使用:

custom_resource 'name' do  
  some_property some_value
  action :create
end
有没有办法在自定义资源定义中将
name
用作变量?类似于
文件
资源使用名称作为路径的方式

file '/var/www/myfile.php' do
  content '<html>Some HTML</html>'
  mode '0755'
  owner 'web_admin'
  group 'web_admin'
end
file'/var/www/myfile.php'do
内容“一些HTML”
模式“0755”
所有者“网络管理员”
组“网络管理员”
结束

在您的自定义资源中,您可以使用
新的\u资源。name

有关详细信息,请签出:


默认情况下,所有自定义资源都具有您可以访问的
name
属性

new_resource.name
如果您需要一些其他属性成为名称属性,因为
文件
资源具有
路径
属性作为名称,则必须将
name\u属性:true
添加到资源中的声明中,如下所示:

property :some_property, String, name_property: true