summaryrefslogtreecommitdiffstats
path: root/lib/puppet/util/settings.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/util/settings.rb')
-rw-r--r--lib/puppet/util/settings.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/puppet/util/settings.rb b/lib/puppet/util/settings.rb
index c49fbf3cb..625bab42a 100644
--- a/lib/puppet/util/settings.rb
+++ b/lib/puppet/util/settings.rb
@@ -465,6 +465,16 @@ class Puppet::Util::Settings
return sectionlist, sections
end
+ def service_user_available?
+ return @service_user_available if defined?(@service_user_available)
+
+ return @service_user_available = false unless user_name = self[:user]
+
+ user = Puppet::Type.type(:user).new :name => self[:user], :check => :ensure
+
+ return @service_user_available = user.exists?
+ end
+
def set_value(param, value, type)
param = param.to_sym
unless setting = @config[param]