Skip to content

Commit

Permalink
fix: global plugin config read
Browse files Browse the repository at this point in the history
  • Loading branch information
zhayujie committed Jul 20, 2023
1 parent 954e55f commit 4bab429
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 29 deletions.
18 changes: 10 additions & 8 deletions plugins/banwords/banwords.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,16 @@ def __init__(self):
try:
curdir = os.path.dirname(__file__)
config_path = os.path.join(curdir, "config.json")
conf = None
if not os.path.exists(config_path):
conf = {"action": "ignore"}
with open(config_path, "w") as f:
json.dump(conf, f, indent=4)
else:
with open(config_path, "r") as f:
conf = super().load_config() or json.load(f)
# loading config from global plugin config
conf = super().load_config()
if not conf:
if not os.path.exists(config_path):
conf = {"action": "ignore"}
with open(config_path, "w") as f:
json.dump(conf, f, indent=4)
else:
with open(config_path, "r") as f:
conf = super().load_config() or json.load(f)
self.searchr = WordsSearch()
self.action = conf["action"]
banwords_path = os.path.join(curdir, "banwords.txt")
Expand Down
13 changes: 7 additions & 6 deletions plugins/bdunit/bdunit.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,12 +31,13 @@ def __init__(self):
try:
curdir = os.path.dirname(__file__)
config_path = os.path.join(curdir, "config.json")
conf = None
if not os.path.exists(config_path):
raise Exception("config.json not found")
else:
with open(config_path, "r") as f:
conf = super().load_config() or json.load(f)
conf = super().load_config()
if not conf:
if not os.path.exists(config_path):
raise Exception("config.json not found")
else:
with open(config_path, "r") as f:
conf = json.load(f)
self.service_id = conf["service_id"]
self.api_key = conf["api_key"]
self.secret_key = conf["secret_key"]
Expand Down
18 changes: 10 additions & 8 deletions plugins/godcmd/godcmd.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,14 +180,16 @@ def __init__(self):

curdir = os.path.dirname(__file__)
config_path = os.path.join(curdir, "config.json")
gconf = None
if not os.path.exists(config_path):
gconf = {"password": "", "admin_users": []}
with open(config_path, "w") as f:
json.dump(gconf, f, indent=4)
else:
with open(config_path, "r") as f:
gconf = super().load_config() or json.load(f)
# loading config from global plugin config
gconf = super().load_config()
if not gconf:
if not os.path.exists(config_path):
gconf = {"password": "", "admin_users": []}
with open(config_path, "w") as f:
json.dump(gconf, f, indent=4)
else:
with open(config_path, "r") as f:
gconf = json.load(f)
if gconf["password"] == "":
self.temp_password = "".join(random.sample(string.digits, 4))
logger.info("[Godcmd] 因未设置口令,本次的临时口令为%s。" % self.temp_password)
Expand Down
5 changes: 4 additions & 1 deletion plugins/plugin.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import os
from config import pconf
from common.log import logger

class Plugin:
def __init__(self):
Expand All @@ -10,7 +11,9 @@ def load_config(self) -> dict:
加载当前插件配置
:return: 插件配置字典
"""
return pconf(self.name)
conf = pconf(self.name)
logger.info(f"loading from global plugin config, plugin_name={self.name}, conf={conf}")
return conf

def get_help_text(self, **kwargs):
return "暂无帮助信息"
13 changes: 7 additions & 6 deletions plugins/tool/tool.py
Original file line number Diff line number Diff line change
Expand Up @@ -121,12 +121,13 @@ def on_handle_context(self, e_context: EventContext):
def _read_json(self) -> dict:
curdir = os.path.dirname(__file__)
config_path = os.path.join(curdir, "config.json")
tool_config = {"tools": [], "kwargs": {}}
if not os.path.exists(config_path):
return tool_config
else:
with open(config_path, "r") as f:
tool_config = super().load_config() or json.load(f)
tool_config = super().load_config()
if not tool_config:
if not os.path.exists(config_path):
return {"tools": [], "kwargs": {}}
else:
with open(config_path, "r") as f:
tool_config = json.load(f)
return tool_config

def _build_tool_kwargs(self, kwargs: dict):
Expand Down

0 comments on commit 4bab429

Please sign in to comment.