Brian E. Seppanen wrote:
I don't follow that because with
actionsequence = ( processes.pre shellcommands processes )
is appropriately executing in the order that I want.

You're right. If you use '!pre' to qualify processes that you want to run only at the second processes actionsequence item, then this syntax works fine. I guess my comments only apply in the situation when one tries doing something like this:

control: actionsequence = ( processes.pre shellcommands processes )

processes:
  pre::
     "atd" some stuff
  any::
     "atd" some different stuff

In that case, the second processes action happens together with the first, not after shellcommands.

 However, a defined
class from the processes action is not being evaluated correctly within the shellcommands stanza.

I also see this behavior in testing this stuff just now.

Oddly, if a class is defined in an unqualified (or 'any::' processes action, it does seem to be evaluated correctly later:
---------------------
control:
        actionsequence = ( processes.pre shellcommands processes.post )

processes:
   any::  "crond" signal=hup define=CrondRunningAny
   post:: "crond signal=hup define=CrondRunningPost
   pre::  "crond signal=hup define=CrondRunningPre

alerts:
  CrondRunningPost:: "CrondRunningPost is defined"
  CrondRunningPre:: "CrondRunningPre is defined"
  CrondRunningAny:: "CrondRunningAny is defined"

shellcommands:
        CrondRunningAny:: "/bin/echo In shellcommands.CrondRunningAny"
        CrondRunningPre:: "/bin/echo In shellcommands.CrondRunningPre"
        CrondRunningPost:: "/bin/echo In shellcommands.CrondRunningPost"
-----------------
# cfq -Kf ./t.cf
cfengine::/bin/echo In sh: In shellcommands.CrondRunningAny
cfengine:: CrondRunningAny is defined

-Ed

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

Reply via email to