On Thu, 1 Dec 2016 22:47:23 -0800 (PST) Mike Weilgart 
<[email protected]> wrote: 

MW> I posit that it would be *less* surprising and easier to learn (and to 
MW> debug!) if CFEngine simply evaluated promises *in the sequence they are 
MW> specified* in a bundle, unless overridden with "depends_on" attributes.

Regarding the convergence model, I proposed a simple way to provide
ordered evaluation with today's core:

https://tracker.mender.io/browse/CFE-2399?focusedCommentId=73474&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-73474

The nice part in that proposal is that if we provide a way to "rank"
promises, then evaluation in the order as written would simply use
`rank=$(current_linenumber"` for every promise.

MW> And actually, considering the great number of "isvariable()" calls I have 
MW> had to add in a single bundle to ensure that production data didn't get 
MW> polluted with unresolved variables, I think that passing unresolved 
MW> variables as-is is a *serious* misfeature.  This is about the only "magic 
MW> ordering" I would personally support: skip any promise that makes reference 
MW> to an unresolved variable (just like most CFEngine function calls already 
MW> do.)

If you look back in the cfengine-devel archives, William Orr did work
last year on a patch along those lines. I don't know what happened with
it.

I personally would prefer all evaluation to be tunable per bundle
definition *and* per bundle call. Different contexts require different
techniques.

For example, you don't want independent security measures to stop
working because of a shell error somewhere in one of them. But you do
want application deployment to abort if the port number is not defined.

Ted

-- 
You received this message because you are subscribed to the Google Groups 
"dev-cfengine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dev-cfengine/87lgvymcin.fsf%40lifelogs.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to