CLI ReferenceΒΆ

Command Line Interface (or Tool) reference.

Manage a Furtive manifest

usage: furtive [-h] [--basedir BASEDIR] [--manifest MANIFEST_PATH]
               [--log-level {debug,info,warn,error,critical}]
               [--exclude PATTERN] [--quiet] [--report-output FILE_NAME]
               [--version]
               {create,compare,check}
Positional arguments:
action

Which action to perform: compare - compare the current state of the files on the file system with the recorded state in the manifest file. Status code is 0 if the comparison was successful. check - check the integrity of files listed in the manifest. Same as compare but exits with status code 1 if there are changes to the files included in the manifest. That is, if any file hash changes or if files are added or removed, the application will exit with a status code of 1 to indicate there are changes. This action can be useful for scripting. For example, to run a nightly cron check of a manifest. create - create a new manifest from the files inthe directory specified by the –basedir argument.

Possible choices: create, compare, check

Options:
--basedir=. Directory containing files that will be checked. Default: .
--manifest Location of the manifest file. Manifests may be located outside the directory indicated by –basedir. Must provide path and filename of the manifest file. Default: <basedir>/.manifest.yaml
--log-level=info
 

verbosity of furtive

Possible choices: debug, info, warn, error, critical

--exclude=[] Patterns to exclude files and directories from manifest. Can have multiple occurances of this argument. Excludes are not stored in the manifest so it is up to the user to provide the same arguments every run. Patterns are evaluated as UNIX shell-style wildcard characters. See the [fnmatch documentation](https://docs.python.org/2/library/fnmatch.html)for more information. It is important to note that exclusions are not stored. Therefore ,they must be specified for every run of `furtive`. Otherwise, the files which were previously excluded will be included and will show up as files added to the manifest.
--quiet=False Only print out critial error messages. Do not print a report at the end of a compare run. Using this argument will override the log-level and set it to “critical”. Only acceptions will be printed to terminal. The return code will be the only way to know if a Manifest has changed. This is useful for scripting such as a cron based manifest checks. Useful with the check command.
--report-output=-
 File to print the diff report to. - for stdout.This can be consumed by other scripts todetermine exactly what has changed within themanifestDefault: -
--version show program’s version number and exit