mirror of
https://github.com/LiteyukiStudio/LiteyukiBot.git
synced 2024-11-23 09:07:42 +08:00
📦 docs: 资源商店新增发布资源功能
This commit is contained in:
parent
53a603d4ee
commit
0ed3b307d9
@ -45,16 +45,16 @@ def pre_check(github: Github, issue: Issue, repo: Repository) -> err:
|
|||||||
link = parser.front_matters.get("link")
|
link = parser.front_matters.get("link")
|
||||||
homepage = parser.front_matters.get("homepage") # optional
|
homepage = parser.front_matters.get("homepage") # optional
|
||||||
author = parser.front_matters.get("author")
|
author = parser.front_matters.get("author")
|
||||||
cid = parser.front_matters.get("cid") # optional auto
|
cid = int(parser.front_matters.get("cid")) # optional auto
|
||||||
if not all((name, desc, link, author)):
|
if not all((name, desc, link, author)):
|
||||||
issue.create_comment("name, desc, link, homepage 及 author 为必填字段.")
|
issue.get_comment(cid).edit("name, desc, link, homepage 及 author 为必填字段.")
|
||||||
return ValueError("name, desc, link, homepage 及 author 为必填字段.")
|
return ValueError("name, desc, link, homepage 及 author 为必填字段.")
|
||||||
|
|
||||||
# 下载并解析资源包
|
# 下载并解析资源包
|
||||||
r = requests.get(link, headers=headers)
|
r = requests.get(link, headers=headers)
|
||||||
print(r.text)
|
print(r.text)
|
||||||
if r.status_code != 200:
|
if r.status_code != 200:
|
||||||
issue.create_comment("下载失败.")
|
issue.get_comment(cid).edit("下载失败.")
|
||||||
return ValueError("下载失败.")
|
return ValueError("下载失败.")
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@ -66,12 +66,12 @@ def pre_check(github: Github, issue: Issue, repo: Repository) -> err:
|
|||||||
# 检测包内metadata.yml文件
|
# 检测包内metadata.yml文件
|
||||||
data = yaml.load(open(f"tmp/{name}/metadata.yml"), Loader=yaml.SafeLoader)
|
data = yaml.load(open(f"tmp/{name}/metadata.yml"), Loader=yaml.SafeLoader)
|
||||||
except Exception:
|
except Exception:
|
||||||
issue.create_comment("解析资源包失败,可能是格式问题或metadata.yml不存在.")
|
issue.get_comment(cid).edit("解析资源包失败,可能是格式问题或metadata.yml不存在.")
|
||||||
return ValueError("解析资源包失败,可能是格式问题或metadata.yml不存在.")
|
return ValueError("解析资源包失败,可能是格式问题或metadata.yml不存在.")
|
||||||
|
|
||||||
# 检测必要字段 name,description,version
|
# 检测必要字段 name,description,version
|
||||||
if not all((data.get("name"), data.get("description"), data.get("version"))):
|
if not all((data.get("name"), data.get("description"), data.get("version"))):
|
||||||
issue.create_comment("元数据中缺少必要字段 name, description 或 version.")
|
issue.get_comment(cid).edit("元数据中缺少必要字段 name, description 或 version.")
|
||||||
return ValueError("元数据中缺少必要字段 name, description 或 version.")
|
return ValueError("元数据中缺少必要字段 name, description 或 version.")
|
||||||
|
|
||||||
# 不检测重复资源包,因为资源包可能有多个版本
|
# 不检测重复资源包,因为资源包可能有多个版本
|
||||||
@ -96,7 +96,7 @@ def pre_check(github: Github, issue: Issue, repo: Repository) -> err:
|
|||||||
|
|
||||||
issue.edit(body=new_issue_body)
|
issue.edit(body=new_issue_body)
|
||||||
issue.add_to_labels("pre-checked")
|
issue.add_to_labels("pre-checked")
|
||||||
issue.create_comment("✅ 预检查通过\n## 元数据\n" + metadata_markdown)
|
issue.get_comment(cid).edit("✅ 预检查通过\n## 元数据\n" + metadata_markdown)
|
||||||
return nil
|
return nil
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user