feat: update logging

This commit is contained in:
2023-03-14 23:59:58 +03:00
parent ccdbb00eff
commit 9345b27aef
9 changed files with 180 additions and 31 deletions
+24 -10
View File
@@ -1,37 +1,51 @@
import logging
import os
from argparse import ArgumentParser
from ast import arg
from pathlib import Path
from project_manager.logging import CustomFormatter
from project_manager.manager import ProjectManager
def run():
parser = ArgumentParser()
parser.add_argument("task", nargs="?", default="show", choices=("show", "setup"))
parser.add_argument(
"task",
nargs="?",
default="show",
choices=("show", "setup", "lint", "format", "test"),
)
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:
if args.verbose > 2:
logging_level = logging.TRACE
elif 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)
if logging_level <= logging.INFO:
logging.getLogger(">").setLevel(logging.CRITICAL)
stdout_handler = logging.StreamHandler()
stdout_handler.setFormatter(CustomFormatter("%(message)s"))
logging.basicConfig(
level=logging_level,
format="%(message)s",
handlers=[stdout_handler],
)
basepath = Path(args.path)
manager = ProjectManager(basepath, args.ignore_errors)
if args.task == "show":
manager.show()
elif args.task == "setup":
manager.setup()
manager = ProjectManager(basepath)
manager.run_command(args.task)
if __name__ == "__main__":