Issue #10915 has been updated by Michael Bryant.

Config:
<pre>
                user {  "miketest":
                        ensure   => present,
                        uid      => 32400,
                        gid      => sysadm,
                        comment  => "test",
                        home     => "/home/test",
                        password => "abc",
                        groups   => "",
                        shell    => "/bin/bash",
                }
</pre>

Code:
<pre>
  def call_provider(value)
if value == 'password'
puts provider.class
puts provider.methods.grep /password/
end



      provider.send(self.class.name.to_s + "=", value)
  rescue NoMethodError
      puts value
      puts provider.class
      puts provider.methods.grep /password/
      self.fail "The #{provider.class.name} provider can not handle attribute 
#{self.class.name}"
  end

</pre>

Debug:
<pre>
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsgroup -a id sysadm'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsgroup -a id sysadm'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
notice: /Stage[main]//Node[aix]/User[miketest]/comment: defined 'comment' as 
'test'
abc
Puppet::Type::User::ProviderAix
password_min_age=
password_max_age
password
password_max_age=
password=
manages_passwords?
manages_password_age?
password_min_age
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/parameter.rb:165:in `fail'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/property.rb:83:in `call_provider'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/property.rb:271:in `set'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/property.rb:320:in `sync'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction/resource_harness.rb:114:in
 `apply_parameter'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction/resource_harness.rb:62:in
 `perform_changes'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction/resource_harness.rb:60:in
 `each'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction/resource_harness.rb:60:in
 `perform_changes'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction/resource_harness.rb:133:in
 `evaluate'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction.rb:49:in `apply'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction.rb:84:in `eval_resource'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction.rb:103:in `evaluate'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/util.rb:464:in `thinmark'
/opt/freeware/lib/ruby/1.8/benchmark.rb:308:in `realtime'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/util.rb:463:in `thinmark'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction.rb:103:in `evaluate'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction.rb:311:in `traverse'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/transaction.rb:99:in `evaluate'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/resource/catalog.rb:141:in `apply'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/configurer.rb:121:in 
`retrieve_and_apply_catalog'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/util.rb:180:in `benchmark'
/opt/freeware/lib/ruby/1.8/benchmark.rb:308:in `realtime'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/util.rb:179:in `benchmark'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/configurer.rb:120:in 
`retrieve_and_apply_catalog'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/configurer.rb:151:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent.rb:39:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent/locker.rb:21:in `lock'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent.rb:39:in `run'
/opt/freeware/lib/ruby/1.8/sync.rb:230:in `synchronize'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent.rb:39:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent.rb:103:in `with_client'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent.rb:37:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:172:in `call'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:172:in 
`controlled_run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/agent.rb:35:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application/agent.rb:336:in 
`onetime'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application/agent.rb:310:in 
`run_command'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:306:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:410:in `hook'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:306:in `run'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:401:in `exit_on_fail'
/opt/freeware/lib/ruby/site_ruby/1.8/puppet/application.rb:306:in `run'
/usr/sbin/puppetd:4
err: /Stage[main]//Node[aix]/User[miketest]/password: change from [old password 
hash redacted] to [new password hash redacted] failed: The aix provider can not 
handle attribute password at /etc/puppet/manifests/site.pp:103
debug: User[miketest](provider=aix): Executing '/usr/bin/chuser groups=,sysadm 
miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsgroup -a id sysadm'
debug: User[miketest](provider=aix): Executing '/usr/sbin/lsuser miketest'
notice: /Stage[main]//Node[aix]/User[miketest]/groups: groups changed 'sysadm' 
to ',sysadm'
</pre>
----------------------------------------
Bug #10915: Managing passwords under AIX doesn't work
https://projects.puppetlabs.com/issues/10915

Author: Michael Bryant
Status: Investigating
Priority: Normal
Assignee: 
Category: provider
Target version: 
Affected Puppet version: 2.7.6
Keywords: AIX user provider puppet password
Branch: 


<pre>
err: /Stage[main]/Root_user/User[root]/password: change from [old password hash 
redacted] to [new password hash redacted]
failed: The aix provider can not handle attribute password at 
/etc/puppet/modules/root_user/manifests/init.pp:35
</pre>

A cursory look at the source shows that the aix user provider has the feature 
manages_passwords, but doesn't have the password attribute listed as being 
managed

config:
                        user { "root":
                                ensure   => "present",
                                uid      => "0",
                                gid      => "system",
                                comment  => "Super-User",
                                home     => "/",
                                shell    => "/usr/bin/ksh",
                                password => 'REDACTED'
                        }



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to