diff --git a/.github/workflows/cd.yaml b/.github/workflows/cd.yaml index e349a1dc..2c71d363 100644 --- a/.github/workflows/cd.yaml +++ b/.github/workflows/cd.yaml @@ -55,6 +55,12 @@ jobs: runs-on: [self-hosted, harbor, k8s] timeout-minutes: 1 steps: + # 2026-03-26: 清理暫存目錄,避免 set_output file conflict + - name: "Clean Runner temp" + run: | + rm -rf "$RUNNER_TEMP"/* 2>/dev/null || true + rm -rf .claude/worktrees 2>/dev/null || true + - name: "Check Required Secrets" run: | MISSING="" @@ -103,8 +109,9 @@ jobs: api: ${{ inputs.force_deploy == true && 'true' || steps.filter.outputs.api }} web: ${{ inputs.force_deploy == true && 'true' || steps.filter.outputs.web }} steps: - - name: Clean worktrees - run: rm -rf .claude/worktrees 2>/dev/null || true + # 2026-03-26: 清理暫存目錄 + - name: "Clean Runner temp" + run: rm -rf "$RUNNER_TEMP"/* .claude/worktrees 2>/dev/null || true - uses: actions/checkout@v4 with: @@ -138,6 +145,10 @@ jobs: outputs: image_tag: ${{ steps.tag.outputs.tag }} steps: + # 2026-03-26: 清理暫存目錄 + - name: "Clean Runner temp" + run: rm -rf "$RUNNER_TEMP"/* .claude/worktrees 2>/dev/null || true + - uses: actions/checkout@v4 - name: Generate tag @@ -170,6 +181,10 @@ jobs: outputs: image_tag: ${{ steps.tag.outputs.tag }} steps: + # 2026-03-26: 清理暫存目錄 + - name: "Clean Runner temp" + run: rm -rf "$RUNNER_TEMP"/* .claude/worktrees 2>/dev/null || true + - uses: actions/checkout@v4 - name: Generate tag @@ -209,8 +224,9 @@ jobs: if: always() && (needs.build-api.result == 'success' || needs.build-api.result == 'skipped') && (needs.build-web.result == 'success' || needs.build-web.result == 'skipped') environment: production steps: - - name: Clean worktrees - run: rm -rf .claude/worktrees 2>/dev/null || true + # 2026-03-26: 清理暫存目錄 + - name: "Clean Runner temp" + run: rm -rf "$RUNNER_TEMP"/* .claude/worktrees 2>/dev/null || true - uses: actions/checkout@v4 with: