Module: Chef::DSL::Recipe

Overview

Part of a family of DSL mixins.

Chef::DSL::Recipe mixes into Recipes and LWRP Providers.

  • this does not target core chef resources and providers.
  • this is restricted to recipe/resource/provider context where a resource collection exists.
  • cookbook authors should typically include modules into here.

Chef::DSL::Core mixes into Recipes, LWRP Providers and Core Providers

  • this adds cores providers on top of the Recipe DSL.
  • this is restricted to recipe/resource/provider context where a resource collection exists.
  • core chef authors should typically include modules into here.

Chef::DSL::Universal mixes into Recipes, LWRP Resources+Providers, Core Resources+Providers, and Attributes files.

  • this adds resources and attributes files.
  • do not add helpers which manipulate the resource collection.
  • this is for general-purpose stuff that is useful nearly everywhere.
  • it also pollutes the namespace of nearly every context, watch out.

Defined Under Namespace

Modules: FullDSL

Instance Method Summary collapse

Methods included from Mixin::LazyModuleInclude

descendants, include, included

Methods included from Definitions

add_definition, #evaluate_resource_definition, #has_resource_definition?

Methods included from Resources

add_resource_dsl, remove_resource_dsl

Methods included from ChefProvisioning

load_chef_provisioning

Methods included from Cheffish

load_cheffish

Methods included from Powershell

#ps_credential

Methods included from Audit

#control_group

Methods included from RebootPending

#reboot_pending?

Methods included from PlatformIntrospection

#docker?, #platform?, #platform_family?, #value_for_platform, #value_for_platform_family

Methods included from RegistryHelper

#registry_data_exists?, #registry_get_subkeys, #registry_get_values, #registry_has_subkeys?, #registry_key_exists?, #registry_value_exists?

Methods included from IncludeRecipe

#include_recipe, #load_recipe, #require_recipe

Methods included from DataQuery

#data_bag, #data_bag_item, #search

Methods included from EncryptedDataBagItem::CheckEncrypted

#encrypted?

Methods included from Mixin::NotifyingBlock

#notifying_block, #subcontext_block

Methods included from DeclareResource

#build_resource, #declare_resource, #delete_resource, #delete_resource!, #edit_resource, #edit_resource!, #find_resource, #find_resource!, #with_run_context

Methods included from Mixin::ShellOut

#a_to_s, #clean_array, #shell_out, #shell_out!, #shell_out_compact, #shell_out_compact!, #shell_out_compact_timeout, #shell_out_compact_timeout!, #shell_out_with_systems_locale, #shell_out_with_systems_locale!

Methods included from Mixin::PathSanity

#enforce_path_sanity, #sanitized_path

Methods included from Mixin::PowershellOut

#powershell_out, #powershell_out!

Methods included from Mixin::WindowsArchitectureHelper

#assert_valid_windows_architecture!, #disable_wow64_file_redirection, #forced_32bit_override_required?, #is_i386_process_on_x86_64_windows?, #node_supports_windows_architecture?, #node_windows_architecture, #restore_wow64_file_redirection, #valid_windows_architecture?, #with_os_architecture, #wow64_architecture_override_required?, #wow64_directory

Instance Method Details

#exec(args) ⇒ Object


74
75
76
# File 'lib/chef/dsl/recipe.rb', line 74

def exec(args)
  raise Chef::Exceptions::ResourceNotFound, "exec was called, but you probably meant to use an execute resource.  If not, please call Kernel#exec explicitly.  The exec block called was \"#{args}\""
end

#have_resource_class_for?(snake_case_name) ⇒ Boolean


68
69
70
71
72
# File 'lib/chef/dsl/recipe.rb', line 68

def have_resource_class_for?(snake_case_name)
  not resource_class_for(snake_case_name).nil?
rescue NameError
  false
end

#resource_class_for(snake_case_name) ⇒ Object


64
65
66
# File 'lib/chef/dsl/recipe.rb', line 64

def resource_class_for(snake_case_name)
  Chef::Resource.resource_for_node(snake_case_name, run_context.node)
end