Chef infra 对海关LWRP申报的质疑

Chef infra 对海关LWRP申报的质疑,chef-infra,chef-recipe,chef-solo,Chef Infra,Chef Recipe,Chef Solo,我正在做我的自定义LWRP。但我对它的实施持怀疑态度 我查了一下蓝丸,我看到了 def load_current_resource @current_resource = Chef::Resource::BluepillService.new(new_resource.name) @current_resource.service_name(new_resource.service_name) Chef::Log.debug("Checking status of service

我正在做我的自定义LWRP。但我对它的实施持怀疑态度

我查了一下蓝丸,我看到了

def load_current_resource
  @current_resource = Chef::Resource::BluepillService.new(new_resource.name)
  @current_resource.service_name(new_resource.service_name)

  Chef::Log.debug("Checking status of service #{new_resource.service_name}")

  determine_current_status!

  @current_resource
end
我在别人的食谱中看到了这一点,我想做这样的事情

def load_current_resource
   @current_resource = Chef::Resource::MyCustomLWRP.new(new_resource.name)
   @current_resource
end
但是我找不到我必须在哪里定义Chef::Resource::MyCustomLWRP


我想这样做的目的是创建一个幂等资源。

创建自己的自定义资源(LWRP)需要经过许多步骤。总之,它涉及在cookbooks
resources
目录中创建一个文件,并在
providers
目录中创建一个同名文件

resources
目录中创建的文件定义了自定义资源可以接受的操作和属性。在
providers
目录中创建的文件为资源文件中指定的每个操作提供了实现

资源的名称将是cookbook名称+不带rb扩展名的文件名

有关详细信息,这里有一个很棒的教程: