Puppet: System Administration Automated

Support

Ticket #869 (assigned defect)

Opened 1 year ago

Last modified 9 months ago

False dependency: Error thrown after reparsing /etc/puppet.conf

Reported by: whaymand Assigned to: luke (accepted)
Priority: normal Milestone: unplanned
Component: settings Version:
Severity: normal Keywords:
Cc: Triage Stage: Accepted
Attached Patches: None Complexity: Medium

Description (Last modified by luke)

This could well be a horrendous one to debug. If, as I expect you will need manifest or manifest-snippets to debug I should be able to get some cut down version over to you. I am applying a Puppet manifest to a 'bare metal' build. One class, utilities::puppetclientconf, admittedly not in a respectable dependency chain, changes /etc/puppet/puppet.conf. Puppet then wants to reparse and continue applying classes. It them barfs with Could not retrieve dependency 'File/etc/puppet' at /etc/puppet/modules/utilities/manifests/init.pp:291. This dependency *does* exist somewhere else in the class. Logs and a couple of manifest snippets attached.

Oct 15 16:31:52 engpsr0155 puppetd[23546]: (//engpsr0155/base/utilities::puppetclientconf/File[/etc/puppet/puppet.conf]) Filebucketed to main with sum 7571487c3a26a4a087b29fcd787cfe57
Oct 15 16:31:52 engpsr0155 puppetd[23546]: (//engpsr0155/base/utilities::puppetclientconf/File[/etc/puppet/puppet.conf]/source) replacing from source puppet:///utilities/testpuppet.conf with contents {md5}daa7e7ee745a0f657720f85fa9c32de5
Oct 15 16:31:53 engpsr0155 puppetd[23546]: (//engpsr0155/base/services::setup/services::redhat/Service[gpm]/ensure) ensure changed 'running' to 'stopped'
Oct 15 16:31:57 engpsr0155 Installed: tk.x86_64 8.4.13-3.fc6
Oct 15 16:31:57 engpsr0155 Installed: tclx.x86_64 8.4.0-5.fc6
Oct 15 16:31:58 engpsr0155 Installed: emacspeak.noarch 23.0-2.1
Oct 15 16:31:58 engpsr0155 puppetd[23546]: (//engpsr0155/base/packages::setup/rhel5-packagegroups::dmzbase/rhel5-packagegroups::editors/Package[emacspeak]/ensure) created
Oct 15 16:31:58 engpsr0155 puppetd[23546]: (//engpsr0155/base/filemode::setup/filemode::redhat_filemode/filemode::filemode[/usr/bin/newgrp]/File[/usr/bin/newgrp]/mode) mode changed '4755' to '711'
Oct 15 16:31:58 engpsr0155 puppetd[23546]: (//engpsr0155/base/definittab::setup/definittab::definittab[std]/Inittab[~~]/ensure) created
Oct 15 16:31:58 engpsr0155 puppetd[23546]: (Filebucket[/var/lib/puppet/clientbucket]) Adding /etc/inittab(3b107ced0981045ff867f1b10eabb891)
Oct 15 16:32:02 engpsr0155 Installed: ntp.x86_64 4.2.2p1-5.el5
Oct 15 16:32:02 engpsr0155 puppetd[23546]: Reparsing /etc/puppet/puppet.conf
Oct 15 16:32:02 engpsr0155 puppetd[23546]: (//engpsr0155/base/ntp::setup/Package[ntp]/ensure) change from absent to present failed: Could not retrieve dependency 'File[/etc/puppet]' at /etc/puppet/modules/utilities/manifests/init.pp:291
Oct 15 16:32:06 engpsr0155 Installed: gnuplot.x86_64 4.0.0-12
Oct 15 16:32:06 engpsr0155 Installed: gnuplot-emacs.x86_64 4.0.0-12

Attachments

messages (23.1 kB) - added by whaymand on 10/15/07 18:08:41.
Syslog messages
utilties_manifests_init.pp (2.5 kB) - added by whaymand on 10/15/07 18:09:04.
Manifest fragment

Change History

10/15/07 18:08:41 changed by whaymand

  • attachment messages added.

Syslog messages

10/15/07 18:09:04 changed by whaymand

  • attachment utilties_manifests_init.pp added.

Manifest fragment

10/16/07 10:09:18 changed by whaymand

Arg, apologies for bad formatting (will use verbatim tag next time). Forgot to say that I *do* have a workaround - do a run with --tags=puppetclientconf first, then a full runn.

10/26/07 20:52:02 changed by luke

  • description changed.

10/26/07 20:53:09 changed by luke

  • status changed from new to assigned.
  • component changed from library to client.
  • complexity changed from Unknown to Medium.
  • milestone set to elmo.
  • owner changed from community to luke.
  • stage changed from Unreviewed to Accepted.

11/24/07 06:32:23 changed by luke

  • milestone changed from elmo to unplanned.

I've currently got all the code done that will fix this problem, but I don't want to risk the changes required to get it into this release, and I haven't gotten all of the tests passing quite yet. This is basically a problem coming from the fact that all resources in Puppet are global in a given process, which is an age-old design flaw that I'm now working hard at fixing.

04/24/08 07:07:25 changed by luke

  • component changed from client to settings.