Method: Chef::Resource.provides
- Defined in:
- lib/chef/resource.rb
.provides(name, **options, &block) ⇒ Object
Mark this resource as providing particular DSL.
Resources have an automatic DSL based on their resource_name, equivalent to ‘provides :resource_name` (providing the resource on all OS’s). If you declare a provides with the given resource_name, it replaces that provides (so that you can provide your resource DSL only on certain OS’s).
1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 |
# File 'lib/chef/resource.rb', line 1376 def self.provides(name, **, &block) name = name.to_sym # deliberately do not go through the accessor here @resource_name = name if resource_name.nil? if chef_version_for_provides && !.include?(:chef_version) [:chef_version] = chef_version_for_provides end result = Chef.resource_handler_map.set(name, self, **, &block) Chef::DSL::Resources.add_resource_dsl(name) result end |