dootle.jobs.shadow

See EOF for license/metadata/notes as applicable

Functions

_shadow_paths(→ list[pathlib.Path])

take a relative path, apply it onto a multiple roots to the shadow directories

Classes

InjectShadowAction

Inject a shadow path into each task entry, using the target key which points to the relative path to shadow

InjectMultiShadow

Inject multiple shadow paths into each task entry, using the target key which

CalculateShadowDirs

Take a relative path, and apply it to a list of shadow roots,

MultiBackupAction

copy a file somewhere, but only if it doesn't exist at the dest, or is newer than the dest

Module Contents

dootle.jobs.shadow._shadow_paths(
rpath: pathlib.Path,
shadow_roots: list[pathlib.Path],
) list[pathlib.Path]

take a relative path, apply it onto a multiple roots to the shadow directories

Parameters:
Return type:

list[pathlib.Path]

class dootle.jobs.shadow.InjectShadowAction

Inject a shadow path into each task entry, using the target key which points to the relative path to shadow returns the directory of the shadow target

registered as: job.inject.shadow

class dootle.jobs.shadow.InjectMultiShadow

Inject multiple shadow paths into each task entry, using the target key which points to the relative path to shadow injects ‘shadow_paths’, a list of paths

For use with multibackupaction,

class dootle.jobs.shadow.CalculateShadowDirs

Take a relative path, and apply it to a list of shadow roots, adding ‘shadow_paths’ to the task state

class dootle.jobs.shadow.MultiBackupAction

copy a file somewhere, but only if it doesn’t exist at the dest, or is newer than the dest The arguments of the action are held in self.spec uses ‘shadow_paths’, a list of directories to backup to, using ‘pattern’, which will be expanded with an implicit variable ‘shadow_path’

will create the destination directory if necessary