diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/puppet/provider/user/user_role_add.rb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/puppet/provider/user/user_role_add.rb b/lib/puppet/provider/user/user_role_add.rb index f7ae066bd..65bd63973 100644 --- a/lib/puppet/provider/user/user_role_add.rb +++ b/lib/puppet/provider/user/user_role_add.rb @@ -28,7 +28,8 @@ Puppet::Type.type(:user).provide :user_role_add, :parent => :useradd do def add_properties cmd = [] Puppet::Type.type(:user).validproperties.each do |property| - next if property == :ensure + #skip the password because we can't create it with the solaris useradd + next if property == :ensure || property == :password # the value needs to be quoted, mostly because -c might # have spaces in it if value = @resource.should(property) and value != "" @@ -83,6 +84,10 @@ Puppet::Type.type(:user).provide :user_role_add, :parent => :useradd do else run(addcmd, "create") end + # added to handle case when password is specified + if @resource[:password] + self.password = @resource[:password] + end end def destroy |