The Puppet Labs Issue Tracker has Moved: https://tickets.puppetlabs.com

This issue tracker is now in read-only archive mode and automatic ticket export has been disabled. Redmine users will need to create a new JIRA account to file tickets using https://tickets.puppetlabs.com. See the following page for information on filing tickets with JIRA:

Bug #14578

Puppet does not respect implied class dependencies

Added by Anthony Newman almost 4 years ago. Updated about 3 years ago.

Status:DuplicateStart date:05/18/2012
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:agent
Target version:-
Affected Puppet version:2.7.14 Branch:
Keywords:

We've Moved!

Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com


Description

When ‘include'ing modules from within another module and stating an overall dependency chain of modules, the intra-module dependencies are not honoured, causing a deterministic but essentially disordered agent run. I expected the dependencies to cascade, and I could not find any documentation that stated otherwise.

e.g. Class[‘testclass1’]–>Class[‘testclass2’]–>Class[‘testclass3’]–>Class[‘testclass4’]

If the individual class dependencies are stated explicitly in the calling module, the resultant run ordering is correct, but this breaks the encapsulation of modules.

e.g. Class[‘testclass1::first1thing’]–>Class[‘testclass1::second1thing’]–>Class[‘testclass2::first2thing’]–>Class[‘testclass2::second2thing’]–>Class[‘testclass3::first3thing’]–>Class[‘testclass3::second3thing’]–>Class[‘testclass4::first4thing’]–>Class[‘testclass4::second4thing’]

This is a repeat of bug 12905 which was rejected. I have repeated a similar test but this time including Exec blocks rather than just notify{} blocks to rule out anything to do with compilation. This is a run-time/apply-time bug.

modules.tar (20 KB) Anthony Newman, 05/18/2012 07:06 am


Related issues

Related to Puppet - Bug #12905: Puppet does not follow dependancy chain in manifest Rejected 03/01/2012
Duplicates Puppet - Bug #8040: Classes should be able to contain other classes to provid... Closed 06/22/2011

History

#1 Updated by Kelsey Hightower almost 4 years ago

  • Status changed from Unreviewed to Accepted

If this is not a bug, we need to provide a really good explanation why. I would also recommend that we update our docs with the explanation as well.

#2 Updated by Anonymous about 3 years ago

  • Status changed from Accepted to Duplicate

Based on the description that has been given here, this is a duplicate of #8040.

Also available in: Atom PDF