# File lib/chef/run_context.rb, line 61 def load(run_list_expansion) load_libraries load_lwrps load_attributes load_resource_definitions # Precendence rules state that roles' attributes come after # cookbooks. Now we've loaded attributes from cookbooks with # load_attributes, apply the expansion attributes (loaded from # roles) to the node. @node.apply_expansion_attributes(run_list_expansion) @events.recipe_load_start(run_list_expansion.recipes.size) run_list_expansion.recipes.each do |recipe| begin # TODO: timh/cw, 5-14-2010: It's distasteful to be including # the DSL in a class outside the context of the DSL include_recipe(recipe) rescue Chef::Exceptions::RecipeNotFound => e @events.recipe_not_found(e) raise rescue Exception => e path = resolve_recipe(recipe) @events.recipe_file_load_failed(path, e) raise end end @events.recipe_load_complete end