ci(nightly): archive receipts without upload-artifact@v4
Gitea act_runner rejects artifact v4; host runner now has curl/node via brew+host net. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+2
-1
@@ -7,12 +7,13 @@
|
||||
|
||||
1. **Phase 3 done**:N7 重试策略 + Playwright gated + 遗留 handoff 已合入
|
||||
2. **Wave 1 done**:PU5A race + PU3 IAM fail-closed 已合入 `dev`
|
||||
3. **运维**:Gitea nightly secrets/vars + `nightly:host` 已配;获批后再开 PU6–PU8/Playwright 实现
|
||||
3. **运维**:Gitea nightly `nightly:host` + host network + brew PATH 已配;workflow artifact 改为 tar(待合入)
|
||||
|
||||
## 并行认领
|
||||
|
||||
| owner | task | branch | worktree | mutex | status |
|
||||
|-------|------|--------|----------|-------|--------|
|
||||
| Cursor | 2026-09-16-gitea-nightly-host-tools | fix/gitea-nightly-host-tools | - | ci | in_progress |
|
||||
| Cursor | 2026-09-16-wave-leftovers | fix/wave-leftovers-n7-playwright-dod | - | ci | done |
|
||||
| Cursor | 2026-09-16-wave3-pu6-pu8-go-no-go | feature/wave3-pu6-pu8-go-no-go | - | architecture-docs | done |
|
||||
| Cursor | 2026-09-16-wave2c-same-image-digest | feature/wave2c-same-image-digest | - | infra | done |
|
||||
|
||||
@@ -20,14 +20,19 @@ blocker: false
|
||||
- `PI_AGENT_RUNNER_URL=http://127.0.0.1:18865`
|
||||
- `PI_AGENT_MODEL` ← `.env.dev` MINIMAX_MODEL_ID
|
||||
|
||||
## Runner
|
||||
## Runner(本机 `/home/weichen/gitea`)
|
||||
|
||||
- `/home/weichen/gitea/docker-compose.yml` 增加 label `nightly:host`
|
||||
- 已写入 `/home/weichen/gitea/runner/data/.runner` 的 `labels`(仅改 compose 不够,注册文件会覆盖)
|
||||
- runner 已 declare:`[ubuntu-latest docker nightly]`
|
||||
- workflow `nightly-real-pi.yml` → `runs-on: nightly`(host 网络,可访问本机 PI/PG)
|
||||
- 已 `workflow_dispatch` 触发 run(见 Gitea Actions)
|
||||
- label:`nightly:host`(写入 `runner/data/.runner`,勿只改 compose)
|
||||
- `network_mode: host` + `address=http://127.0.0.1:3000`(PI 只绑 `127.0.0.1:18865`,bridge 不可达)
|
||||
- 挂载 brew + 宿主机 glibc,供 host job 使用 `node` / `go` / `curl`
|
||||
- workflow:`runs-on: nightly`;artifact 用本地 tar(Gitea 不支持 upload-artifact@v4)
|
||||
|
||||
## 验证
|
||||
|
||||
- run#15:缺 node → FAIL
|
||||
- run#17:checkout/setup-go PASS;curl 缺失 → `infra_fail`;upload-artifact@v4 → GHESNotSupported
|
||||
- 修复后应重新 `workflow_dispatch`
|
||||
|
||||
## 触发
|
||||
|
||||
Gitea Actions → Nightly Real PI → Run workflow;或等 schedule UTC 16:00。
|
||||
Gitea Actions → Nightly Real PI → Run workflow;或 schedule UTC 16:00。
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
---
|
||||
title: "Gitea nightly host tools / network"
|
||||
created: 2026-09-16
|
||||
owner: Cursor
|
||||
branch: fix/gitea-nightly-host-tools
|
||||
mutex: ci
|
||||
status: in_progress
|
||||
---
|
||||
|
||||
# Gitea nightly host tools / network
|
||||
|
||||
## Goal
|
||||
|
||||
Make local Gitea `nightly:host` jobs able to run `actions/*` (node), health-check PI (`curl` → `127.0.0.1:18865`), and archive receipts without `upload-artifact@v4`.
|
||||
|
||||
## Done when
|
||||
|
||||
- [x] Runner host network + brew PATH (node/go/curl) + glibc mounts
|
||||
- [x] Workflow: replace upload-artifact@v4 with tar archive
|
||||
- [ ] Nightly dispatch past infra curl; receipt not infra_fail due to missing tools
|
||||
@@ -49,16 +49,24 @@ jobs:
|
||||
# Always upload receipts/evidence; never treat missing secret as PASS.
|
||||
exit "${rc}"
|
||||
|
||||
- name: Upload promotion receipt artifacts
|
||||
# Gitea act_runner rejects upload-artifact@v4 (GHESNotSupportedError).
|
||||
# Keep a portable tarball in the job log workspace for local runner hosts.
|
||||
- name: Archive promotion receipt artifacts
|
||||
if: always()
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: promotion-receipt-${{ github.sha }}
|
||||
path: |
|
||||
.doc/test-reports/assets/promotion-receipts/${{ github.sha }}.json
|
||||
.doc/test-reports/assets/promotion-receipts/evidence-*
|
||||
if-no-files-found: warn
|
||||
retention-days: 14
|
||||
run: |
|
||||
set -euo pipefail
|
||||
out="promotion-receipt-${GITHUB_SHA}.tar.gz"
|
||||
mkdir -p .doc/test-reports/assets/promotion-receipts
|
||||
if compgen -G ".doc/test-reports/assets/promotion-receipts/${GITHUB_SHA}.json" >/dev/null \
|
||||
|| compgen -G ".doc/test-reports/assets/promotion-receipts/evidence-*" >/dev/null; then
|
||||
tar -czf "${out}" \
|
||||
.doc/test-reports/assets/promotion-receipts/"${GITHUB_SHA}".json \
|
||||
.doc/test-reports/assets/promotion-receipts/evidence-* \
|
||||
2>/dev/null || tar -czf "${out}" .doc/test-reports/assets/promotion-receipts
|
||||
ls -la "${out}"
|
||||
else
|
||||
echo "warn: no promotion receipt files to archive"
|
||||
fi
|
||||
|
||||
- name: Summarize receipt verdict
|
||||
if: always()
|
||||
|
||||
Reference in New Issue
Block a user