diff options
author | Claire McQuin <mcquin@users.noreply.github.com> | 2014-11-04 10:03:54 -0800 |
---|---|---|
committer | Claire McQuin <mcquin@users.noreply.github.com> | 2014-11-04 10:03:54 -0800 |
commit | 3740911b34c0a25831d3031dc1262a4fafed8b2e (patch) | |
tree | 3b1f3edd7ebee75b2c14f2f269b6b4d0b2af9a7d | |
parent | 76cf26b62bb224cf5fa24e17b49c00a70f282fa6 (diff) | |
parent | 4becf7719c792ee3949fa9f6ec7e0b6d85011e9d (diff) | |
download | chef-3740911b34c0a25831d3031dc1262a4fafed8b2e.tar.gz |
Merge pull request #2350 from opscode/runner-dsl-test-merge
DSL + Runner
-rw-r--r-- | lib/chef/audit.rb | 1 | ||||
-rw-r--r-- | lib/chef/audit/chef_json_formatter.rb | 2 | ||||
-rw-r--r-- | lib/chef/audit/runner.rb | 2 | ||||
-rw-r--r-- | lib/chef/client.rb | 4 | ||||
-rw-r--r-- | lib/chef/dsl/audit.rb | 5 | ||||
-rw-r--r-- | lib/chef/run_context.rb | 3 |
6 files changed, 10 insertions, 7 deletions
diff --git a/lib/chef/audit.rb b/lib/chef/audit.rb index 1e3668396f..43d5c11ee8 100644 --- a/lib/chef/audit.rb +++ b/lib/chef/audit.rb @@ -20,3 +20,4 @@ require 'rspec/core' require 'chef/dsl/audit' require 'chef/audit/chef_json_formatter' +require 'chef/audit/runner' diff --git a/lib/chef/audit/chef_json_formatter.rb b/lib/chef/audit/chef_json_formatter.rb index 3c164120b4..5dcbdb50b7 100644 --- a/lib/chef/audit/chef_json_formatter.rb +++ b/lib/chef/audit/chef_json_formatter.rb @@ -1,5 +1,5 @@ RSpec::Support.require_rspec_core "formatters/base_formatter" -require 'control_group_data' +require 'chef/audit/control_group_data' require 'ffi_yajl' class Chef diff --git a/lib/chef/audit/runner.rb b/lib/chef/audit/runner.rb index baf4520466..e3699266b8 100644 --- a/lib/chef/audit/runner.rb +++ b/lib/chef/audit/runner.rb @@ -85,7 +85,7 @@ class Chef # Register each controls group with the world, which will handle # the ordering of the audits that will be run. def register_controls_groups - run_context.controls_groups.each { |ctls_grp| world.register(ctls_grp) } + @run_context.controls_groups.each { |ctls_grp| world.register(ctls_grp) } end end diff --git a/lib/chef/client.rb b/lib/chef/client.rb index 6c83639ec3..3818f9fad6 100644 --- a/lib/chef/client.rb +++ b/lib/chef/client.rb @@ -25,6 +25,7 @@ require 'chef/log' require 'chef/rest' require 'chef/api_client' require 'chef/api_client/registration' +require 'chef/audit' require 'chef/node' require 'chef/role' require 'chef/file_cache' @@ -344,7 +345,8 @@ class Chef audit_exception = nil begin @events.audit_start(run_context) - # TODO + auditor = Chef::Audit::Runner.new(run_context) + auditor.run @events.audit_complete rescue Exception => e @events.audit_failed(e) diff --git a/lib/chef/dsl/audit.rb b/lib/chef/dsl/audit.rb index 7adcecbf14..948db72921 100644 --- a/lib/chef/dsl/audit.rb +++ b/lib/chef/dsl/audit.rb @@ -27,12 +27,9 @@ class Chef raise ::Chef::Exceptions::NoAuditsProvided unless group_block # TODO add the @example_groups list to the runner for later execution - # run_context.audit_runner.register - ::Chef::Audit::ChefExampleGroup.describe(group_name, &group_block) + run_context.controls_groups << ::Chef::Audit::ChefExampleGroup.describe(group_name, &group_block) end end end end - - diff --git a/lib/chef/run_context.rb b/lib/chef/run_context.rb index 18d353ac61..bdf1cf3d3a 100644 --- a/lib/chef/run_context.rb +++ b/lib/chef/run_context.rb @@ -51,6 +51,8 @@ class Chef # recipes, which is triggered by #load. (See also: CookbookCompiler) attr_accessor :resource_collection + attr_accessor :controls_groups + # Chef::ProviderResolver for this run attr_accessor :provider_resolver @@ -77,6 +79,7 @@ class Chef @node = node @cookbook_collection = cookbook_collection @resource_collection = Chef::ResourceCollection.new + @controls_groups = [] @immediate_notification_collection = Hash.new {|h,k| h[k] = []} @delayed_notification_collection = Hash.new {|h,k| h[k] = []} @definitions = Hash.new |