summaryrefslogtreecommitdiffstats
path: root/lib/puppet/util.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/util.rb')
-rw-r--r--lib/puppet/util.rb20
1 files changed, 12 insertions, 8 deletions
diff --git a/lib/puppet/util.rb b/lib/puppet/util.rb
index da52791cb..50f488905 100644
--- a/lib/puppet/util.rb
+++ b/lib/puppet/util.rb
@@ -19,10 +19,12 @@ module Util
if group.is_a?(Integer)
gid = group
else
- obj = Puppet::Type::Group.create(
- :name => user,
- :check => [:gid]
- )
+ unless obj = Puppet::Type::Group[user]
+ obj = Puppet::Type::Group.create(
+ :name => user,
+ :check => [:gid]
+ )
+ end
obj.retrieve
gid = obj.is(:gid)
unless gid.is_a?(Integer)
@@ -45,10 +47,12 @@ module Util
if user.is_a?(Integer)
uid = user
else
- obj = Puppet::Type::User.create(
- :name => user,
- :check => [:uid, :gid]
- )
+ unless obj = Puppet::Type::User[user]
+ obj = Puppet::Type::User.create(
+ :name => user,
+ :check => [:uid, :gid]
+ )
+ end
obj.retrieve
uid = obj.is(:uid)
unless uid.is_a?(Integer)