summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPieter van de Bruggen <pieter@puppetlabs.com>2011-07-28 15:34:47 -0700
committerPieter van de Bruggen <pieter@puppetlabs.com>2011-07-28 15:34:47 -0700
commit38801ddbd3036b45d35e48e444d1e7d566b5db47 (patch)
tree5ad721b2aa3eaac1a9a202f4b2ca44ab66085024
parentbad0442f78d42fbdce3555faefa80886618f0001 (diff)
downloadpuppet-38801ddbd3036b45d35e48e444d1e7d566b5db47.tar.gz
puppet-38801ddbd3036b45d35e48e444d1e7d566b5db47.tar.xz
puppet-38801ddbd3036b45d35e48e444d1e7d566b5db47.zip
(Maint.) Disable cleaning of storeconfigs.
This feature (and the corresponding tests) were causing intermittent failures which we were unable to trace. We will reintroduce this behavior when we can do so without test fragility. Reviewed-By: Matt Robinson
-rw-r--r--lib/puppet/face/node/clean.rb5
-rwxr-xr-xspec/unit/face/node_spec.rb222
2 files changed, 115 insertions, 112 deletions
diff --git a/lib/puppet/face/node/clean.rb b/lib/puppet/face/node/clean.rb
index a4df1bfaf..d2852de04 100644
--- a/lib/puppet/face/node/clean.rb
+++ b/lib/puppet/face/node/clean.rb
@@ -54,7 +54,10 @@ Puppet::Face.define(:node, '0.0.1') do
clean_cached_facts(node)
clean_cached_node(node)
clean_reports(node)
- clean_storeconfigs(node, unexport)
+
+ # This is roughly functional, but seems to introduce order-dependent test
+ # failures; this can be re-added when those issues are resolved.
+ # clean_storeconfigs(node, unexport)
end
# clean signed cert for +host+
diff --git a/spec/unit/face/node_spec.rb b/spec/unit/face/node_spec.rb
index 7151353a0..6f6edc6cc 100755
--- a/spec/unit/face/node_spec.rb
+++ b/spec/unit/face/node_spec.rb
@@ -10,7 +10,9 @@ describe Puppet::Face[:node, '0.0.1'] do
"cached_facts" => ['hostname'],
"cached_node" => ['hostname'],
"reports" => ['hostname'],
- "storeconfigs" => ['hostname', :unexport]
+
+ # Support for cleaning storeconfigs has been temporarily suspended.
+ # "storeconfigs" => ['hostname', :unexport]
}.each { |k, v| subject.expects("clean_#{k}".to_sym).with(*v) }
subject.cleanup('hostname', :unexport)
end
@@ -152,116 +154,114 @@ describe Puppet::Face[:node, '0.0.1'] do
end
end
- describe "when cleaning storeconfigs entries for host", :if => Puppet.features.rails? do
- before :each do
- # Stub this so we don't need access to the DB
- require 'puppet/rails/host'
-
- Puppet.stubs(:[]).with(:storeconfigs).returns(true)
-
- Puppet::Rails.stubs(:connect)
- @rails_node = stub_everything 'rails_node'
- Puppet::Rails::Host.stubs(:find_by_name).returns(@rails_node)
- end
-
- it "should connect to the database" do
- Puppet::Rails.expects(:connect)
- subject.clean_storeconfigs(@host, false)
- end
-
- it "should find the right host entry" do
- Puppet::Rails::Host.expects(:find_by_name).with(@host).returns(@rails_node)
-
- subject.clean_storeconfigs(@host, false)
- end
-
- describe "without unexport" do
- it "should remove the host and it's content" do
- @rails_node.expects(:destroy)
-
- subject.clean_storeconfigs(@host, false)
- end
- end
-
- describe "with unexport" do
- before :each do
- @rails_node.stubs(:id).returns(1234)
-
- @type = stub_everything 'type'
- @type.stubs(:validattr?).with(:ensure).returns(true)
-
- @ensure_name = stub_everything 'ensure_name', :id => 23453
- Puppet::Rails::ParamName.stubs(:find_or_create_by_name).returns(@ensure_name)
-
- @param_values = stub_everything 'param_values'
- @resource = stub_everything 'resource', :param_values => @param_values, :restype => "File"
- Puppet::Rails::Resource.stubs(:find).returns([@resource])
- end
-
- it "should find all resources" do
- Puppet::Rails::Resource.expects(:find).with(:all, {:include => {:param_values => :param_name}, :conditions => ["exported=? AND host_id=?", true, 1234]}).returns([])
-
- subject.clean_storeconfigs(@host, true)
- end
-
- describe "with an exported native type" do
- before :each do
- Puppet::Type.stubs(:type).returns(@type)
- @type.expects(:validattr?).with(:ensure).returns(true)
- end
-
- it "should test a native type for ensure as an attribute" do
- subject.clean_storeconfigs(@host, true)
- end
-
- it "should delete the old ensure parameter" do
- ensure_param = stub 'ensure_param', :id => 12345, :line => 12
- @param_values.stubs(:find).returns(ensure_param)
- Puppet::Rails::ParamValue.expects(:delete).with(12345);
- subject.clean_storeconfigs(@host, true)
- end
-
- it "should add an ensure => absent parameter" do
- @param_values.expects(:create).with(:value => "absent",
- :line => 0,
- :param_name => @ensure_name)
- subject.clean_storeconfigs(@host, true)
- end
- end
-
- describe "with an exported definition" do
- it "should try to lookup a definition and test it for the ensure argument" do
- Puppet::Type.stubs(:type).returns(nil)
- definition = stub_everything 'definition', :arguments => { 'ensure' => 'present' }
- Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(definition)
- subject.clean_storeconfigs(@host, true)
- end
- end
-
- it "should not unexport the resource of an unkown type" do
- Puppet::Type.stubs(:type).returns(nil)
- Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(nil)
- Puppet::Rails::ParamName.expects(:find_or_create_by_name).never
- subject.clean_storeconfigs(@host)
- end
-
- it "should not unexport the resource of a not ensurable native type" do
- Puppet::Type.stubs(:type).returns(@type)
- @type.expects(:validattr?).with(:ensure).returns(false)
- Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(nil)
- Puppet::Rails::ParamName.expects(:find_or_create_by_name).never
- subject.clean_storeconfigs(@host, true)
- end
-
- it "should not unexport the resource of a not ensurable definition" do
- Puppet::Type.stubs(:type).returns(nil)
- definition = stub_everything 'definition', :arguments => { 'foobar' => 'someValue' }
- Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(definition)
- Puppet::Rails::ParamName.expects(:find_or_create_by_name).never
- subject.clean_storeconfigs(@host, true)
- end
- end
- end
+ # describe "when cleaning storeconfigs entries for host", :if => Puppet.features.rails? do
+ # before :each do
+ # # Stub this so we don't need access to the DB
+ # require 'puppet/rails/host'
+ #
+ # Puppet.stubs(:[]).with(:storeconfigs).returns(true)
+ #
+ # Puppet::Rails.stubs(:connect)
+ # @rails_node = stub_everything 'rails_node'
+ # Puppet::Rails::Host.stubs(:find_by_name).returns(@rails_node)
+ # end
+ #
+ # it "should connect to the database" do
+ # Puppet::Rails.expects(:connect)
+ # subject.clean_storeconfigs(@host, false)
+ # end
+ #
+ # it "should find the right host entry" do
+ # Puppet::Rails::Host.expects(:find_by_name).with(@host).returns(@rails_node)
+ # subject.clean_storeconfigs(@host, false)
+ # end
+ #
+ # describe "without unexport" do
+ # it "should remove the host and it's content" do
+ # @rails_node.expects(:destroy)
+ # subject.clean_storeconfigs(@host, false)
+ # end
+ # end
+ #
+ # describe "with unexport" do
+ # before :each do
+ # @rails_node.stubs(:id).returns(1234)
+ #
+ # @type = stub_everything 'type'
+ # @type.stubs(:validattr?).with(:ensure).returns(true)
+ #
+ # @ensure_name = stub_everything 'ensure_name', :id => 23453
+ # Puppet::Rails::ParamName.stubs(:find_or_create_by_name).returns(@ensure_name)
+ #
+ # @param_values = stub_everything 'param_values'
+ # @resource = stub_everything 'resource', :param_values => @param_values, :restype => "File"
+ # Puppet::Rails::Resource.stubs(:find).returns([@resource])
+ # end
+ #
+ # it "should find all resources" do
+ # Puppet::Rails::Resource.expects(:find).with(:all, {:include => {:param_values => :param_name}, :conditions => ["exported=? AND host_id=?", true, 1234]}).returns([])
+ #
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ #
+ # describe "with an exported native type" do
+ # before :each do
+ # Puppet::Type.stubs(:type).returns(@type)
+ # @type.expects(:validattr?).with(:ensure).returns(true)
+ # end
+ #
+ # it "should test a native type for ensure as an attribute" do
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ #
+ # it "should delete the old ensure parameter" do
+ # ensure_param = stub 'ensure_param', :id => 12345, :line => 12
+ # @param_values.stubs(:find).returns(ensure_param)
+ # Puppet::Rails::ParamValue.expects(:delete).with(12345);
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ #
+ # it "should add an ensure => absent parameter" do
+ # @param_values.expects(:create).with(:value => "absent",
+ # :line => 0,
+ # :param_name => @ensure_name)
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ # end
+ #
+ # describe "with an exported definition" do
+ # it "should try to lookup a definition and test it for the ensure argument" do
+ # Puppet::Type.stubs(:type).returns(nil)
+ # definition = stub_everything 'definition', :arguments => { 'ensure' => 'present' }
+ # Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(definition)
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ # end
+ #
+ # it "should not unexport the resource of an unknown type" do
+ # Puppet::Type.stubs(:type).returns(nil)
+ # Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(nil)
+ # Puppet::Rails::ParamName.expects(:find_or_create_by_name).never
+ # subject.clean_storeconfigs(@host)
+ # end
+ #
+ # it "should not unexport the resource of a not ensurable native type" do
+ # Puppet::Type.stubs(:type).returns(@type)
+ # @type.expects(:validattr?).with(:ensure).returns(false)
+ # Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(nil)
+ # Puppet::Rails::ParamName.expects(:find_or_create_by_name).never
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ #
+ # it "should not unexport the resource of a not ensurable definition" do
+ # Puppet::Type.stubs(:type).returns(nil)
+ # definition = stub_everything 'definition', :arguments => { 'foobar' => 'someValue' }
+ # Puppet::Resource::TypeCollection.any_instance.expects(:find_definition).with('', "File").returns(definition)
+ # Puppet::Rails::ParamName.expects(:find_or_create_by_name).never
+ # subject.clean_storeconfigs(@host, true)
+ # end
+ # end
+ # end
end
end
end