diff options
| author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2007-07-11 19:30:42 +0000 |
|---|---|---|
| committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2007-07-11 19:30:42 +0000 |
| commit | 17a830d5421a0ae9d84914a4215010bf4b16253f (patch) | |
| tree | 00a595fec9df3af7e8a94923c4a2458b0ff2de50 /lib | |
| parent | f570a5f32a03d8ee1e8dde5c0984b83cdbf7b2ad (diff) | |
Fixing transactions so that they do not flush resources that are in noop
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2678 980ebf18-57e1-0310-9a29-db15c13687c0
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/puppet/metatype/evaluation.rb | 10 | ||||
| -rw-r--r-- | lib/puppet/metatype/metaparams.rb | 2 | ||||
| -rw-r--r-- | lib/puppet/property.rb | 15 | ||||
| -rw-r--r-- | lib/puppet/propertychange.rb | 2 | ||||
| -rwxr-xr-x | lib/puppet/provider/parsedfile.rb | 1 | ||||
| -rw-r--r-- | lib/puppet/transaction.rb | 2 |
6 files changed, 17 insertions, 15 deletions
diff --git a/lib/puppet/metatype/evaluation.rb b/lib/puppet/metatype/evaluation.rb index a7c9b6361..4b8d293c4 100644 --- a/lib/puppet/metatype/evaluation.rb +++ b/lib/puppet/metatype/evaluation.rb @@ -98,12 +98,12 @@ class Puppet::Type end # Are we running in noop mode? + def noop? + @noop || Puppet[:noop] + end + def noop - if self.noop? - return true - else - return Puppet[:noop] - end + noop? end # Retrieve the changes associated with all of the properties. diff --git a/lib/puppet/metatype/metaparams.rb b/lib/puppet/metatype/metaparams.rb index 5ec2b6c74..2c90cf36c 100644 --- a/lib/puppet/metatype/metaparams.rb +++ b/lib/puppet/metatype/metaparams.rb @@ -9,7 +9,7 @@ class Puppet::Type # non-functional." #end - newmetaparam(:noop, :boolean => true) do + newmetaparam(:noop) do desc "Boolean flag indicating whether work should actually be done." diff --git a/lib/puppet/property.rb b/lib/puppet/property.rb index 2f23b07f8..059d7c410 100644 --- a/lib/puppet/property.rb +++ b/lib/puppet/property.rb @@ -323,15 +323,16 @@ class Property < Puppet::Parameter # for testing whether we should actually do anything def noop - unless defined? @noop - @noop = false - end - if self.resource.respond_to?(:noop) - tmp = @noop || self.resource.noop || Puppet[:noop] || false + # This is only here to make testing easier. + if @resource.respond_to?(:noop?) + @resource.noop? else - tmp = @noop || Puppet[:noop] || false + if defined?(@noop) + @noop + else + Puppet[:noop] + end end - return tmp end # By default, call the method associated with the property name on our diff --git a/lib/puppet/propertychange.rb b/lib/puppet/propertychange.rb index c6901edfb..964ff2b31 100644 --- a/lib/puppet/propertychange.rb +++ b/lib/puppet/propertychange.rb @@ -40,7 +40,7 @@ module Puppet # default to a simple event type unless name.is_a?(Symbol) @property.warning("Property '%s' returned invalid event '%s'; resetting to default" % - [@property.class,event]) + [@property.class, name]) event = @property.resource.class.name.id2name + "_changed" end diff --git a/lib/puppet/provider/parsedfile.rb b/lib/puppet/provider/parsedfile.rb index cdb770b8b..4e3dac8f8 100755 --- a/lib/puppet/provider/parsedfile.rb +++ b/lib/puppet/provider/parsedfile.rb @@ -316,6 +316,7 @@ class Puppet::Provider::ParsedFile < Puppet::Provider end @property_hash[:name] ||= @resource.name + warning "Flushing" self.class.flush(@property_hash) end diff --git a/lib/puppet/transaction.rb b/lib/puppet/transaction.rb index d244c06d8..46bac3058 100644 --- a/lib/puppet/transaction.rb +++ b/lib/puppet/transaction.rb @@ -68,7 +68,7 @@ class Transaction resourceevents = apply_changes(resource, changes) # If there were changes and the resource isn't in noop mode... - unless changes.empty? or changes.include?(:noop) + unless changes.empty? or resource.noop # Record when we last synced resource.cache(:synced, Time.now) |
