I am trying to replicate the "rm -rf" command. I am getting the correct result
but I have errors. Help.
Here is the config file.
#
# testing cfengine with following:
# delete local folder
#
body common control
{
bundlesequence => { "createFile" , "copyLocalFile" ,
"deleteLocalFolder" };
ignore_missing_bundles => "true";
require_comments => "true";
inputs => { "/var/cfengine/inputs/cfengine_stdlib.cf"
};
version => "1.0";
}
body agent control
{
verbose => "true";
}
bundle agent createFile
{
files:
#
# the stanza below creates folders and file if it does not exist
#
"/tmp/test/create_folder1/create_file4.txt"
comment => "create file",
perms => mog("755", "root", "root"),
create => "true";
"/tmp/test/create_folder1/create_folder2/create_file5.txt"
comment => "create file",
perms => mog("755", "root", "root"),
create => "true";
"/tmp/test/create_folder1/create_folder2/create_file7.txt"
comment => "create file",
perms => mog("755", "root", "root"),
create => "true";
"/tmp/test/create_folder1/create_folder3/create_file6.txt"
comment => "create file",
perms => mog("755", "root", "root"),
create => "true";
"/tmp/test/create_folder1/create_folder3/create_file8.txt"
comment => "create file",
perms => mog("755", "root", "root"),
create => "true";
}
bundle agent copyLocalFile
{
files:
"/tmp/test/create_folder1/copy_local_file.txt"
comment => "copy local file",
preserve => "true",
copy_from => myLocalCopy("/etc/hosts");
"/tmp/test/create_folder1/copy_local_file2.txt"
comment => "copy local file",
preserve => "true",
copy_from =>
myLocalCopy("/tmp/test/create_folder1/copy_local_file.txt");
}
bundle agent deleteLocalFolder
{
files:
"/tmp/test/create_folder1/create_fo.*"
comment => "delete local folders",
include_basedir => "true",
# include_dirs => { "/tmp/test/create_folder1/create_folde.*"
},
depth_search => recurse("inf"),
file_select =>
specifyFile("/tmp/test/create_folder1/create_fo.*"),
delete => tidy;
}
body copy_from myLocalCopy(from)
{
source => "$(from)";
}
body file_select specifyFile(x)
{
path_name => { "$(x)" };
file_types => { "plain" , "dir" , "reg" };
file_result => "path_name";
}
Here are the errors that I am getting.
cf3> *****************************************************************
cf3> BUNDLE deleteLocalFolder
cf3> *****************************************************************
cf3>
cf3>
cf3> + Private classes augmented:
cf3>
cf3> - Private classes diminished:
cf3>
cf3>
cf3>
cf3> =========================================================
cf3> files in bundle deleteLocalFolder (1)
cf3> =========================================================
cf3>
cf3>
cf3> .........................................................
cf3> Promise handle:
cf3> Promise made by: /tmp/test/create_folder1/create_fo.*
cf3>
cf3> Comment: delete local folders
cf3> .........................................................
cf3>
cf3> -> Using regex pathtype for /tmp/test/create_folder1/create_fo.* (see
pathtype)
cf3> -> Using expanded file base path /tmp/test/create_folder1/create_folder2
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder2
cf3> -> Verifying file deletions for /tmp/test/create_folder1/create_folder2
cf3> !! Delete directory /tmp/test/create_folder1/create_folder2 failed
(cannot delete node called "create_folder2")
cf3> !!! System reports error for rmdir: "Directory not empty"
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder2/create_file7.txt
cf3> -> Verifying file deletions for
/tmp/test/create_folder1/create_folder2/create_file7.txt
cf3> -> Deleted file /tmp/test/create_folder1/create_folder2/create_file7.txt
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder2/create_file5.txt
cf3> -> Verifying file deletions for
/tmp/test/create_folder1/create_folder2/create_file5.txt
cf3> -> Deleted file /tmp/test/create_folder1/create_folder2/create_file5.txt
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder2
cf3> -> Verifying file deletions for /tmp/test/create_folder1/create_folder2
cf3> -> Deleted directory /tmp/test/create_folder1/create_folder2
cf3> -> Using expanded file base path /tmp/test/create_folder1/create_folder3
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder3
cf3> -> Verifying file deletions for /tmp/test/create_folder1/create_folder3
cf3> !! Delete directory /tmp/test/create_folder1/create_folder3 failed
(cannot delete node called "create_folder3")
cf3> !!! System reports error for rmdir: "Directory not empty"
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder3/create_file8.txt
cf3> -> Verifying file deletions for
/tmp/test/create_folder1/create_folder3/create_file8.txt
cf3> -> Deleted file /tmp/test/create_folder1/create_folder3/create_file8.txt
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder3/create_file6.txt
cf3> -> Verifying file deletions for
/tmp/test/create_folder1/create_folder3/create_file6.txt
cf3> -> Deleted file /tmp/test/create_folder1/create_folder3/create_file6.txt
cf3> -> Handling file existence constraints on
/tmp/test/create_folder1/create_folder3
cf3> -> Verifying file deletions for /tmp/test/create_folder1/create_folder3
cf3> -> Deleted directory /tmp/test/create_folder1/create_folder3
cf3>
cf3> + Private classes augmented:
cf3>
cf3> - Private classes diminished:
cf3>
cf3>
cf3>
cf3> =========================================================
cf3> files in bundle deleteLocalFolder (2)
cf3> =========================================================
cf3>
cf3>
cf3> + Private classes augmented:
cf3>
cf3> - Private classes diminished:
cf3>
cf3>
cf3>
cf3> =========================================================
cf3> files in bundle deleteLocalFolder (3)
cf3> =========================================================
cf3>
cf3> Outcome of version 1.0 (agent-0): Promises observed to be kept 34%,
Promises repaired 52%, Promises not repaired 14%
cf3> Estimated system complexity as touched objects = 9, for 8 promises
cf3> -> Writing last-seen observations
cf3> -> Keyring is empty
cf3> -> No lock purging scheduled
Regards,
j
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of [email protected]
Sent: Thursday, June 16, 2011 1:32 PM
To: [email protected]
Subject: Cfengine Help: Re: Cfengine Help: Deleting a Local File
Forum: Cfengine Help
Subject: Re: Cfengine Help: Deleting a Local File
Author: neilhwatson
Link to topic: https://cfengine.com/forum/read.php?3,22450,22484#msg-22484
Try rmdirs in the manual. Also I don't think you can delete the top level dir
of your promise. You might need to trail the path with the dot.
_______________________________________________
Help-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/help-cfengine
_______________________________________________
Help-cfengine mailing list
[email protected]
https://cfengine.org/mailman/listinfo/help-cfengine