summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/puppet/type/pfile.rb19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/puppet/type/pfile.rb b/lib/puppet/type/pfile.rb
index e9500e07f..966896a04 100644
--- a/lib/puppet/type/pfile.rb
+++ b/lib/puppet/type/pfile.rb
@@ -1094,6 +1094,25 @@ module Puppet
end
private
+
+ # Override the parent method, because we don't want to generate changes
+ # when the file is missing and there is no 'ensure' state.
+ def propertychanges
+ unless self.stat
+ found = false
+ ([:ensure] + CREATORS).each do |prop|
+ if @parameters.include?(prop)
+ found = true
+ break
+ end
+ end
+ unless found
+ return []
+ end
+ end
+ super
+ end
+
# There are some cases where all of the work does not get done on
# file creation/modification, so we have to do some extra checking.
def property_fix