Issue #18508 has been updated by Gary Larizza.

I had a chat with Andy last night, and here's the gist of our conversation:

I see the main issue here being that users want to know the order that their 
resources will be executed.  Tying that order to the order resources show up in 
the manifest is something of a quick fix because it's easy to read a file from 
top-to-bottom, but I think this becomes much more complicated when you add 
additional classes.  The problem here is DEFINITIVELY being able to say the 
order that resources will be executed.

Instead, I'm really for the creation of something like 'resources.yml' or 
'resources.txt' that Puppet will create during a run that contains every 
resource in the catalog and the order it will be executed.  This file could 
even be created in a noop mode run.  This would be awesome because you could 
then diff two 'resource' files to see the implication of your changes, which is 
really simple (or, maybe have a command that would do a noop run and 
automatically show a diff of the order that the resources would get executed.  
I dunno, just thinking out loud).  This would also make upgrading between 
Puppet versions easier as you now have a document telling you for certain what 
will be executed, and the order that the resources will be executed.

My belief is that most Puppet users aren't going to be overly concerned with 
tracking down explicit dependencies; frankly, if the code runs and everything 
works, most people are absolutely happy with it.  However, if a change is made, 
resources get executed in a different order, and a dependency that was 
overlooked becomes exposed by diffing this 'resources' file, then that's a 
total win in my book.  Previously, people wouldn't KNOW what order had changed 
- they just see some magenta text, know there's an error, and then get annoyed 
that they have to change things.  If we lower the ramp to discovering WHAT'S 
happening and WHAT'S changing, then I'm all about that.
----------------------------------------
Bug #18508: Preserve ordering of resources from manifest to application
https://projects.puppetlabs.com/issues/18508#change-80982

Author: eric sorenson
Status: Investigating
Priority: High
Assignee: eric sorenson
Category: 
Target version: 
Affected Puppet version: 
Keywords: backlog
Branch: 


Since #6911, users need to explicitly order dependencies. This causes confusion 
for many puppet users who expect that resources in a given manifest will be 
evaluated in the order they're written. Since this is causing significant user 
pain it's worth re-examining the benefits and potentially changing the 
behaviour.

Because upgrading to a client version which includes this change breaks the 
promise that "same manifests result in same execution order, even if you can't 
predict what that order will be", this would necessitate a major version number 
bump. 


-- 
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 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.

Reply via email to