Issue #22145 has been reported by Tom Vachon.

----------------------------------------
Bug #22145: Puppet Agent fails (with stack trace) when run through 
passenger/rack and a dupe UID exists for a user
https://projects.puppetlabs.com/issues/22145

* Author: Tom Vachon
* Status: Unreviewed
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* Affected Puppet version: 3.2.2
* Keywords: 
* Branch: 
----------------------------------------
I had been running a bunch of servers ok, and then one server kept throwing 
this error (which originally made me thing PuppetDB had an issue):

[code]
Error: Could not run Puppet configuration client: argument must be a string.
/usr/lib/ruby/vendor_ruby/puppet/provider/user/useradd.rb:195:in `getspnam'
/usr/lib/ruby/vendor_ruby/puppet/provider/user/useradd.rb:195:in `block (3 
levels) in <top (required)>'
/usr/lib/ruby/vendor_ruby/puppet/property.rb:471:in `retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type/user.rb:387:in `block in retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type/user.rb:381:in `each'
/usr/lib/ruby/vendor_ruby/puppet/type/user.rb:381:in `inject'
/usr/lib/ruby/vendor_ruby/puppet/type/user.rb:381:in `retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type.rb:1041:in `retrieve_resource'
/usr/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:32:in 
`perform_changes'
/usr/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:139:in 
`evaluate'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:48:in `apply'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:83:in `eval_resource'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:103:in `block (2 levels) in 
evaluate'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:351:in `block in thinmark'
/usr/lib/ruby/1.9.1/benchmark.rb:295:in `realtime'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:350:in `thinmark'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:103:in `block in evaluate'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:382:in `traverse'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:98:in `evaluate'
/usr/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:144:in `apply'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:122:in `block in apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:179:in `block in benchmark'
/usr/lib/ruby/1.9.1/benchmark.rb:295:in `realtime'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:178:in `benchmark'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:121:in `apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:179:in `run'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:45:in `block (5 levels) in run'
/usr/lib/ruby/vendor_ruby/puppet/agent/locker.rb:20:in `lock'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:45:in `block (4 levels) in run'
/usr/lib/ruby/1.9.1/sync.rb:227:in `sync_synchronize'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:45:in `block (3 levels) in run'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:119:in `with_client'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:42:in `block (2 levels) in run'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:84:in `run_in_fork'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:41:in `block in run'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:179:in `call'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:179:in `controlled_run'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:39:in `run'
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:353:in `onetime'
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:327:in `run_command'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:364:in `block (2 levels) in run'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:456:in `plugin_hook'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:364:in `block in run'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:504:in `exit_on_fail'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:364:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:132:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:86:in `execute'
/usr/bin/puppet:4:in `<main>'
Error: Could not run: can't convert Puppet::Util::Log into Integer
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:363:in `exit'
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:363:in `onetime'
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:327:in `run_command'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:364:in `block (2 levels) in run'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:456:in `plugin_hook'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:364:in `block in run'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:504:in `exit_on_fail'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:364:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:132:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:86:in `execute'
/usr/bin/puppet:4:in `<main>'
[code]

When I finally ended up running puppet master --debug --no-daemonize by hand, 
then the puppet agent showed a much different message:

[code]
Info: Retrieving plugin
Info: Caching catalog for admin.sub.domain.com
Info: Applying configuration version '1376331662'
Error: Could not create user REDACTED: Execution of '/usr/sbin/useradd -g users 
-G admins,logs -s /bin/bash -u 1019 -m REDACTED' returned 4: useradd: UID 1019 
is not unique

Error: /User[REDACTED]/ensure: change from absent to present failed: Could not 
create user REDACTED: Execution of '/usr/sbin/useradd -g users -G admins,logs 
-s /bin/bash -u 1019 -m REDACTED' returned 4: useradd: UID 1019 is not unique

Notice: /Stage[main]/Users::Developers::REDACTED/Ssh_authorized_key[REDACTED]: 
Dependency User[REDACTED] has failures: true
Warning: /Stage[main]/Users::Developers::REDACTED/Ssh_authorized_key[REDACTED]: 
Skipping because of failed dependencies
[code]

Clearly the user provider is doing somethign very unexpected with 
passenger/rack vs a running puppet master deamon.

Puppet: 3.2.2
PuppetDB: 1.4.0
Facter: 1.7.2


-- 
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 unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to