diff options
Diffstat (limited to 'lib/chef/dsl/recipe.rb')
-rw-r--r-- | lib/chef/dsl/recipe.rb | 41 |
1 files changed, 17 insertions, 24 deletions
diff --git a/lib/chef/dsl/recipe.rb b/lib/chef/dsl/recipe.rb index c8b1aed74d..9da812cec0 100644 --- a/lib/chef/dsl/recipe.rb +++ b/lib/chef/dsl/recipe.rb @@ -1,7 +1,7 @@ -#-- +# # Author:: Adam Jacob (<adam@chef.io>) # Author:: Christopher Walters (<cw@chef.io>) -# Copyright:: Copyright 2008-2016, 2009-2015 Chef Software, Inc. +# Copyright:: Copyright 2008-2018, Chef Software Inc. # License:: Apache License, Version 2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -21,32 +21,37 @@ require "chef/exceptions" require "chef/dsl/resources" require "chef/dsl/definitions" require "chef/dsl/data_query" -require "chef/dsl/platform_introspection" require "chef/dsl/include_recipe" require "chef/dsl/registry_helper" require "chef/dsl/reboot_pending" require "chef/dsl/audit" require "chef/dsl/powershell" require "chef/dsl/core" -require "chef/dsl/method_missing" require "chef/mixin/lazy_module_include" class Chef module DSL - # This is the "Recipe DSL" which is all the sugar, plus all the resources and definitions - # which are mixed into user LWRPs/Resources/Providers. + # 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. # - # - If you are writing cookbooks: you have come to the right place, please inject things - # into here if you want to make them available to all recipe and non-core provider code. + # 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. # - # - If you are writing core chef: you have likely come to the wrong place, please consider - # dropping your DSL modules into Chef::DSL::Core instead so that we can use them in core - # providers (unless they are *only* intended for recipe code). + # 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. # module Recipe include Chef::DSL::Core include Chef::DSL::DataQuery - include Chef::DSL::PlatformIntrospection include Chef::DSL::IncludeRecipe include Chef::DSL::RegistryHelper include Chef::DSL::RebootPending @@ -54,8 +59,6 @@ class Chef include Chef::DSL::Powershell include Chef::DSL::Resources include Chef::DSL::Definitions - # method_missing will disappear in Chef 13 - include Chef::DSL::MethodMissing extend Chef::Mixin::LazyModuleInclude def resource_class_for(snake_case_name) @@ -71,19 +74,9 @@ class Chef 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 - - # @deprecated Use Chef::DSL::Recipe instead, will be removed in Chef 13 - module FullDSL - include Chef::DSL::Recipe - extend Chef::Mixin::LazyModuleInclude - end end end end # Avoid circular references for things that are only used in instance methods require "chef/resource" - -# **DEPRECATED** -# This used to be part of chef/mixin/recipe_definition_dsl_core. Load the file to activate the deprecation code. -require "chef/mixin/recipe_definition_dsl_core" |