re-conf.resources.file
chmod
(chmod dest mode)(chmod c dest mode)
Change file/directory mode resource:
(chmod "/home"/re-ops/.ssh" "0777")
chown
(chown dest uid gid)(chown c dest uid gid)
Change file/directory owner using uid & gid resource:
(chown "/home"/re-ops/.ssh" 1001 1002)
copy
(copy src dest)(copy c src dest)
Copy a file resource:
(copy src dest)
directory
(directory dest state)(directory c dest state)
Directory resource:
(directory "/tmp/bla" :present) ; create directory
(directory "/tmp/bla" :absent) ; remove directory
file
(file dest state)(file c dest state)
File resource:
(file "/tmp/bla" :present) ; touch a file
(file "/tmp/bla" :absent) ; remove a file
into-spec
(into-spec m args)
line
(line & as)
File line resource either append or remove lines:
(line "/tmp/foo" "bar"); append line to the file
(line "/tmp/foo" "bar" :present); append explicit
(line "/tmp/foo" (line-eq "bar") :absent); remove lines equal to bar from the file
(line "/tmp/foo" (fn [curr] (> 5 (.length curr))) :absent); remove lines using a function
(line "/tmp/foo" "key" "value" "=" :set); set key value using seperator
rename
(rename src dest)(rename c src dest)
Rename a file/directory resource:
(rename "/tmp/foo" "/tmp/bar")
symlink
(symlink src target)(symlink src target state)(symlink c src target state)
Symlink resource:
(symlink "/home/re-ops/.vim/.vimrc" "/home/re-ops/.vimrc") ; create symlink
template
(template args tmpl dest)(template c args tmpl dest)
Create a file from a mustache template resource:
(template {:keys ...} "/home/re-ops/.ssh/autorized-keys" "authorized-keys.mustache")