import logging import os from argparse import ArgumentParser from pathlib import Path from project_manager.manager import ProjectManager def run(): parser = ArgumentParser() parser.add_argument("task", nargs="?", default="show", choices=("show", "setup")) parser.add_argument("-p", "--path", default=os.getcwd()) parser.add_argument("-i", "--ignore-errors", action="store_true") parser.add_argument("-v", "--verbose", action="count", default=1) parser.add_argument("-q", "--quiet", action="store_true") args = parser.parse_args() logging_level = logging.WARNING if args.verbose > 1: logging_level = logging.DEBUG elif args.verbose > 0: logging_level = logging.INFO if args.quiet: logging_level = logging.CRITICAL logging.basicConfig(level=logging_level) basepath = Path(args.path) manager = ProjectManager(basepath, args.ignore_errors) if args.task == "show": manager.show() elif args.task == "setup": manager.setup() if __name__ == "__main__": run()