diff options
author | Kyomotoi <[email protected]> | 2020-11-07 13:54:57 +0800 |
---|---|---|
committer | Kyomotoi <[email protected]> | 2020-11-07 13:54:57 +0800 |
commit | 7cae371b51a14c626ce184987eea2392e15430b9 (patch) | |
tree | a35aa21a64dad59a8dc91270d78f781dbed8953d /check.py | |
parent | 11e4632aaf2be56c776dbc4e9f0ad5065bb60b5f (diff) | |
download | ATRI-7cae371b51a14c626ce184987eea2392e15430b9.tar.gz ATRI-7cae371b51a14c626ce184987eea2392e15430b9.tar.bz2 ATRI-7cae371b51a14c626ce184987eea2392e15430b9.zip |
[Update]
Diffstat (limited to 'check.py')
-rw-r--r-- | check.py | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/check.py b/check.py new file mode 100644 index 0000000..b19311b --- /dev/null +++ b/check.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python3 +# -*- encoding: utf-8 -*- +''' +@File : main.py +@Time : 2020/11/07 09:58:19 +@Author : Kyomotoi +@Contact : [email protected] +@Github : https://github.com/Kyomotoi +@License : Copyright © 2018-2020 Kyomotoi, All Rights Reserved. +''' +__author__ = 'kyomotoi' + +import sys +import time +from pathlib import Path +from nonebot.log import logger +from pydantic import BaseModel +from rich.progress import Progress + +from utils.utils_yml import load_yaml + +CONFIG_PATH = Path('.') / 'config.yml' +config = load_yaml(CONFIG_PATH) + + +class checkATRI(): + '''运行前检查必要条件''' + logger.info('Checking Config...') + + def __init__(self) -> None: + '''检查配置文件是否填写完整''' + len_config = len(config) + len(config['bot']) + len( + config['api']) + len(config['html']) + + with Progress() as progress: + + task = progress.add_task("[cyan]Checking Config...", + total=len_config) + + while not progress.finished: + + # 检查基本配置 + bot = config['bot'] + for key in bot: + if key == 'debug': + if bot['debug'] != False: + logger.warring('DEBUG open.') + progress.update(task, advance=1) + time.sleep(0.2) + else: + if not bot[key]: + logger.warning(f"Can't load [{key}] from config.yml") + sys.exit(0) + + else: + progress.update(task, advance=1) + time.sleep(0.2) + + # 检查接口配置 + api = config['api'] + for key in api: + if not api[key]: + logger.warning(f"Can't load [{key}] from config.yml") + sys.exit(0) + else: + progress.update(task, advance=1) + time.sleep(0.2) + + # 检查网页配置 + html = config['html'] + for key in html: + if not html[key]: + logger.warning(f"Can't load [{key}] from config.yml") + sys.exit(0) + else: + progress.update(task, advance=1) + time.sleep(0.2) |