help-cfengine
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Executing a file only on later passes


From: Chip Seraphine
Subject: Re: Executing a file only on later passes
Date: Mon, 03 Nov 2003 13:15:38 -0600
User-agent: Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:1.2.1) Gecko/20030121

Mark.Burgess@iu.hio.no wrote:

> If you want to control the order of things (which should not be
> necessary if you just trust the agent) then reorganize the
> input files.

Unfortunately, that doesn't always do the trick as *all* the contents of the files are looked at in both passes, leaving me no practical means of ensuring that a given action is only executed after some other action.

> But who cares what the order is if it gets done?

I do, some of the time. Actions set classes that then trigger activity in a hunk of cfengine code later on; if said code hunk executes before the classes are set, I get befuddled.

To wit: I have a an action A that sets a class C. The final import from my top-level file is 'cf.finish', which generates notifications to appropriate places if certain classes (including C) are set. I am finding that C is indeed set by A, but cf.finish doesn't respond to it because the class is not set until the later run.

Had I some sort of 'laterpasses' thingie, I could ensure that cf.finish always executed last. I agree that this could cause some danger in that the contents of cf.finish would not benefit from a multiple-pass approach, but that should be a risk that the user should be willing to shoulder if he goes out of his way to do so. I.e., it is my foot so it is my own fault if I shoot it on purpose; cfengine should only be worried about preventing me from shooting it accidentally :-)

Hmm. Is it just me, or is all this talk of ordering starting tomake me sound like Steve Traugott? :-)

-Chip





reply via email to

[Prev in Thread] Current Thread [Next in Thread]