I forgot to reply to your second question. Cfengine's design will cause
it to converge to the state defined in your policy over time. So
depending on what's in your policy, it will likely take several agent
runs before a system converges to the defined state. Separating promises
into bundles is useful from an organizational perspective but should
have no effect, other than the order in which bundles are run, on the
convergence of your systems to the policy-defined state.

Mark wrote a great paper a while back, fairly technical, about
Cfengine's convergent nature. See "A Tiny Introduction to Cfengine" at
http://cfengine.com/pages/whitepapers. It's more centered on Cfengine 2
but the philosophy of convergence described is essentially the same.

Justin

-----Original Message-----
From: help-cfengine-boun...@cfengine.org
[mailto:help-cfengine-boun...@cfengine.org] On Behalf Of Justin Lloyd
Sent: Wednesday, April 21, 2010 3:12 PM
To: fo...@cfengine.com; help-cfengine@cfengine.org
Subject: RE: Cfengine Help: cfengine program flow

Nicolas,

Cfengine evaluates all bundles as they are ordered within the
bundlesequence. Within each bundle, it evaluates the promise types in
the following order (from section 2.8.1 in the reference manual):

        vars
        classes
        interfaces
        processes
        storage
        packages
        commands
        methods
        files
        databases
        services
        reports

Within each bundle, it evaluates the above list of promise types up to 3
times in order to deal with potential dependencies, e.g. define var V1,
define class C1 based on V1, define var V2 based on class C1, etc.

Does that help?

Justin 

-----Original Message-----
From: help-cfengine-boun...@cfengine.org
[mailto:help-cfengine-boun...@cfengine.org] On Behalf Of
fo...@cfengine.com
Sent: Wednesday, April 21, 2010 3:00 PM
To: help-cfengine@cfengine.org
Subject: Cfengine Help: cfengine program flow

Forum: Cfengine Help
Subject: cfengine program flow
Author: nicolas
Link to topic:
https://cfengine.com/forum/read.php?3,16957,16957#msg-16957

hi 

I thought i understand the program flow of cfengine more or less, but
today i recognized i really don't :-/

I hope anybody can helpe me to clear a few things:

1. The code in a bundle doesn't go top -> down? it first does the
commands, then the packages then the commands and so on?

2. I've to run cf-agent multiple time until every promise in it is kept,
is this usual? maybe i have to split this in different bundles?

many thanks in advance

nicolas

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

This electronic communication and any attachments may contain
confidential and proprietary 
information of DigitalGlobe, Inc. If you are not the intended recipient,
or an agent or employee 
responsible for delivering this communication to the intended recipient,
or if you have received 
this communication in error, please do not print, copy, retransmit,
disseminate or 
otherwise use the information. Please indicate to the sender that you
have received this 
communication in error, and delete the copy you received. DigitalGlobe
reserves the 
right to monitor any electronic communication sent or received by its
employees, agents 
or representatives.

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

Reply via email to