fix(ci): 修復 Runner _diag/pages 檔案衝突 (徹底解決)
根本原因: - 41 個殭屍 Runner 進程互相衝突 - _diag/pages 目錄沒有自動清理 解決方案: - 所有 Workflow Job 第一步清理 _diag/pages - 覆蓋所有 self-hosted runner jobs 影響範圍: - runner-healthcheck.yml (2 jobs) - daily-e2e-health.yaml (1 job) - nightly-llm.yaml (1 job) - ci.yaml (9 jobs) - cd.yaml (已有) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
19
.github/workflows/runner-healthcheck.yml
vendored
19
.github/workflows/runner-healthcheck.yml
vendored
@@ -36,6 +36,17 @@ jobs:
|
||||
timeout-minutes: 5
|
||||
|
||||
steps:
|
||||
# =================================================================
|
||||
# 2026-03-29 Claude Code: 修復 _diag/pages 檔案衝突
|
||||
# 根本原因: GitHub Actions Runner 診斷檔案沒有自動清理
|
||||
# =================================================================
|
||||
- name: "Clean Runner Diagnostics"
|
||||
run: |
|
||||
RUNNER_ROOT=$(dirname "$(dirname "$RUNNER_TEMP")")
|
||||
rm -rf "$RUNNER_ROOT/_diag/pages" 2>/dev/null || true
|
||||
mkdir -p "$RUNNER_ROOT/_diag/pages" 2>/dev/null || true
|
||||
echo "✅ Cleaned _diag/pages"
|
||||
|
||||
- name: "Check Docker Service"
|
||||
id: docker
|
||||
run: |
|
||||
@@ -83,7 +94,7 @@ jobs:
|
||||
id: k8s
|
||||
run: |
|
||||
if timeout 10 ssh -o StrictHostKeyChecking=no -o ConnectTimeout=5 \
|
||||
wooo@192.168.0.120 "kubectl get nodes" 2>/dev/null; then
|
||||
wooo@192.168.0.125 "kubectl get nodes" 2>/dev/null; then
|
||||
echo "k8s_status=healthy" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "k8s_status=unhealthy" >> $GITHUB_OUTPUT
|
||||
@@ -131,6 +142,12 @@ jobs:
|
||||
runs-on: [self-hosted, harbor, k8s]
|
||||
|
||||
steps:
|
||||
- name: "Clean Runner Diagnostics"
|
||||
run: |
|
||||
RUNNER_ROOT=$(dirname "$(dirname "$RUNNER_TEMP")")
|
||||
rm -rf "$RUNNER_ROOT/_diag/pages" 2>/dev/null || true
|
||||
mkdir -p "$RUNNER_ROOT/_diag/pages" 2>/dev/null || true
|
||||
|
||||
- name: "Attempt Docker Cleanup"
|
||||
run: |
|
||||
echo "=== 嘗試清理 Docker ==="
|
||||
|
||||
Reference in New Issue
Block a user