diff options
author | Lamont Granquist <lamont@scriptkiddie.org> | 2016-03-15 15:09:45 -0700 |
---|---|---|
committer | Lamont Granquist <lamont@scriptkiddie.org> | 2016-03-15 15:09:45 -0700 |
commit | d32484b767e11d4da48fd1c185315fe08b25fdbe (patch) | |
tree | 95f33d862ff59b6704f506279ec72854fad956c7 /lib/chef/dsl | |
parent | c1a389c2a8452e9b796aa1d34c4d9e51f4af30c7 (diff) | |
download | chef-d32484b767e11d4da48fd1c185315fe08b25fdbe.tar.gz |
lazy module inclusion into DSL moduleslcg/use-and-lazy-module-include
Chef::DSL::Recipe::FullDSL.send(:include, MyModule) will now patch all
its descendants that it has been included into (works the way actual
inheritance works now).
Diffstat (limited to 'lib/chef/dsl')
-rw-r--r-- | lib/chef/dsl/recipe.rb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/chef/dsl/recipe.rb b/lib/chef/dsl/recipe.rb index 6d254df48d..22be303c5b 100644 --- a/lib/chef/dsl/recipe.rb +++ b/lib/chef/dsl/recipe.rb @@ -23,21 +23,21 @@ require "chef/mixin/powershell_out" require "chef/dsl/resources" require "chef/dsl/definitions" require "chef/dsl/declare_resource" +require "chef/mixin/lazy_module_include" class Chef module DSL - # == Chef::DSL::Recipe # Provides the primary recipe DSL functionality for defining Chef resource # objects via method calls. module Recipe - include Chef::Mixin::ShellOut include Chef::Mixin::PowershellOut include Chef::DSL::Resources include Chef::DSL::Definitions include Chef::DSL::DeclareResource + extend Chef::Mixin::LazyModuleInclude def resource_class_for(snake_case_name) Chef::Resource.resource_for_node(snake_case_name, run_context.node) @@ -113,6 +113,8 @@ class Chef require "chef/dsl/reboot_pending" require "chef/dsl/audit" require "chef/dsl/powershell" + require "chef/mixin/lazy_module_include" + include Chef::DSL::DataQuery include Chef::DSL::PlatformIntrospection include Chef::DSL::IncludeRecipe @@ -121,6 +123,9 @@ class Chef include Chef::DSL::RebootPending include Chef::DSL::Audit include Chef::DSL::Powershell + + extend Chef::Mixin::LazyModuleInclude + end end end |