mirror of
https://gitcode.com/JianFeeeee/webui4frpc.git
synced 2026-09-19 16:38:31 +00:00
chore: upload_assets.py 默认包含原生安装包
默认文件筛选原来只匹配 tar.gz/zip/SHA256SUMS,deb/rpm/pkg/setup.exe 必须逐个显式传参才会上传(v0.1.0 与 v0.1.1 都是分两趟传的)。 改为按发布产物后缀白名单筛选;用 -setup.exe 而非裸 .exe,避免误收 bin/ 下的裸二进制。
This commit is contained in:
@ -2,7 +2,8 @@
|
||||
"""上传 release 资产到 gitcode(两步:取签名 URL → PUT 到 OBS)。
|
||||
|
||||
用法: upload_assets.py <version> <token> [file...]
|
||||
不传 file 时上传该版本目录下所有 tar.gz/zip 与 SHA256SUMS。
|
||||
不传 file 时上传该版本目录下全部发布产物:
|
||||
tar.gz / zip / deb / rpm / pkg / -setup.exe / SHA256SUMS
|
||||
"""
|
||||
import json
|
||||
import os
|
||||
@ -38,6 +39,19 @@ def put_file(url: str, headers: dict, path: str) -> tuple[int, str]:
|
||||
return e.code, e.read().decode("utf-8", "replace")[:300]
|
||||
|
||||
|
||||
# 发布产物后缀:免安装包 + 原生安装包。
|
||||
# 注意 -setup.exe 而不是裸 .exe,避开 bin/ 里的裸二进制。
|
||||
ARTIFACT_SUFFIXES = (
|
||||
".tar.gz", ".zip", # 免安装
|
||||
".deb", ".rpm", ".pkg", # linux / macOS 安装包
|
||||
"-setup.exe", # windows 安装器
|
||||
)
|
||||
|
||||
|
||||
def is_artifact(name: str) -> bool:
|
||||
return name == "SHA256SUMS" or name.endswith(ARTIFACT_SUFFIXES)
|
||||
|
||||
|
||||
def main() -> int:
|
||||
if len(sys.argv) < 3:
|
||||
print(__doc__)
|
||||
@ -47,10 +61,7 @@ def main() -> int:
|
||||
os.path.dirname(os.path.dirname(os.path.abspath(__file__))),
|
||||
"dist", "artifacts", version,
|
||||
)
|
||||
files = sys.argv[3:] or sorted(
|
||||
f for f in os.listdir(outdir)
|
||||
if f.endswith((".tar.gz", ".zip")) or f == "SHA256SUMS"
|
||||
)
|
||||
files = sys.argv[3:] or sorted(f for f in os.listdir(outdir) if is_artifact(f))
|
||||
failed = 0
|
||||
for name in files:
|
||||
path = os.path.join(outdir, name)
|
||||
|
||||
Reference in New Issue
Block a user