propellor-2.8.1: property-based host configuration management in haskell

Safe HaskellNone




class RsyncParam p where Source


toRsync :: p -> String Source

filesUnder :: FilePath -> Pattern Source

A pattern that matches all files under a directory, but does not match the directory itself.

syncDir :: Src -> Dest -> Property NoInfo Source

Ensures that the Dest directory exists and has identical contents as the Src directory.

newtype Pattern Source

A pattern to match against files that rsync is going to transfer.

See "INCLUDE/EXCLUDE PATTERN RULES" in the rsync(1) man page.

For example, Pattern "foo*" matches all files under the "foo" directory, relative to the Src that rsync is acting on.


Pattern String 

syncDirFiltered :: [Filter] -> Src -> Dest -> Property NoInfo Source

Like syncDir, but avoids copying anything that the filter list excludes. Anything that's filtered out will be deleted from Dest.

Rsync checks each name to be transferred against its list of Filter rules, and the first matching one is acted on. If no matching rule is found, the file is processed.