fix(ci): 修复发布正文提取的多行 sed 写法导致的 workflow 解析失败
sed 的 \n 转义在生成文件时被展开为真实换行,把 notes 提取命令劈成 两行,GitHub 判定 workflow 文件无效(startup_failure)。改用单行 awk 剥签名块与空行,语义不变。
This commit is contained in:
@@ -180,10 +180,8 @@ jobs:
|
||||
VER: ${{ needs.meta.outputs.version }}
|
||||
run: |
|
||||
set -euo pipefail
|
||||
# 发布正文优先取附注 tag 的 message(剥掉签名块),无附注时回退自动生成
|
||||
notes="$(git tag -l --format='%(contents)' "$VER" | sed '/^-----BEGIN PGP SIGNATURE----$/,/^-----END PGP SIGNATURE----$/d' || true)"
|
||||
notes="$(echo "$notes" | sed -e '/^[[:space:]]*$/d' | sed -e ':a;N;$!ba;s/
|
||||
$//')"
|
||||
# 发布正文优先取附注 tag 的 message(awk 剥掉签名块与空行)
|
||||
notes="$(git for-each-ref "refs/tags/$VER" --format='%(contents)' | awk '/^-----BEGIN PGP SIGNATURE----$/{sig=1} !sig' | awk 'NF')"
|
||||
if gh release view "$VER" -R "$GITHUB_REPOSITORY" >/dev/null 2>&1; then
|
||||
echo "Release ${VER} 已存在,覆盖上传资产"
|
||||
if [ -n "$notes" ]; then
|
||||
|
||||
Reference in New Issue
Block a user