####################################################### # # cf.update - for iu.hio.no # ####################################################### ### # # BEGIN cf.update # ### ####################################################################### # # This script distributes the configuration, a simple file so that, # if there are syntax errors in the main config, we can still # distribute a correct configuration to the machines afterwards, even # though the main config won't parse. It is read and run just before the # main configuration is parsed. # ####################################################################### control: actionsequence = ( copy processes tidy ) # Keep this simple and constant domain = ( iu.hio.no ) # Needed for remote copy # # Which host/dir is the master for configuration roll-outs? # policyhost = ( nexus.iu.hio.no ) master_cfinput = ( /iu/nexus/local/iu/cfengine/inputs ) AddInstallable = ( new_cfenvd new_cfservd ) # # Some convenient variables # workdir = ( /var/cfengine ) solaris:: cf_install_dir = ( /iu/nexus/local/sbin ) linux:: cf_install_dir = ( /iu/cube/local/sbin ) ################################################################### # # Spread the load, make sure the servers get done first though # ################################################################### !AllBinaryServers:: SplayTime = ( 1 ) ############################################################################ # # Make sure there is a local copy of the configuration and # the most important binaries in case we have no connectivity # e.g. for mobile stations or during DOS attacks # copy: $(master_cfinput) dest=$(workdir)/inputs r=inf mode=700 type=binary exclude=*.lst exclude=*~ exclude=#* server=$(policyhost) trustkey=true !quetzalcoatal:: $(cf_install_dir)/cfagent dest=$(workdir)/bin/cfagent mode=755 backup=false type=checksum $(cf_install_dir)/cfservd dest=$(workdir)/bin/cfservd mode=755 backup=false type=checksum define=new_cfservd $(cf_install_dir)/cfexecd dest=$(workdir)/bin/cfexecd mode=755 backup=false type=checksum $(cf_install_dir)/cfenvd dest=$(workdir)/bin/cfenvd mode=755 backup=false type=checksum define=new_cfenvd ##################################################################### tidy: # # Cfexecd stores output in this directory. # Make sure we don't build up files and choke on our own words! # $(workdir)/outputs pattern=* age=7 ##################################################################### processes: new_cfservd:: "cfservd" signal=term restart /var/cfengine/bin/cfservd new_cfenvd:: "cfenvd" signal=kill restart "/var/cfengine/bin/cfenvd -H" ### # # END cf.update # ###