def main(args=None, stdout=None, stderr=None): set_streams(stdout=stdout, stderr=stderr) parser = get_parser() add_common_arguments(parser, skip_hide_empty=True, path_nargs='?') args = parser.parse_args(args) command = ExportCommand(args) clients = find_repositories(command.paths, nested=command.nested) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, number_of_workers=args.workers) # check if at least one repo was found in the client directory basename = None for result in results: result['path'] = get_relative_path_of_result(result) if result['path'] == '.': basename = os.path.basename(os.path.abspath(result['client'].path)) # in that case prefix all relative paths with the client directory basename if basename is not None: for result in results: if result['path'] == '.': result['path'] = basename else: result['path'] = os.path.join(basename, result['path']) print('repositories:') output_results(results, output_handler=output_export_data) output_results(results, output_handler=output_error_information) any_error = any(r['returncode'] for r in results) return 1 if any_error else 0
def simple_main(parser, command_class, args=None): add_common_arguments(parser) args = parser.parse_args(args) command = command_class(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, show_progress=True) output_results(results) return 0
def simple_main(parser, command_class, args=None): add_common_arguments(parser) args = parser.parse_args(args) command = command_class(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, show_progress=True) output_results(results, hide_empty=args.hide_empty) return 0
def main(args=None, stdout=None, stderr=None): set_streams(stdout=stdout, stderr=stderr) parser = get_parser() add_common_arguments(parser) # separate anything followed after --args to not confuse argparse if args is None: args = sys.argv[1:] try: index = args.index('--args') + 1 except ValueError: # should generate error due to missing --args parser.parse_known_args(args) client_args = args[index:] args = parser.parse_args(args[0:index]) args.args = client_args # check if any client type is specified any_client_type = False for client in vcstool_clients: if client.type in args and args.__dict__[client.type]: any_client_type = True break # if no client type is specified enable all client types if not any_client_type: for client in vcstool_clients: if client.type in args: args.__dict__[client.type] = True command = CustomCommand(args) # filter repositories by specified client types clients = find_repositories(command.paths, nested=command.nested) clients = [c for c in clients if c.type in args and args.__dict__[c.type]] if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, show_progress=True, number_of_workers=args.workers, debug_jobs=args.debug) output_results(results, hide_empty=args.hide_empty) any_error = any(r['returncode'] for r in results) return 1 if any_error else 0
def main(args=None): parser = get_parser() add_common_arguments(parser, skip_hide_empty=True, single_path=True) args = parser.parse_args(args) command = ExportCommand(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs) print('repositories:') output_results(results, output_handler=output_export_data) return 0
def simple_main(parser, command_class, args=None): add_common_arguments(parser) args = parser.parse_args(args) command = command_class(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, show_progress=True, number_of_workers=args.workers, debug_jobs=args.debug) output_results(results, hide_empty=args.hide_empty) any_error = any([r['returncode'] != 0 for r in results]) return 1 if any_error else 0
def main(args=None): parser = get_parser() add_common_arguments(parser) args = parser.parse_args(args) args.paths = [args.path] command = ExportCommand(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs) print('repositories:') output_results(results, output_export_data) return 0
def simple_main(parser, command_class, args=None): add_common_arguments(parser) args = parser.parse_args(args) command = command_class(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, show_progress=True, number_of_workers=args.workers) output_results(results, hide_empty=args.hide_empty) any_error = any([r['returncode'] != 0 for r in results]) return 1 if any_error else 0
def main(args=None): parser = get_parser() add_common_arguments(parser, skip_hide_empty=True, single_path=True) args = parser.parse_args(args) command = ExportCommand(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, number_of_workers=args.workers) print('repositories:') output_results(results, output_handler=output_export_data) output_results(results, output_handler=output_error_information) any_error = any([r['returncode'] != 0 for r in results]) return 1 if any_error else 0
def main(args=None): parser = get_parser() add_common_arguments(parser, skip_hide_empty=True, single_path=True) args = parser.parse_args(args) command = ExportCommand(args) clients = find_repositories(command.paths) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs) print('repositories:') output_results(results, output_handler=output_export_data) output_results(results, output_handler=output_error_information) any_error = any([r['returncode'] != 0 for r in results]) return 1 if any_error else 0
def main(args=None): parser = get_parser() add_common_arguments(parser) # separate anything followed after --args to not confuse argparse if args is None: args = sys.argv[1:] try: index = args.index('--args') + 1 except ValueError: # should generate error due to missing --args parser.parse_known_args(args) client_args = args[index:] args = parser.parse_args(args[0:index]) args.args = client_args # check if any client type is specified any_client_type = False for client in vcstool_clients: if client.type in args and args.__dict__[client.type]: any_client_type = True break # if no client type is specified enable all client types if not any_client_type: for client in vcstool_clients: if client.type in args: args.__dict__[client.type] = True command = CustomCommand(args) # filter repositories by specified client types clients = find_repositories(command.paths) clients = [c for c in clients if c.type in args and args.__dict__[c.type]] if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, show_progress=True, number_of_workers=args.workers) output_results(results, hide_empty=args.hide_empty) any_error = any([r['returncode'] != 0 for r in results]) return 1 if any_error else 0
def main(args=None, stdout=None, stderr=None): set_streams(stdout=stdout, stderr=stderr) parser = get_parser() add_common_arguments(parser, skip_hide_empty=True, path_nargs='?') args = parser.parse_args(args) command = ExportCommand(args) clients = find_repositories(command.paths, nested=command.nested) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, number_of_workers=args.workers) print('repositories:') output_results(results, output_handler=output_export_data) output_results(results, output_handler=output_error_information) any_error = any(r['returncode'] for r in results) return 1 if any_error else 0
def main(args=None, stdout=None, stderr=None): set_streams(stdout=stdout, stderr=stderr) parser = get_parser() add_common_arguments(parser, skip_hide_empty=True, single_path=True) args = parser.parse_args(args) command = ExportCommand(args) clients = find_repositories(command.paths, nested=command.nested) if command.output_repos: output_repositories(clients) jobs = generate_jobs(clients, command) results = execute_jobs(jobs, number_of_workers=args.workers) print('repositories:') output_results(results, output_handler=output_export_data) output_results(results, output_handler=output_error_information) any_error = any(r['returncode'] for r in results) return 1 if any_error else 0