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: help-cfengine-boun...@cfengine.org [mailto:help-cfengine-boun...@cfengine.org] On Behalf Of no-re...@cfengine.com Sent: Thursday, June 16, 2011 1:32 PM To: help-cfengine@cfengine.org 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 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