Ever seen this message?
Puppet: could not find dependency group for user 'foo' at...
Puppet lets you specify a dependency between two resources, or to put it another way, that one thing should happen before another. Sometimes, though, the chain of dependencies becomes so complex that you accidentally create a circular dependency, which Puppet doesn’t like.
err: Could not apply complete catalog: Found dependency cycles in the following relationships: Package[ntp] => Service[ntpd], Service[ntpd] => Package[ntp]
When the chain of dependencies is a long one, it can be hard to debug this. I tweeted mournfully that a diagram of the dependencies would be useful:
The vastly knowledgeable @ripienaar and @adamhjk soon put me right: yes, Virginia, you can get Puppet to draw a graph of your resource dependencies. In fact, this was discussed on the Puppet mailing list some time ago. Read more »