Issue #2211 has been updated by Marcin Owsiany.
Here's a minimal test case I could come up with, 100% repeatable for me:
<pre>
$ touch /tmp/a
$ echo 'file { "/tmp/a": content => "a" }' > a.pp
$ sudo puppet --noop --debug --trace a.pp
debug: Creating default schedules
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]:
File does not exist
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]:
Changing ensure
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]:
1 change(s)
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]/ensure:
is absent, should be directory (noop)
debug: Finishing transaction -607699778 with 1 changes
debug: //File[/tmp/a]/checksum: Initializing checksum hash
debug: //File[/tmp/a]: Creating checksum {md5}d41d8cd98f00b204e9800998ecf8427e
debug: //File[/tmp/a]/content: Executing 'diff /tmp/a
/tmp/puppet-diffing.21138.0'
0a1
> a
\ No newline at end of file
debug: //File[/tmp/a]: Changing content
debug: //File[/tmp/a]: 1 change(s)
notice: //File[/tmp/a]/content: is {md5}d41d8cd98f00b204e9800998ecf8427e,
should be {md5}0cc175b9c0f1b6a831c399e269772661 (noop)
debug: Finishing transaction -606708568 with 1 changes
</pre>
* so far OK.
* now shut down the network
<pre>
$ sudo puppet --noop --debug --trace a.pp
Timed out seeking value for ipaddress
Timed out seeking value for ipaddress
Timed out seeking value for ipaddress
Timed out seeking value for ipaddress
warning: Could not retrieve fact ipaddress
warning: Could not retrieve fact fqdn
debug: Creating default schedules
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]:
File does not exist
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]:
Changing ensure
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]:
1 change(s)
debug:
/Settings[/etc/puppet/puppet.conf]/Settings[filebucket]/File[/var/puppet/clientbucket]/ensure:
is absent, should be directory (noop)
debug: Finishing transaction -606479048 with 1 changes
debug: //File[/tmp/a]/checksum: Initializing checksum hash
debug: //File[/tmp/a]: Creating checksum {md5}d41d8cd98f00b204e9800998ecf8427e
debug: //File[/tmp/a]/content: Executing 'diff /tmp/a
/tmp/puppet-diffing.21345.0'
/usr/lib/ruby/1.8/puppet/util.rb:290:in `waitpid2'
/usr/lib/ruby/1.8/puppet/util.rb:290:in `execute'
/usr/lib/ruby/1.8/puppet/util/diff.rb:12:in `diff'
/usr/lib/ruby/1.8/puppet/util/diff.rb:67:in `string_file_diff'
/usr/lib/ruby/1.8/puppet/type/file/content.rb:48:in `insync?'
/usr/lib/ruby/1.8/puppet/type.rb:965:in `propertychanges'
/usr/lib/ruby/1.8/puppet/util/checksums.rb:17:in `find_all'
/usr/lib/ruby/1.8/puppet/type.rb:963:in `each'
/usr/lib/ruby/1.8/puppet/type.rb:963:in `find_all'
/usr/lib/ruby/1.8/puppet/type.rb:963:in `propertychanges'
/usr/lib/ruby/1.8/puppet/type/file.rb:1123:in `propertychanges'
/usr/lib/ruby/1.8/puppet/type.rb:833:in `evaluate'
/usr/lib/ruby/1.8/puppet/transaction.rb:60:in `apply'
/usr/lib/ruby/1.8/puppet/transaction.rb:239:in `eval_resource'
/usr/lib/ruby/1.8/puppet/util.rb:425:in `thinmark'
/usr/lib/ruby/1.8/benchmark.rb:293:in `measure'
/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime'
/usr/lib/ruby/1.8/puppet/util.rb:424:in `thinmark'
/usr/lib/ruby/1.8/puppet/transaction.rb:238:in `eval_resource'
/usr/lib/ruby/1.8/puppet/transaction.rb:310:in `evaluate'
/usr/lib/ruby/1.8/puppet/util.rb:425:in `thinmark'
/usr/lib/ruby/1.8/benchmark.rb:293:in `measure'
/usr/lib/ruby/1.8/benchmark.rb:307:in `realtime'
/usr/lib/ruby/1.8/puppet/util.rb:424:in `thinmark'
/usr/lib/ruby/1.8/puppet/transaction.rb:309:in `evaluate'
/usr/lib/ruby/1.8/puppet/transaction.rb:303:in `collect'
/usr/lib/ruby/1.8/puppet/transaction.rb:303:in `evaluate'
/usr/lib/ruby/1.8/puppet/node/catalog.rb:124:in `apply'
/usr/bin/puppet:233
err: //File[/tmp/a]: Failed to retrieve current state of resource: No child
processes
debug: Finishing transaction -613159068 with 0 changes
</pre>
----------------------------------------
Bug #2211: Facter timeouts reap all subprocesses thus confusing Puppet
http://projects.reductivelabs.com/issues/2211
Author: John Florian
Status: Accepted
Priority: High
Assigned to: Luke Kanies
Category: library
Target version: 1.6.0
Complexity: Unknown
Affected version: 0.24.8
Keywords:
It is no longer possible to have puppet install packages via yum/rpm if the
network interface is not bound to an IP address. Our use case requires using
puppet in the non-daemon mode and this is possible for us because the system
will have all necessary manifests and other necessary files locally. This
worked just fine with 0.24.6 on Fedora 10, but began failing upon the upgrade
to 0.24.8.
See the attachments for failure messages and a code diff that seems to have
introduced the regression. If I revert this one change, things work nicely
once again. Looks like a very simple fix if it weren't for the ominous looking
comment in the code. :-)
--
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://reductivelabs.com/redmine/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
-~----------~----~----~----~------~----~------~--~---