diff options
| author | Nick Lewis <nick@puppetlabs.com> | 2011-01-07 13:58:44 -0800 |
|---|---|---|
| committer | Nick Lewis <nick@puppetlabs.com> | 2011-01-07 13:58:44 -0800 |
| commit | 78e838ad3cc08d8e155d895a478ee73f616440d7 (patch) | |
| tree | 91d482964b4e470e9e180811387564118bba07fd | |
| parent | 824907ce0abed0e8c332b873b88705fbccf0d24e (diff) | |
| parent | 27abd84611564ac573c5fde8abb6b98e6bd3d9b7 (diff) | |
| download | puppet-78e838ad3cc08d8e155d895a478ee73f616440d7.tar.gz puppet-78e838ad3cc08d8e155d895a478ee73f616440d7.tar.xz puppet-78e838ad3cc08d8e155d895a478ee73f616440d7.zip | |
Merge branch 'next'
| -rw-r--r-- | lib/puppet/reports/store.rb | 20 | ||||
| -rwxr-xr-x | spec/unit/application/agent_spec.rb | 8 | ||||
| -rwxr-xr-x | spec/unit/application/apply_spec.rb | 2 | ||||
| -rw-r--r-- | spec/unit/application/master_spec.rb | 19 | ||||
| -rwxr-xr-x | spec/unit/configurer_spec.rb | 15 | ||||
| -rw-r--r-- | spec/unit/reports/store_spec.rb | 31 |
6 files changed, 42 insertions, 53 deletions
diff --git a/lib/puppet/reports/store.rb b/lib/puppet/reports/store.rb index 30f24591c..99a9fc177 100644 --- a/lib/puppet/reports/store.rb +++ b/lib/puppet/reports/store.rb @@ -8,24 +8,6 @@ Puppet::Reports.register_report(:store) do to perform some maintenance on them if you use this report (it's the only default report)." - def mkclientdir(client, dir) - config = Puppet::Util::Settings.new - - config.setdefaults( - "reportclient-#{client}".to_sym, - "client-#{client}-dir" => { :default => dir, - :mode => 0750, - :desc => "Client dir for #{client}", - :owner => 'service', - :group => 'service' - }, - - :noop => [false, "Used by settings internally."] - ) - - config.use("reportclient-#{client}".to_sym) - end - def process # We don't want any tracking back in the fs. Unlikely, but there # you go. @@ -33,7 +15,7 @@ Puppet::Reports.register_report(:store) do dir = File.join(Puppet[:reportdir], client) - mkclientdir(client, dir) unless FileTest.exists?(dir) + Dir.mkdir(dir, 0750) unless FileTest.exists?(dir) # Now store the report. now = Time.now.gmtime diff --git a/spec/unit/application/agent_spec.rb b/spec/unit/application/agent_spec.rb index be397073c..cee6a0d1a 100755 --- a/spec/unit/application/agent_spec.rb +++ b/spec/unit/application/agent_spec.rb @@ -293,14 +293,6 @@ describe Puppet::Application::Agent do @puppetd.setup end - it "mocha work-around" do - # Mocha 0.9.10 and earlier leaves behind a bogus "use" method - # See https://github.com/floehopper/mocha/issues#issue/20 - class << Puppet.settings - remove_method :use rescue nil - end - end - it "should install a remote ca location" do Puppet::SSL::Host.expects(:ca_location=).with(:remote) diff --git a/spec/unit/application/apply_spec.rb b/spec/unit/application/apply_spec.rb index 9485ed221..8aaa5d8f9 100755 --- a/spec/unit/application/apply_spec.rb +++ b/spec/unit/application/apply_spec.rb @@ -177,7 +177,7 @@ describe Puppet::Application::Apply do describe "the main command" do before :each do Puppet.stubs(:[]) - Puppet::Util::Settings.any_instance.stubs(:use) + Puppet.settings.stubs(:use) Puppet.stubs(:[]).with(:prerun_command).returns "" Puppet.stubs(:[]).with(:postrun_command).returns "" Puppet.stubs(:[]).with(:trace).returns(true) diff --git a/spec/unit/application/master_spec.rb b/spec/unit/application/master_spec.rb index 1cf06ffa6..1173752d9 100644 --- a/spec/unit/application/master_spec.rb +++ b/spec/unit/application/master_spec.rb @@ -119,7 +119,7 @@ describe Puppet::Application::Master do Puppet::Log.stubs(:level=) Puppet::SSL::CertificateAuthority.stubs(:instance) Puppet::SSL::CertificateAuthority.stubs(:ca?) - Puppet::Util::Settings.any_instance.stubs(:use) + Puppet.settings.stubs(:use) @master.options.stubs(:[]).with(any_parameters) end @@ -183,14 +183,6 @@ describe Puppet::Application::Master do @master.setup end - it "mocha work-around" do - # Mocha 0.9.10 and earlier leaves behind a bogus "use" method - # See https://github.com/floehopper/mocha/issues#issue/20 - class << Puppet.settings - remove_method :use rescue nil - end - end - it "should cache class in yaml" do Puppet::Node.indirection.expects(:cache_class=).with(:yaml) @@ -220,20 +212,11 @@ describe Puppet::Application::Master do end it "should tell Puppet.settings to use :ca category" do - Puppet.settings.stubs(:use) Puppet.settings.expects(:use).with(:ca) @master.setup end - it "mocha work-around" do - # Mocha 0.9.10 and earlier leaves behind a bogus "use" method - # See https://github.com/floehopper/mocha/issues#issue/20 - class << Puppet.settings - remove_method :use rescue nil - end - end - it "should instantiate the CertificateAuthority singleton" do Puppet::SSL::CertificateAuthority.expects(:instance) diff --git a/spec/unit/configurer_spec.rb b/spec/unit/configurer_spec.rb index 6b4998c65..f8acdd002 100755 --- a/spec/unit/configurer_spec.rb +++ b/spec/unit/configurer_spec.rb @@ -8,7 +8,7 @@ require 'puppet/configurer' describe Puppet::Configurer do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @agent = Puppet::Configurer.new end @@ -74,7 +74,7 @@ end describe Puppet::Configurer, "when executing a catalog run" do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @agent = Puppet::Configurer.new @agent.stubs(:prepare) @agent.stubs(:facts_for_uploading).returns({}) @@ -82,6 +82,7 @@ describe Puppet::Configurer, "when executing a catalog run" do @catalog.stubs(:apply) @agent.stubs(:retrieve_catalog).returns @catalog @agent.stubs(:save_last_run_summary) + Puppet::Transaction::Report.indirection.stubs(:save) end it "should prepare for the run" do @@ -226,7 +227,7 @@ end describe Puppet::Configurer, "when sending a report" do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @configurer = Puppet::Configurer.new @configurer.stubs(:save_last_run_summary) @@ -295,7 +296,7 @@ end describe Puppet::Configurer, "when saving the summary report file" do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @configurer = Puppet::Configurer.new @report = stub 'report' @@ -325,7 +326,7 @@ end describe Puppet::Configurer, "when retrieving a catalog" do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @agent = Puppet::Configurer.new @agent.stubs(:facts_for_uploading).returns({}) @@ -455,7 +456,7 @@ end describe Puppet::Configurer, "when converting the catalog" do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @agent = Puppet::Configurer.new @catalog = Puppet::Resource::Catalog.new @@ -489,7 +490,7 @@ end describe Puppet::Configurer, "when preparing for a run" do before do - Puppet::Util::Settings.any_instance.stubs(:use).returns(true) + Puppet.settings.stubs(:use).returns(true) @agent = Puppet::Configurer.new @agent.stubs(:dostorage) @agent.stubs(:download_fact_plugins) diff --git a/spec/unit/reports/store_spec.rb b/spec/unit/reports/store_spec.rb new file mode 100644 index 000000000..1acb5badd --- /dev/null +++ b/spec/unit/reports/store_spec.rb @@ -0,0 +1,31 @@ +#!/usr/bin/env ruby + +Dir.chdir(File.dirname(__FILE__)) { (s = lambda { |f| File.exist?(f) ? require(f) : Dir.chdir("..") { s.call(f) } }).call("spec/spec_helper.rb") } + +require 'puppet/reports' +require 'time' + +processor = Puppet::Reports.report(:store) + +describe processor do + describe "#process" do + include PuppetSpec::Files + before :each do + Puppet[:reportdir] = tmpdir('reports') + @report = YAML.load_file(File.join(PuppetSpec::FIXTURE_DIR, 'yaml/report2.6.x.yaml')).extend processor + end + + it "should create a report directory for the client if one doesn't exist" do + @report.process + + File.should be_directory(File.join(Puppet[:reportdir], @report.host)) + end + + it "should write the report to the file in YAML" do + Time.stubs(:now).returns(Time.parse("2011-01-06 12:00:00 UTC")) + @report.process + + File.read(File.join(Puppet[:reportdir], @report.host, "201101061200.yaml")).should == @report.to_yaml + end + end +end |
