39 lines
1.0 KiB
Python
39 lines
1.0 KiB
Python
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()
|