Skip to content

fix(ci): 校验器的输出改走 stderr,修复 macOS 打包检查 - #2

Closed
xiaoyumuxi wants to merge 1 commit into
mainfrom
fix/ci-verifier-stdout
Closed

xiaoyumuxi wants to merge 1 commit into
mainfrom
fix/ci-verifier-stdout

Conversation

@xiaoyumuxi

Copy link
Copy Markdown
Contributor

这个 PR 做了什么

修复 main 上 “Build and verify the macOS packages” 的失败(run 41947015142)。

原因

  • CI 用 package=$(scripts/build-package.sh --arch "$arch" --host-tools "$HOST_TOOLS") 取包目录。
  • build-package.sh 会调用 verify-package.sh。带 --host-tools 时,后者再调用 LitheOfficialPluginVerifier;如果包已签名,还会调用 LithePluginPackageSigner --verify。
  • 校验器把结果 Verified dev.lithe.plugin.java-support as a declarative package 打印到 stdout,这一行混进了 $package。
  • archive-package.sh 收到的不是一个目录,于是报 --package must name a dev.lithe.plugin.java-support package directory,退出码 2。arm64 包本身已经构建并校验通过,失败只发生在归档这一步。

改动

  • scripts/verify-package.sh:两个宿主校验器的输出重定向到 stderr。脚本头部的注释写明它的输出全部走 stderr,调用方捕获 stdout 时拿不到任何内容。
  • 改在 verify-package.sh 而不是 build-package.sh,是因为 archive-package.sh 也会调用它,并且 stdout 只应输出 <sha256> dist/<asset>。改在这里,两个调用方都不会再被污染。

验证

  • 本地用已构建的宿主工具(Lithe 提交 1daaeb525):
    • 单独运行 LitheOfficialPluginVerifier:确认它会往 stdout 打印上面那一行。
    • 对 .artifacts/package/arm64/dev.lithe.plugin.java-support 运行修改后的 scripts/verify-package.sh --host-tools ...:退出码 0,stdout 为 0 字节。
  • zsh -n scripts/verify-package.sh 和 git diff --check 都通过。
  • 完整的两架构构建和归档以本 PR 的 CI 为准。

CI 用 $(scripts/build-package.sh ...) 取包路径。verify-package.sh 调用 LitheOfficialPluginVerifier 和 LithePluginPackageSigner --verify 时,它们的结果打印到了 stdout,混进了取到的路径,archive-package.sh 因此报 --package must name a dev.lithe.plugin.java-support package directory。
@xiaoyumuxi
xiaoyumuxi marked this pull request as ready for review November 5, 2026 05:39
@xiaoyumuxi

Copy link
Copy Markdown
Contributor Author

被 #3 取代:#3 改为普通插件身份后,scripts/verify-package.sh 已经删掉 --host-tools、LitheOfficialPluginVerifier 和 LithePluginPackageSigner 的调用,本 PR 改的两行在 main 上不存在了。main 的 CI(fdec0bb)里 "Build and verify the macOS packages" 已通过。分支保留,需要时可以重开。

@xiaoyumuxi xiaoyumuxi closed this Nov 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant