PagerMaid_Plugins_Pyro/update_list.py

40 lines
1.4 KiB
Python
Raw Normal View History

2022-07-24 10:36:57 +00:00
import json
import os
from httpx import get
main = get("https://api.github.com/repos/TeamPGM/PagerMaid_Plugins_Pyro/commits/v2").json()
2022-07-24 10:47:11 +00:00
plugins = []
for file in main["files"]:
if file["filename"] == "list.json":
print(main['sha'] + " no need")
exit()
if "/main.py" in file["filename"]:
plugins.append(file["filename"].split("/")[0])
2022-07-26 06:11:31 +00:00
delete = bool(main['commit']['message'].startswith("Delete:"))
2022-07-24 10:47:11 +00:00
2022-07-24 10:36:57 +00:00
with open("list.json", "r", encoding="utf8") as f:
list_json = json.load(f)
for plugin in plugins:
exist = False
for plug_dict in list_json["list"]:
if plug_dict["name"] == plugin:
exist = True
old_version = float(plug_dict["version"])
list_json["list"][list_json["list"].index(plug_dict)]["version"] = str(old_version + 0.01)
2022-07-26 06:11:31 +00:00
if delete:
list_json["list"].remove(plug_dict)
2022-07-24 10:36:57 +00:00
break
if not exist:
list_json["list"].append(
{"name": plugin,
"version": "1.0",
"section": "chat",
"maintainer": main['commit']['author']['name'],
"size": f"{os.path.getsize(f'{plugin}{os.sep}main.py') / 1000} kb",
"supported": True,
2022-07-24 11:01:31 +00:00
"des-short": main['commit']['message'],
"des": main['commit']['message']})
2022-07-24 10:36:57 +00:00
with open("list.json", "w", encoding="utf8") as f:
json.dump(list_json, f, ensure_ascii=False, indent=4)
print(main['sha'] + " ok")