On Tue, 31 Jul 2012 08:59:08 -0500 Nick Anderson <n...@cmdln.org> wrote: 

NA> The file making the promise $(filename) gets set to different values 
NA> based on a class. I thought due to normal ordering, on the first pass 
NA> filename should get set to "/tmp/nodebug" since the debug class has not 
NA> been raised yet. And then the files promise would create that file, but 
NA> the only file created is "/tmp/debug" and it happens on the first pass.

...

NA>  vars:
NA>    debug::
NA>      "filename" string => "/tmp/debug";

NA>    !debug::
NA>      "filename" string => "/tmp/nodebug";

NA> classes:
NA>    "debug" expression => regcmp("(?i)yes|true|on", "$(param)");

Thinking about it, I think the key is that !debug requires knowledge of
the debug context, so it needs the context expression to converge.  At
least that was my instinctive thinking when I wrote the above.  But I
don't know the specific algorithm and I may indeed be taking advantage
of a bug :)

Ted
_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine

Reply via email to