fix(release): 修复release产物

This commit is contained in:
cnlimiter
2026-03-21 22:59:58 +08:00
committed by Mison
parent 229e18d253
commit b39c4a01e2

View File

@@ -74,19 +74,19 @@ jobs:
- name: 整理文件并打包 zip - name: 整理文件并打包 zip
run: | run: |
mkdir -p release mkdir -p release
# 为每个平台二进制文件打包成 zip # download-artifact@v4 将每个 artifact 放在 dist/<asset_name>/ 子目录下
find dist/ -type f | while read f; do # 遍历子目录,用目录名作为平台标识(即 matrix.asset_name
name=$(basename "$f") for artifact_dir in dist/*/; do
# 根据文件名确定平台标识 platform=$(basename "$artifact_dir")
case "$name" in # 找到该目录下的二进制文件(只有一个)
*windows*) platform=$(echo "$name" | sed 's/\.[^.]*$//') ;; binary=$(find "$artifact_dir" -maxdepth 1 -type f | head -n1)
*linux*) platform="$name" ;; if [ -z "$binary" ]; then
*macos*) platform="$name" ;; echo "警告:$artifact_dir 下没有找到文件,跳过"
*) platform="$name" ;; continue
esac fi
tmpdir="tmp_${platform}" tmpdir="tmp_${platform}"
mkdir -p "$tmpdir" mkdir -p "$tmpdir"
cp "$f" "$tmpdir/" cp "$binary" "$tmpdir/"
cp README.md "$tmpdir/README.md" cp README.md "$tmpdir/README.md"
cp .env.example "$tmpdir/.env.example" cp .env.example "$tmpdir/.env.example"
[ -f LICENSE ] && cp LICENSE "$tmpdir/LICENSE" || true [ -f LICENSE ] && cp LICENSE "$tmpdir/LICENSE" || true