Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 6871123591698337ee06efa6a871ef7b > files > 3

cfengine3-base-3.0.2-1mdv2010.0.i586.rpm

#
# Just bodies and editbundles here
#

body perms p(user,mode)

{
owners => { "$(user)" };
mode   => "$(mode)";
}

############################################

body depth_search recurse(d)

{
depth => "$(d)";
}

#########################################################

body delete tidy

{
dirlinks => "delete";          #keep/tidy/delete
rmdirs   => "true";             #none/all/sub
}

#########################################################

body file_select days_old(days)

#
# we can build old "include", "exclude", and "ignore" 
# from these as standard patterns - these bodies can
# form a library of standard patterns
#

{
mtime       => irange(ago(1,0,0,0,0,0),ago(0,0,$(days),0,0,0));  
file_result => "mtime"; 
}

#########################################################

body changes lay_trip_wire

{
hash           => "best";
report_changes => "content";
update_hashes  => "yes";
}

########################################################

body action longjob
{
ifelapsed => "240"; # run only every 4 hours
}

#######################################################
# For the library
#######################################################

body edit_defaults def
{
empty_file_before_editing => "false";
edit_backup => "false";
max_file_size => "100000";
}

########################################################

body location start

{
# If not line to match, applies to whole text body
before_after => "before";
}

########################################################

bundle edit_line DeleteLinesMatching(regex)
  {
  delete_lines:

    "$(regex)",
  action => WarnOnly;

  }

########################################################

body action WarnOnly
{
action_policy => "warn";
ifelapsed => "60";
}

########################################################

bundle edit_line upgrade_cfexecd
  {
  classes:

    "exec_fix" not => regline(".*cf-execd.*","$(edit.filename)");

  insert_lines:

    exec_fix::

      "0,5,10,15,20,25,30,35,40,45,50,55 * * * * /var/cfengine/bin/cf-execd -F";

  replace_patterns:

    "cfexecd" replace_with => With("cf-execd");

  reports:

    exec_fix::

    "Added a 5 minute schedule to crontabs";
  }

########################################
# Bodies
########################################

body replace_with With(x)

{
replace_value => "$(x)";
occurrences => "all";
}

########################################

body copy_from scp(from,server)

{
source      => "$(from)";
compare     => "digest";
encrypt     => "true";
verify      => "true";
}