def processArgs(): parser = argparse.ArgumentParser(description='Generate a key backup', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser, addcrypt=False) parser.add_argument('--output', '-o', default=None, dest='output', required=True, help='Output file') parser.add_argument('--verbose', '-v', action='count', default=0, dest='verbose', help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) return parser.parse_args(remaining)
def processArgs(): parser = argparse.ArgumentParser(description='Encrypt the database', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--shell', dest='shell', default=getShell(), help='Shell to use. Default: %(default)s') parser.add_argument('--verbose', '-v', action='count', default=0, dest='verbose', help='Increase the verbosity') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser( description='encrypt or decrypt filenames', fromfile_prefix_chars='@', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--encrypt', '-e', dest='encrypt', default=False, action='store_true', help='Encrypt names instead of decrypting') parser.add_argument( '--quiet', '-q', dest='quiet', default=False, action='store_true', help="Only print the translation, not the input strings") parser.add_argument('--help', '-h', action='help') parser.add_argument('names', nargs='*', help="List of pathnames to decrypt") Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): isatty = os.isatty(sys.stdout.fileno()) parser = argparse.ArgumentParser(description='List Tardis File Versions', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--long', '-l', dest='long', default=False, action='store_true', help='Use long listing format.') parser.add_argument('--hidden', '-a', dest='hidden', default=False, action='store_true', help='Show hidden files.') parser.add_argument('--reverse', '-r', dest='reverse', default=False, action='store_true', help='Reverse the sort order') parser.add_argument('--annotate', '-f', dest='annotate', default=False, action='store_true', help='Annotate files based on type.') parser.add_argument('--size', '-s', dest='size', default=False, action='store_true', help='Show file sizes') parser.add_argument('--human', '-H', dest='human', default=False, action='store_true', help='Format sizes for easy reading') parser.add_argument('--dirinfo', '-d', dest='dirinfo', default=False, action='store_true', help='List directories, but not their contents') parser.add_argument('--checksums', '-c',dest='cksums', default=False, action='store_true', help='Print checksums.') parser.add_argument('--chainlen', '-L', dest='chnlen', default=False, action='store_true', help='Print chainlengths.') parser.add_argument('--inode', '-i', dest='inode', default=False, action='store_true', help='Print inode numbers') parser.add_argument('--versions', '-V', dest='versions', default='change', choices=['none', 'change', 'all', 'last'], help='Display all, changed, last, or no versions of files. Default: %(default)s') parser.add_argument('--deletions', dest='deletions', default=True, action=Util.StoreBoolean, help='Show deletions. Default: %(default)s') parser.add_argument('--broken', dest='broken', default=True, action=Util.StoreBoolean, help='Show broken files (missing data). Default: %(default)s') parser.add_argument('--oneline', '-O', dest='oneline', default=False, action=Util.StoreBoolean, help='Display versions on one line with the name. Default: %(default)s') parser.add_argument('--times', '-T', dest='checktimes', default=False, action=Util.StoreBoolean, help='Use file time changes when determining diffs. Default: %(default)s') parser.add_argument('--metadata', '-M', dest='checkmeta', default=False, action=Util.StoreBoolean, help='Use any metadata changes when determining diffs. Default: %(default)s') parser.add_argument('--headers', dest='headers', default=True, action=Util.StoreBoolean, help='Show headers. Default: %(default)s') parser.add_argument('--colors', dest='colors', default=isatty, action=Util.StoreBoolean, help='Use colors. Default: %(default)s') parser.add_argument('--columns', dest='columns', type=int, default=None , help='Number of columns to display') parser.add_argument('--recurse', '-R', dest='recurse', default=False, action='store_true', help='List Directories Recurively') parser.add_argument('--maxdepth', dest='maxdepth', default=sys.maxsize, type=int, help='Maximum depth to recurse directories') parser.add_argument('--glob', dest='glob', default=False, action=Util.StoreBoolean, help='Glob filenames') parser.add_argument('--reduce', dest='reduce', default=0, type=int, const=sys.maxsize, nargs='?', help='Reduce paths by N directories. No value for smart reduction') parser.add_argument('--realpath', dest='realpath', default=True, action=Util.StoreBoolean, help='Use the full path, expanding symlinks to their actual path components') rangegrp = parser.add_mutually_exclusive_group() rangegrp.add_argument('--range', dest='range', default=None, help="Use a range of backupsets. Format: 'Start:End' Start and End can be names or backupset numbers. Either value can be left off to indicate the first or last set respectively") rangegrp.add_argument('--dates', dest='daterange', default=None, help="Use a range of dates for the backupsets. Format: 'Start:End'. Start and End are names which can be intepreted liberally. Either can be left off to indicate the first or last set respectively") parser.add_argument('--exceptions', default=False, action=Util.StoreBoolean, dest='exceptions', help="Log full exception data"); parser.add_argument('--verbose', '-v', action='count', default=0, dest='verbose', help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('directories', nargs='*', default='.', help='List of directories/files to list') Util.addGenCompletions(parser) return parser.parse_args(remaining)
def processArgs(): isatty = os.isatty(sys.stdout.fileno()) parser = argparse.ArgumentParser(description='List Tardis File Versions', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--long', '-l', dest='long', default=False, action='store_true', help='Use long listing format.') parser.add_argument('--hidden', '-a', dest='hidden', default=False, action='store_true', help='Show hidden files.') parser.add_argument('--reverse', '-r', dest='reverse', default=False, action='store_true', help='Reverse the sort order') parser.add_argument('--annotate', '-f', dest='annotate', default=False, action='store_true', help='Annotate files based on type.') parser.add_argument('--size', '-s', dest='size', default=False, action='store_true', help='Show file sizes') parser.add_argument('--human', '-H', dest='human', default=False, action='store_true', help='Format sizes for easy reading') parser.add_argument('--dirinfo', '-d', dest='dirinfo', default=False, action='store_true', help='List directories, but not their contents') parser.add_argument('--checksums', '-c',dest='cksums', default=False, action='store_true', help='Print checksums.') parser.add_argument('--chainlen', '-L', dest='chnlen', default=False, action='store_true', help='Print chainlengths.') parser.add_argument('--inode', '-i', dest='inode', default=False, action='store_true', help='Print inode numbers') parser.add_argument('--versions', '-V', dest='versions', default='change', choices=['none', 'change', 'all', 'last'], help='Display all, changed, last, or no versions of files. Default: %(default)s') parser.add_argument('--deletions', dest='deletions', default=True, action=Util.StoreBoolean, help='Show deletions. Default: %(default)s') parser.add_argument('--broken', dest='broken', default=True, action=Util.StoreBoolean, help='Show broken files (missing data). Default: %(default)s') parser.add_argument('--oneline', '-O', dest='oneline', default=False, action=Util.StoreBoolean, help='Display versions on one line with the name. Default: %(default)s') parser.add_argument('--times', '-T', dest='checktimes', default=False, action=Util.StoreBoolean, help='Use file time changes when determining diffs. Default: %(default)s') parser.add_argument('--metadata', '-M', dest='checkmeta', default=False, action=Util.StoreBoolean, help='Use any metadata changes when determining diffs. Default: %(default)s') parser.add_argument('--headers', dest='headers', default=True, action=Util.StoreBoolean, help='Show headers. Default: %(default)s') parser.add_argument('--colors', dest='colors', default=isatty, action=Util.StoreBoolean, help='Use colors. Default: %(default)s') parser.add_argument('--columns', dest='columns', type=int, default=None , help='Number of columns to display') parser.add_argument('--recurse', '-R', dest='recurse', default=False, action='store_true', help='List Directories Recurively') parser.add_argument('--maxdepth', dest='maxdepth', default=sys.maxint, type=int, help='Maximum depth to recurse directories') parser.add_argument('--glob', dest='glob', default=False, action=Util.StoreBoolean, help='Glob filenames') parser.add_argument('--reduce', dest='reduce', default=0, type=int, const=sys.maxint, nargs='?', help='Reduce paths by N directories. No value for smart reduction') parser.add_argument('--realpath', dest='realpath', default=True, action=Util.StoreBoolean, help='Use the full path, expanding symlinks to their actual path components') rangegrp = parser.add_mutually_exclusive_group() rangegrp.add_argument('--range', dest='range', default=None, help="Use a range of backupsets. Format: 'Start:End' Start and End can be names or backupset numbers. Either value can be left off to indicate the first or last set respectively") rangegrp.add_argument('--dates', dest='daterange', default=None, help="Use a range of dates for the backupsets. Format: 'Start:End'. Start and End are names which can be intepreted liberally. Either can be left off to indicate the first or last set respectively") parser.add_argument('--exceptions', default=False, action=Util.StoreBoolean, dest='exceptions', help="Log full exception data"); parser.add_argument('--verbose', '-v', action='count', default=0, dest='verbose', help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('directories', nargs='*', default='.', help='List of directories/files to list') Util.addGenCompletions(parser) return parser.parse_args(remaining)
def processArgs(): parser = argparse.ArgumentParser(description='Encrypt the database', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--names', dest='names', action='store_true', default=False, help='Encrypt filenames. Default=%(default)s') parser.add_argument('--dirs', dest='dirs', action='store_true', default=False, help='Generate directory hashes. Default=%(default)s') parser.add_argument('--sigs', dest='sigs', action='store_true', default=False, help='Generate signature files. Default=%(default)s') parser.add_argument('--files', dest='files', action='store_true', default=False, help='Encrypt files. Default=%(default)s') parser.add_argument('--meta', dest='meta', action='store_true', default=False, help='Generate metadata files. Default=%(default)s') parser.add_argument( '--all', dest='all', action='store_true', default=False, help='Perform all encyrption steps. Default=%(default)s') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) if (not (args.names or args.files or args.dirs or args.meta or args.all or args.sigs)): parser.error( "Must specify at least one --names, --files, --dirs, --meta, or --all" ) return args
def processArgs(): parser = argparse.ArgumentParser(description='encrypt or decrypt filenames', fromfile_prefix_chars='@', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser, addcrypt=False) parser.add_argument('--encrypt', '-e', dest='encrypt', default=False, action='store_true', help='Encrypt names instead of decrypting') parser.add_argument('--quiet', '-q', dest='quiet', default=False, action='store_true', help="Only print the translation, not the input strings") parser.add_argument('--help', '-h', action='help'); parser.add_argument('names', nargs='*', help="List of pathnames to decrypt") Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser(description='Decrypt a File', fromfile_prefix_chars='@', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--output', '-o', type=argparse.FileType('wb'), default=sys.stdout.buffer, help='output file (default: stdout)') parser.add_argument('--from_cache', '-c', default=False, action='store_true', help='Read a cached file') parser.add_argument('--noauth', '-n', default=False, action='store_true', help='Do not authenticate file info') parser.add_argument('--help', '-h', action='help'); parser.add_argument('name', nargs=1, help="Pathnames to decrypt") Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser( description='Check contents of the DB against the file system', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) #parser.add_argument('--output', '-o', default=None, dest='output', required=True, help='Output file') parser.add_argument('--authenticate', '-a', default='none', nargs='?', const='size', dest='authenticate', choices=['none', 'size', 'all'], help='Authenticate files with incorrect sizes') parser.add_argument('--output', '-o', default=None, dest='output', type=argparse.FileType('w'), help='Output data') parser.add_argument('--verbose', '-v', action='count', default=0, dest='verbose', help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) return parser.parse_args(remaining)
def parseArgs(): parser = argparse.ArgumentParser(description='Recover Backed Up Files', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument("--output", "-o", dest="output", help="Output file", default=None) parser.add_argument("--checksum", "-c", help="Use checksum instead of filename", dest='cksum', action='store_true', default=False) bsetgroup = parser.add_mutually_exclusive_group() bsetgroup.add_argument("--backup", "-b", help="Backup set to use. Default: %(default)s", dest='backup', default=Defaults.getDefault('TARDIS_RECENT_SET')) bsetgroup.add_argument("--date", "-d", help="Regenerate as of date", dest='date', default=None) bsetgroup.add_argument("--last", "-l", dest='last', default=False, action='store_true', help="Regenerate the most recent version of the file") parser.add_argument('--recurse', dest='recurse', default=True, action=Util.StoreBoolean, help='Recurse directory trees. Default: %(default)s') parser.add_argument('--recovername', dest='recovername', default=False, action=Util.StoreBoolean, help='Recover the name when recovering a checksum. Default: %(default)s') parser.add_argument('--authenticate', dest='auth', default=True, action=Util.StoreBoolean, help='Authenticate files while regenerating them. Default: %(default)s') parser.add_argument('--authfail-action', dest='authfailaction', default='rename', choices=['keep', 'rename', 'delete'], help='Action to take for files that do not authenticate. Default: %(default)s') parser.add_argument('--reduce-path', '-R', dest='reduce', default=0, const=sys.maxsize, type=int, nargs='?', metavar='N', help='Reduce path by N directories. No value for "smart" reduction') parser.add_argument('--set-times', dest='settime', default=True, action=Util.StoreBoolean, help='Set file times to match original file. Default: %(default)s') parser.add_argument('--set-perms', dest='setperm', default=True, action=Util.StoreBoolean, help='Set file owner and permisions to match original file. Default: %(default)s') parser.add_argument('--set-attrs', dest='setattrs', default=True, action=Util.StoreBoolean, help='Set file extended attributes to match original file. May only set attributes in user space. Default: %(default)s') parser.add_argument('--set-acl', dest='setacl', default=True, action=Util.StoreBoolean, help='Set file access control lists to match the original file. Default: %(default)s') parser.add_argument('--overwrite', '-O', dest='overwrite', default=owModeDefault, const='always', nargs='?', choices=['always', 'newer', 'older', 'never', 'ask'], help='Mode for handling existing files. Default: %(default)s') parser.add_argument('--hardlinks', dest='hardlinks', default=True, action=Util.StoreBoolean, help='Create hardlinks of multiple copies of same inode created. Default: %(default)s') parser.add_argument('--exceptions', default=False, action=Util.StoreBoolean, dest='exceptions', help="Log full exception data"); parser.add_argument('--verbose', '-v', action='count', default=0, dest='verbose', help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('files', nargs='+', default=None, help="List of files to regenerate") Util.addGenCompletions(parser) return parser.parse_args(remaining)
def processArgs(): parser = argparse.ArgumentParser(description='Extract paths for a changeset', fromfile_prefix_chars='@', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--encrypt', '-e', dest='encrypt', default=False, action='store_true', help='Encrypt names instead of decrypting') parser.add_argument('--quiet', '-q', dest='quiet', default=False, action='store_true', help="Only print the translation, not the input strings") parser.add_argument('--backup', '-b', dest='backup', default=None, help='Look in specific backupset') parser.add_argument('--help', '-h', action='help'); parser.add_argument('checksums', nargs='*', help="List of checksums to extract") Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser( description='Encrypt files for a backup database', add_help=False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('--output', '-o', dest='output', required=True, help="Output directory") parser.add_argument('--json', '-j', default=None, dest='input', help='JSON input file') parser.add_argument('--signature', '-s', default=False, action='store_true', dest='signature', help='Generate signature file') parser.add_argument('--compress-data', '-Z', dest='compress', const='zlib', default=None, nargs='?', choices=CompressedBuffer.getCompressors(), help='Compress files') parser.add_argument('names', nargs='*', help="List of pathnames to decrypt") parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser(description='Mount a FUSE filesystem containing tardis backup data', add_help = False, fromfile_prefix_chars='@') (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument('-o', dest='mountopts', action='append',help='Standard mount -o options') parser.add_argument('-d', dest='debug', action='store_true', default=False, help='Run in FUSE debug mode') parser.add_argument('-f', dest='foreground', action='store_true', default=False, help='Remain in foreground') parser.add_argument('--verbose', '-v', dest='verbose', action='count', default=0, help="Increase verbosity") parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('mountpoint', nargs=1, help="List of directories to sync") Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser(description='Mount a FUSE filesystem containing tardis backup data', add_help = False, fromfile_prefix_chars='@') (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser, addcrypt=False) parser.add_argument('-o', dest='mountopts', action='append',help='Standard mount -o options') parser.add_argument('-d', dest='debug', action='store_true', default=False, help='Run in FUSE debug mode') parser.add_argument('-f', dest='foreground', action='store_true', default=False, help='Remain in foreground') parser.add_argument('--verbose', '-v', dest='verbose', action='count', default=0, help="Increase verbosity") parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('mountpoint', nargs=1, help="List of directories to sync") Util.addGenCompletions(parser) args = parser.parse_args(remaining) return args
def processArgs(): parser = argparse.ArgumentParser(description='Tardis HTTP Data Server', formatter_class=Util.HelpFormatter, add_help=False) parser.add_argument('--config', dest='config', default=configName, help="Location of the configuration file (Default: %(default)s)") (args, remaining) = parser.parse_known_args() t = 'Remote' config = configparser.ConfigParser(configDefaults, default_section='Tardis') config.add_section(t) # Make it safe for reading other values from. config.read(args.config) parser.add_argument('--port', dest='port', default=config.getint(t, 'Port'), type=int, help='Listen on port (Default: %(default)s)') parser.add_argument('--dbname', dest='dbname', default=config.get(t, 'DBName'), help='Use the database name (Default: %(default)s)') parser.add_argument('--database', dest='database', default=config.get(t, 'Database'), help='Database Directory (Default: %(default)s)') parser.add_argument('--logfile', '-l', dest='logfile', default=config.get(t, 'LogFile'), help='Log to file (Default: %(default)s)') parser.add_argument('--verbose', '-v', dest='verbose', action='count', default=config.getint(t, 'Verbose'), help='Increase the verbosity (may be repeated)') parser.add_argument('--exceptions', dest='exceptions', action=Util.StoreBoolean, default=config.getboolean(t, 'LogExceptions'), help='Log full exception details') parser.add_argument('--daemon', dest='daemon', action=Util.StoreBoolean, default=config.getboolean(t, 'Daemon'), help='Run as a daemon') parser.add_argument('--user', dest='user', default=config.get(t, 'User'), help='Run daemon as user. Valid only if --daemon is set') parser.add_argument('--group', dest='group', default=config.get(t, 'Group'), help='Run daemon as group. Valid only if --daemon is set') parser.add_argument('--pidfile', dest='pidfile', default=config.get(t, 'PidFile'), help='Use this pidfile to indicate running daemon') parser.add_argument('--ssl', dest='ssl', action=Util.StoreBoolean, default=config.getboolean(t, 'SSL'), help='Use SSL connections') parser.add_argument('--certfile', dest='certfile', default=config.get(t, 'CertFile'), help='Path to certificate file for SSL connections') parser.add_argument('--keyfile', dest='keyfile', default=config.get(t, 'KeyFile'), help='Path to key file for SSL connections') parser.add_argument('--compress', dest='compress', action=Util.StoreBoolean, default=config.getboolean(t, 'Compress'), help='Compress data going out') parser.add_argument('--cache', dest='cache', action=Util.StoreBoolean, default=config.getboolean(t, 'AllowCache'), help='Allow caching') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) return(args, config)
def parseArgs(): isatty = os.isatty(sys.stdout.fileno()) global args parser = argparse.ArgumentParser(description='Diff files between current and a Tardis backup, or multiple Tardis versions', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (args, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument("--backup", '-b', nargs='+', dest='backup', default=[current], help="Backup set(s) to use (Default: %(default)s)") parser.add_argument('--color', dest='color', default=isatty, action=Util.StoreBoolean, help='Use colors') diffgroup = parser.add_mutually_exclusive_group() diffgroup.add_argument('--unified', '-u', dest='unified', type=int, default=0, nargs='?', const=3, help='Generate unified diff') diffgroup.add_argument('--context', '-c', dest='context', type=int, default=5, nargs='?', const=5, help='Generate context diff') diffgroup.add_argument('--ndiff', '-n', dest='ndiff', default=False, action='store_true', help='Generate NDiff style diff') parser.add_argument('--reduce-path', '-R', dest='reduce', default=0, const=sys.maxsize, type=int, nargs='?', metavar='N', help='Reduce path by N directories. No value for "smart" reduction') parser.add_argument('--binary', '-B', dest='binary', default=False, action=Util.StoreBoolean, help='Print differences in binary files. Default: %(default)s') parser.add_argument('--recurse', '-r', dest='recurse', default=False, action=Util.StoreBoolean, help='Recurse into directories. Default: %(default)s') parser.add_argument('--list', '-l', dest='list', default=False, action=Util.StoreBoolean, help='Only list files that differ. Do not show diffs. Default: %(default)s') parser.add_argument('--exceptions', default=False, action=Util.StoreBoolean, dest='exceptions', help="Log full exception data"); parser.add_argument('--verbose', '-v', action='count', dest='verbose', default=0, help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('files', nargs='+', default=None, help="File to diff") Util.addGenCompletions(parser) args = parser.parse_args(remaining) #print args return args
def parseArgs(): isatty = os.isatty(sys.stdout.fileno()) global args parser = argparse.ArgumentParser(description='Diff files between current and a Tardis backup, or multiple Tardis versions', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (args, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser) parser.add_argument("--backup", '-b', nargs='+', dest='backup', default=[current], help="Backup set(s) to use (Default: %(default)s)") parser.add_argument('--color', dest='color', default=isatty, action=Util.StoreBoolean, help='Use colors') diffgroup = parser.add_mutually_exclusive_group() diffgroup.add_argument('--unified', '-u', dest='unified', type=int, default=0, nargs='?', const=3, help='Generate unified diff') diffgroup.add_argument('--context', '-c', dest='context', type=int, default=5, nargs='?', const=5, help='Generate context diff') diffgroup.add_argument('--ndiff', '-n', dest='ndiff', default=False, action='store_true', help='Generate NDiff style diff') parser.add_argument('--reduce-path', '-R', dest='reduce', default=0, const=sys.maxint, type=int, nargs='?', metavar='N', help='Reduce path by N directories. No value for "smart" reduction') parser.add_argument('--binary', '-B', dest='binary', default=False, action=Util.StoreBoolean, help='Print differences in binary files. Default: %(default)s') parser.add_argument('--recurse', '-r', dest='recurse', default=False, action=Util.StoreBoolean, help='Recurse into directories. Default: %(default)s') parser.add_argument('--list', '-l', dest='list', default=False, action=Util.StoreBoolean, help='Only list files that differ. Do not show diffs. Default: %(default)s') parser.add_argument('--exceptions', default=False, action=Util.StoreBoolean, dest='exceptions', help="Log full exception data"); parser.add_argument('--verbose', '-v', action='count', dest='verbose', default=0, help='Increase the verbosity') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') parser.add_argument('files', nargs='+', default=None, help="File to diff") Util.addGenCompletions(parser) args = parser.parse_args(remaining) #print args return args
def processArgs(): parser = argparse.ArgumentParser(description='Tardis HTTP Data Server', formatter_class=Util.HelpFormatter, add_help=False) parser.add_argument('--config', dest='config', default=configName, help="Location of the configuration file (Default: %(default)s)") (args, remaining) = parser.parse_known_args() t = 'Tardis' config = ConfigParser.ConfigParser(configDefaults) config.add_section(t) # Make it safe for reading other values from. config.read(args.config) parser.add_argument('--port', dest='port', default=config.getint(t, 'Port'), type=int, help='Listen on port (Default: %(default)s)') parser.add_argument('--dbname', dest='dbname', default=config.get(t, 'DBName'), help='Use the database name (Default: %(default)s)') parser.add_argument('--database', dest='database', default=config.get(t, 'Database'), help='Database Directory (Default: %(default)s)') parser.add_argument('--logfile', '-l', dest='logfile', default=config.get(t, 'LogFile'), help='Log to file (Default: %(default)s)') parser.add_argument('--verbose', '-v', dest='verbose', action='count', default=config.getint(t, 'Verbose'), help='Increase the verbosity (may be repeated)') parser.add_argument('--exceptions', dest='exceptions', action=Util.StoreBoolean, default=config.getboolean(t, 'LogExceptions'), help='Log full exception details') parser.add_argument('--daemon', dest='daemon', action=Util.StoreBoolean, default=config.getboolean(t, 'Daemon'), help='Run as a daemon') parser.add_argument('--user', dest='user', default=config.get(t, 'User'), help='Run daemon as user. Valid only if --daemon is set') parser.add_argument('--group', dest='group', default=config.get(t, 'Group'), help='Run daemon as group. Valid only if --daemon is set') parser.add_argument('--pidfile', dest='pidfile', default=config.get(t, 'PidFile'), help='Use this pidfile to indicate running daemon') parser.add_argument('--ssl', dest='ssl', action=Util.StoreBoolean, default=config.getboolean(t, 'SSL'), help='Use SSL connections') parser.add_argument('--certfile', dest='certfile', default=config.get(t, 'CertFile'), help='Path to certificate file for SSL connections') parser.add_argument('--keyfile', dest='keyfile', default=config.get(t, 'KeyFile'), help='Path to key file for SSL connections') parser.add_argument('--compress', dest='compress', action=Util.StoreBoolean, default=config.getboolean(t, 'Compress'), help='Compress data going out') parser.add_argument('--cache', dest='cache', action=Util.StoreBoolean, default=config.getboolean(t, 'AllowCache'), help='Allow caching') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) return(args, config)
def processArgs(): parser = argparse.ArgumentParser(description='Encrypt the database', add_help = False) (_, remaining) = Config.parseConfigOptions(parser) Config.addCommonOptions(parser) Config.addPasswordOptions(parser, addcrypt=False) parser.add_argument('--names', dest='names', action='store_true', default=False, help='Encrypt filenames. Default=%(default)s') parser.add_argument('--dirs', dest='dirs', action='store_true', default=False, help='Generate directory hashes. Default=%(default)s') parser.add_argument('--sigs', dest='sigs', action='store_true', default=False, help='Generate signature files. Default=%(default)s') parser.add_argument('--files', dest='files', action='store_true', default=False, help='Encrypt files. Default=%(default)s') parser.add_argument('--meta', dest='meta', action='store_true', default=False, help='Generate metadata files. Default=%(default)s') parser.add_argument('--all', dest='all', action='store_true', default=False, help='Perform all encyrption steps. Default=%(default)s') parser.add_argument('--help', '-h', action='help'); Util.addGenCompletions(parser) args = parser.parse_args(remaining) if (not (args.names or args.files or args.dirs or args.meta or args.all or args.sigs)): parser.error("Must specify at least one --names, --files, --dirs, --meta, or --all") return args
def parseArgs(): global args, minPwStrength parser = argparse.ArgumentParser(description='Tardis Sonic Screwdriver Utility Program', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (args, remaining) = Config.parseConfigOptions(parser) c = Config.config t = args.job # Shared parser bsetParser = argparse.ArgumentParser(add_help=False) bsetgroup = bsetParser.add_mutually_exclusive_group() bsetgroup.add_argument("--backup", "-b", help="Backup set to use", dest='backup', default=None) bsetgroup.add_argument("--date", "-d", help="Use last backupset before date", dest='date', default=None) purgeParser = argparse.ArgumentParser(add_help=False) purgeParser.add_argument('--priority', dest='priority', default=0, type=int, help='Maximum priority backupset to purge') purgeParser.add_argument('--incomplete', dest='incomplete', default=False, action='store_true', help='Purge only incomplete backup sets') bsetgroup = purgeParser.add_mutually_exclusive_group() bsetgroup.add_argument("--date", "-d", dest='date', default=None, help="Purge sets before this date") bsetgroup.add_argument("--backup", "-b", dest='backup', default=None, help="Purge sets before this set") deleteParser = argparse.ArgumentParser(add_help=False) #deleteParser.add_argument("--backup", "-b", dest='backup', default=None, help="Purge sets before this set") deleteParser.add_argument("backups", nargs="*", default=None, help="Backup sets to delete") cnfParser = argparse.ArgumentParser(add_help=False) cnfParser.add_argument('--confirm', dest='confirm', action=Util.StoreBoolean, default=True, help='Confirm deletes and purges') keyParser = argparse.ArgumentParser(add_help=False) keyGroup = keyParser.add_mutually_exclusive_group(required=True) keyGroup.add_argument('--extract', dest='extract', default=False, action='store_true', help='Extract keys from database') keyGroup.add_argument('--insert', dest='insert', default=False, action='store_true', help='Insert keys from database') keyParser.add_argument('--delete', dest='deleteKeys', default=False, action=Util.StoreBoolean, help='Delete keys from server or database') filesParser = argparse.ArgumentParser(add_help=False) filesParser.add_argument('--long', '-l', dest='long', default=False, action=Util.StoreBoolean, help='Long format') filesParser.add_argument('--fullpath', '-f', dest='fullname', default=False, action=Util.StoreBoolean, help='Print full path name in names') filesParser.add_argument('--previous', dest='previous', default=False, action=Util.StoreBoolean, help="Include files that first appear in the set, but weren't added here") filesParser.add_argument('--dirs', dest='dirs', default=False, action=Util.StoreBoolean, help='Include directories in list') filesParser.add_argument('--status', dest='status', default=False, action=Util.StoreBoolean, help='Include status (new/delta) in list') filesParser.add_argument('--human', '-H', dest='human', default=False, action=Util.StoreBoolean, help='Print sizes in human readable form') filesParser.add_argument('--checksums', '-c', dest='cksums', default=False, action=Util.StoreBoolean, help='Print checksums') filesParser.add_argument('--chainlen', '-L', dest='chnlen', default=False, action=Util.StoreBoolean, help='Print chainlengths') filesParser.add_argument('--inode', '-i', dest='inode', default=False, action=Util.StoreBoolean, help='Print inodes') common = argparse.ArgumentParser(add_help=False) Config.addPasswordOptions(common) Config.addCommonOptions(common) create = argparse.ArgumentParser(add_help=False) create.add_argument('--schema', dest='schema', default=c.get(t, 'Schema'), help='Path to the schema to use (Default: %(default)s)') newPassParser = argparse.ArgumentParser(add_help=False) newpassgrp = newPassParser.add_argument_group("New Password specification options") npwgroup = newpassgrp.add_mutually_exclusive_group() npwgroup.add_argument('--newpassword', dest='newpw', default=None, nargs='?', const=True, help='Change to this password') npwgroup.add_argument('--newpassword-file', dest='newpwf', default=None, help='Read new password from file') npwgroup.add_argument('--newpassword-prog', dest='newpwp', default=None, help='Use the specified command to generate the new password on stdout') configKeyParser = argparse.ArgumentParser(add_help=False) configKeyParser.add_argument('--key', dest='configKeys', choices=configKeys, action='append', help='Configuration key to retrieve. None for all keys') configKeyParser.add_argument('--sys', dest='sysKeys', default=False, action=Util.StoreBoolean, help='List System Keys as well as configurable ones') configValueParser = argparse.ArgumentParser(add_help=False) configValueParser.add_argument('--key', dest='key', choices=configKeys, required=True, help='Configuration key to set') configValueParser.add_argument('--value', dest='value', required=True, help='Configuration value to access') priorityParser = argparse.ArgumentParser(add_help=False) priorityParser.add_argument('--priority', dest='priority', type=int, required=True, help='New priority backup set') renameParser = argparse.ArgumentParser(add_help=False) renameParser.add_argument('--name', dest='newname', required=True, help='New name') listParser = argparse.ArgumentParser(add_help=False) listParser.add_argument('--long', '-l', dest='longinfo', default=False, action=Util.StoreBoolean, help='Print long info') listParser.add_argument('--minpriority', dest='minpriority', default=0, type=int, help='Minimum priority to list') listParser.add_argument('--number', '-n', dest='number', default=sys.maxsize, type=int, help='Maximum number to show') subs = parser.add_subparsers(help="Commands", dest='command') subs.add_parser('create', parents=[common, create], help='Create a client database') subs.add_parser('setpass', parents=[common], help='Set a password') subs.add_parser('chpass', parents=[common, newPassParser], help='Change a password') subs.add_parser('keys', parents=[common, keyParser], help='Move keys to/from server and key file') subs.add_parser('list', parents=[common, listParser], help='List backup sets') subs.add_parser('files', parents=[common, filesParser, bsetParser], help='List new files in a backup set') subs.add_parser('info', parents=[common, bsetParser], help='Print info on backup sets') subs.add_parser('purge', parents=[common, purgeParser, cnfParser], help='Purge old backup sets') subs.add_parser('delete', parents=[common, deleteParser, cnfParser], help='Delete a backup set') subs.add_parser('orphans', parents=[common], help='Delete orphan files') subs.add_parser('getconfig', parents=[common, configKeyParser], help='Get Config Value') subs.add_parser('setconfig', parents=[common, configValueParser], help='Set Config Value') subs.add_parser('priority', parents=[common, priorityParser, bsetParser], help='Set backupset priority') subs.add_parser('rename', parents=[common, renameParser, bsetParser], help='Rename a backup set') subs.add_parser('upgrade', parents=[common], help='Update the database schema') parser.add_argument('--exceptions', dest='exceptions', default=False, action=Util.StoreBoolean, help='Log exception messages') parser.add_argument('--verbose', '-v', dest='verbose', default=0, action='count', help='Be verbose. Add before usb command') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) if args.command == None: parser.print_help() sys.exit(0) # And load the required strength for new passwords. NOT specifiable on the command line. #minPwStrength = c.getfloat(t, 'PwStrMin') return args
def parseArgs(): global args, minPwStrength parser = argparse.ArgumentParser(description='Tardis Sonic Screwdriver Utility Program', fromfile_prefix_chars='@', formatter_class=Util.HelpFormatter, add_help=False) (args, remaining) = Config.parseConfigOptions(parser) c = Config.config t = args.job # Shared parser bsetParser = argparse.ArgumentParser(add_help=False) bsetgroup = bsetParser.add_mutually_exclusive_group() bsetgroup.add_argument("--backup", "-b", help="Backup set to use", dest='backup', default=None) bsetgroup.add_argument("--date", "-d", help="Use last backupset before date", dest='date', default=None) purgeParser = argparse.ArgumentParser(add_help=False) purgeParser.add_argument('--priority', dest='priority', default=0, type=int, help='Maximum priority backupset to purge') purgeParser.add_argument('--incomplete', dest='incomplete', default=False, action='store_true', help='Purge only incomplete backup sets') bsetgroup = purgeParser.add_mutually_exclusive_group() bsetgroup.add_argument("--date", "-d", dest='date', default=None, help="Purge sets before this date") bsetgroup.add_argument("--backup", "-b", dest='backup', default=None, help="Purge sets before this set") deleteParser = argparse.ArgumentParser(add_help=False) #deleteParser.add_argument("--backup", "-b", dest='backup', default=None, help="Purge sets before this set") deleteParser.add_argument("backups", nargs="*", default=None, help="Backup sets to delete") cnfParser = argparse.ArgumentParser(add_help=False) cnfParser.add_argument('--confirm', dest='confirm', action=Util.StoreBoolean, default=True, help='Confirm deletes and purges') keyParser = argparse.ArgumentParser(add_help=False) keyGroup = keyParser.add_mutually_exclusive_group(required=True) keyGroup.add_argument('--extract', dest='extract', default=False, action='store_true', help='Extract keys from database') keyGroup.add_argument('--insert', dest='insert', default=False, action='store_true', help='Insert keys from database') keyParser.add_argument('--delete', dest='deleteKeys', default=False, action=Util.StoreBoolean, help='Delete keys from server or database') filesParser = argparse.ArgumentParser(add_help=False) filesParser.add_argument('--long', '-l', dest='long', default=False, action=Util.StoreBoolean, help='Long format') filesParser.add_argument('--fullpath', '-f', dest='fullname', default=False, action=Util.StoreBoolean, help='Print full path name in names') filesParser.add_argument('--previous', dest='previous', default=False, action=Util.StoreBoolean, help="Include files that first appear in the set, but weren't added here") filesParser.add_argument('--dirs', dest='dirs', default=False, action=Util.StoreBoolean, help='Include directories in list') filesParser.add_argument('--status', dest='status', default=False, action=Util.StoreBoolean, help='Include status (new/delta) in list') filesParser.add_argument('--human', '-H', dest='human', default=False, action=Util.StoreBoolean, help='Print sizes in human readable form') filesParser.add_argument('--checksums', '-c', dest='cksums', default=False, action=Util.StoreBoolean, help='Print checksums') filesParser.add_argument('--chainlen', '-L', dest='chnlen', default=False, action=Util.StoreBoolean, help='Print chainlengths') filesParser.add_argument('--inode', '-i', dest='inode', default=False, action=Util.StoreBoolean, help='Print inodes') common = argparse.ArgumentParser(add_help=False) Config.addPasswordOptions(common) Config.addCommonOptions(common) create = argparse.ArgumentParser(add_help=False) create.add_argument('--schema', dest='schema', default=c.get(t, 'Schema'), help='Path to the schema to use (Default: %(default)s)') newPassParser = argparse.ArgumentParser(add_help=False) newpassgrp = newPassParser.add_argument_group("New Password specification options") npwgroup = newpassgrp.add_mutually_exclusive_group() npwgroup.add_argument('--newpassword', dest='newpw', default=None, nargs='?', const=True, help='Change to this password') npwgroup.add_argument('--newpassword-file', dest='newpwf', default=None, help='Read new password from file') npwgroup.add_argument('--newpassword-prog', dest='newpwp', default=None, help='Use the specified command to generate the new password on stdout') configKeyParser = argparse.ArgumentParser(add_help=False) configKeyParser.add_argument('--key', dest='configKeys', choices=configKeys, action='append', help='Configuration key to retrieve. None for all keys') configKeyParser.add_argument('--sys', dest='sysKeys', default=False, action=Util.StoreBoolean, help='List System Keys as well as configurable ones') configValueParser = argparse.ArgumentParser(add_help=False) configValueParser.add_argument('--key', dest='key', choices=configKeys, required=True, help='Configuration key to set') configValueParser.add_argument('--value', dest='value', required=True, help='Configuration value to access') priorityParser = argparse.ArgumentParser(add_help=False) priorityParser.add_argument('--priority', dest='priority', type=int, required=True, help='New priority backup set') renameParser = argparse.ArgumentParser(add_help=False) renameParser.add_argument('--name', dest='newname', required=True, help='New name') listParser = argparse.ArgumentParser(add_help=False) listParser.add_argument('--long', '-l', dest='longinfo', default=False, action=Util.StoreBoolean, help='Print long info') subs = parser.add_subparsers(help="Commands", dest='command') subs.add_parser('create', parents=[common, create], help='Create a client database') subs.add_parser('setpass', parents=[common], help='Set a password') subs.add_parser('chpass', parents=[common, newPassParser], help='Change a password') subs.add_parser('keys', parents=[common, keyParser], help='Move keys to/from server and key file') subs.add_parser('list', parents=[common, listParser], help='List backup sets') subs.add_parser('files', parents=[common, filesParser, bsetParser], help='List new files in a backup set') subs.add_parser('info', parents=[common, bsetParser], help='Print info on backup sets') subs.add_parser('purge', parents=[common, purgeParser, cnfParser], help='Purge old backup sets') subs.add_parser('delete', parents=[common, deleteParser, cnfParser], help='Delete a backup set') subs.add_parser('orphans', parents=[common], help='Delete orphan files') subs.add_parser('getconfig', parents=[common, configKeyParser], help='Get Config Value') subs.add_parser('setconfig', parents=[common, configValueParser], help='Set Config Value') subs.add_parser('priority', parents=[common, priorityParser, bsetParser], help='Set backupset priority') subs.add_parser('rename', parents=[common, renameParser, bsetParser], help='Rename a backup set') subs.add_parser('upgrade', parents=[common], help='Update the database schema') parser.add_argument('--exceptions', dest='exceptions', default=False, action=Util.StoreBoolean, help='Log exception messages') parser.add_argument('--verbose', '-v', dest='verbose', default=0, action='count', help='Be verbose. Add before usb command') parser.add_argument('--version', action='version', version='%(prog)s ' + Tardis.__versionstring__, help='Show the version') parser.add_argument('--help', '-h', action='help') Util.addGenCompletions(parser) args = parser.parse_args(remaining) # And load the required strength for new passwords. NOT specifiable on the command line. #minPwStrength = c.getfloat(t, 'PwStrMin') return args
#! /usr/bin/python from Tardis import CacheDir, Util import argparse import sys parser = argparse.ArgumentParser( description="Generate file paths in a cache dir directory", add_help=True) parser.add_argument('--base', '-b', dest='base', default='.', help='Base CacheDir directory') parser.add_argument('files', nargs='*', help='List of files to print') Util.addGenCompletions(parser) args = parser.parse_args() c = CacheDir.CacheDir(args.base) for i in args.files: print c.path(i)
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. from Tardis import CacheDir, Util import argparse import sys import logging logging.basicConfig() parser = argparse.ArgumentParser(description="Generate file paths in a cache dir directory", add_help=True) parser.add_argument('--base', '-b', dest='base', default='.', help='Base CacheDir directory') parser.add_argument('files', nargs='*', help='List of files to print') Util.addGenCompletions(parser) args = parser.parse_args() c = CacheDir.CacheDir(args.base, create=False) for i in args.files: print(c.path(i))