Hello,
We have serverA as central cfengine policy server/application binary
repository(200MB) and 100 clients(mixture of unix and window) to pull
policy/binary from this central server. So far, this model is working fine.
Now, we want to separate policy update from binary update. All clients should
still follow defined schedule to pull policy change from central server, but
binary update should be controlled by central cfengine server. Here is what I
am planning to do:
1. On central CFEngine server, when we decided to proceed client binary update,
touch a marker file under client's directory(each client has its own directory)
2. Once central CFEngine server detect the marker file under particular
client's directory, it will modify that client's update policy, adding an
update class.
3. Client cfengine will pull the new policy and run binary update policy next
time.
4. Once client update finished, I will remove the marker file and CFEngine will
switch back to previous update policy, which will be pulled by client.
Above steps look cumbersome. I am testing another idea using
cf-runagent.(haven't got it working, need figure out how to conditionally run a
promise,not a command, with ifvarclass)
1. From central CFEngine server, I issue "cf-runagent -H <hostname> -D
BinaryUpdateClass"
2. On client, BinaryUpdateClass is passed to "ifvarclass" to determine whether
it should run the binary update promise or not.
Your thought is welcome!
Cheers,
enhong
_______________________________________________
Help-cfengine mailing list
Help-cfengine@cfengine.org
https://cfengine.org/mailman/listinfo/help-cfengine