第一次真实运行的日志(job 14)钉出来的两件事:
1. 上传产物那一步一直是失败的:
GHESNotSupportedError: @actions/artifact v2.0.0+, upload-artifact@v4+
and download-artifact@v4+ are not currently supported on GHES
v4 里的 @actions/artifact 会拒绝非 github.com 的服务器。Gitea 实现的是 v3 那套
接口(ACTIONS_RUNTIME_URL),所以三个平台都换成 upload-artifact@v3,并加一个
.github/actionlint.yaml 把"v3 太旧"这条 GitHub 规则的误报关掉(原因写在里面)。
产物路径本身没问题:日志里 tauri build 已经产出 deb/AppImage,v4 在报错之前也
认出了那批文件("The least common ancestor is .../release/bundle")。
2. 缓存服务在 job 容器里连不上:
Failed to restore: getCacheEntry failed: connect ETIMEDOUT 172.18.0.2:37315
setup-node 的 cache: pnpm 每次要干等 4 分 39 秒才放弃,cargo 缓存那步也白等 26 秒。
先全部去掉(两个 job 每轮省约 10 分钟),文件头第 3 条写明了等缓存修好怎么加回来。
其余在真机上都是绿的:rustup 兜底、pnpm 12.11.2、Node 24.22.0、tsc、vite、
protocol 15 / cam-core 80 / src-tauri 30 个测试、tauri build(deb + AppImage)全过。
17 lines
883 B
YAML
17 lines
883 B
YAML
# actionlint 配置。
|
||
#
|
||
# 这个仓库的 CI 跑在 Gitea 上,但 actionlint 用的是 GitHub 的规则,所以有一条
|
||
# 政策性的误报要忽略掉:
|
||
#
|
||
# the runner of "actions/upload-artifact@v3" action is too old to run on GitHub Actions
|
||
#
|
||
# 它对 GitHub 是成立的(v3 声明的 node16 运行时 GitHub 已经不再执行),但我们是
|
||
# Gitea:Gitea 的 runner 用自己的 node 跑 JS action,v3 能正常把产物传上去;反过来
|
||
# v4 在 Gitea 上**根本跑不了** —— v4 里的 @actions/artifact 会拒绝非 github.com
|
||
# 的服务器(GHESNotSupportedError,原文见 .github/workflows/build-client.yml 文件头
|
||
# 第 3 条,那是 2026-10-15 第一次真实运行的日志里抄下来的)。
|
||
paths:
|
||
.github/workflows/*.yml:
|
||
ignore:
|
||
- 'the runner of "actions/upload-artifact@v3" action is too old to run on GitHub Actions'
|