Chef 'package' 资源作为 LWRP
Chef 'package' resource as LWRP
我想扩展 'package' 资源并将其作为 LWRP 提供 - cookbookname_package 以便从其他食谱中调用。
是否需要手动重写从 package
resource 到 cookbookname/resources/package.rb
的所有属性?
有没有一种方法可以简单地从 Chef 源代码中获取现有的,或者是否只有一种方法可以作为翻译器并维护所有这些?
allow_downgrade TrueClass, FalseClass # Yum, RPM packages only
arch String, Array # Yum packages only
default_release String # Apt packages only
flush_cache Array
gem_binary String
homebrew_user String, Integer # Homebrew packages only
notifies # see description
options String
package_name String, Array # defaults to 'name' if not specified
provider Chef::Provider::Package
response_file String # Apt packages only
response_file_variables Hash # Apt packages only
source String
subscribes # see description
timeout String, Integer
version String, Array
action Symbol # defaults to :install if not specified
不,LWRP DSL 不允许子类化。您需要将文件放在 libraries/
下并编写 Plain Old Ruby 代码。
我想扩展 'package' 资源并将其作为 LWRP 提供 - cookbookname_package 以便从其他食谱中调用。
是否需要手动重写从 package
resource 到 cookbookname/resources/package.rb
的所有属性?
有没有一种方法可以简单地从 Chef 源代码中获取现有的,或者是否只有一种方法可以作为翻译器并维护所有这些?
allow_downgrade TrueClass, FalseClass # Yum, RPM packages only
arch String, Array # Yum packages only
default_release String # Apt packages only
flush_cache Array
gem_binary String
homebrew_user String, Integer # Homebrew packages only
notifies # see description
options String
package_name String, Array # defaults to 'name' if not specified
provider Chef::Provider::Package
response_file String # Apt packages only
response_file_variables Hash # Apt packages only
source String
subscribes # see description
timeout String, Integer
version String, Array
action Symbol # defaults to :install if not specified
不,LWRP DSL 不允许子类化。您需要将文件放在 libraries/
下并编写 Plain Old Ruby 代码。