fix(ci): deploy-staging 全栈 push 被错误 skip——success() 改 !cancelled()
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (push) Successful in 1s
CI/CD Pipeline / Check push changed paths (push) Failing after 2s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 3m19s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 3m52s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 4m33s
AI Code Review / AI Code Review (pull_request) Failing after 6m33s
CI/CD Pipeline / Validate - Style (push) Successful in 6m41s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 6m50s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (push) Failing after 2m57s
CI/CD Pipeline / Validate - Python (mypy + alembic) (push) Successful in 7m52s
CI/CD Pipeline / Frontend Unit Tests (push) Successful in 5m53s
CI/CD Pipeline / Validate - Security (push) Successful in 19m48s
CI/CD Pipeline / Integration Tests (push) Successful in 19m2s
CI/CD Pipeline / Unit Tests (push) Successful in 27m48s
CI/CD Pipeline / Production Browser E2E (push) Failing after 379h26m40s
CI/CD Pipeline / Deploy Production (push) Failing after 379h26m42s
CI/CD Pipeline / CI Gate (push) Failing after 379h26m43s
CI/CD Pipeline / Build Production Web Image (push) Failing after 379h26m45s
CI/CD Pipeline / Build Production API Image (push) Failing after 379h26m46s
CI/CD Pipeline / ACR Image Cleanup (push) Failing after 379h46m45s
CI/CD Pipeline / Staging API Integration Tests (push) Failing after 379h46m45s
CI/CD Pipeline / Staging E2E Tests (push) Failing after 379h46m46s
CI/CD Pipeline / Retag skipped Staging Worker Image (push) Failing after 379h49m54s
CI/CD Pipeline / Retag skipped Staging Web Image (push) Failing after 379h49m56s
CI/CD Pipeline / Retag skipped Staging API Image (push) Failing after 379h49m58s
CI/CD Pipeline / Build Staging Worker Image (push) Failing after 379h50m32s
CI/CD Pipeline / Build Staging API Image (push) Failing after 379h50m34s
CI/CD Pipeline / PR Build Worker Image (push) Failing after 379h50m48s
CI/CD Pipeline / Frontend Lint (push) Failing after 379h51m24s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 379h54m40s
CI/CD Pipeline / PR Build API Image (push) Failing after 379h50m52s
CI/CD Pipeline / Check if frontend-only change (push) Failing after 379h54m42s
CI/CD Pipeline / Canary Release to Production (push) Failing after 380h0m54s
CI/CD Pipeline / Build Production Worker Image (push) Failing after 380h0m57s
CI/CD Pipeline / Build Staging Web Image (push) Failing after 380h24m46s
CI/CD Pipeline / PR Build Web Image (push) Failing after 380h25m2s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 380h33m32s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 380h50m12s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 380h51m39s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 2m34s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 2m30s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 3m45s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 6m53s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 4m27s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 19m0s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 5m31s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 380h51m29s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 379h59m24s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 380h16m1s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 380h16m13s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 380h16m15s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 380h16m17s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 380h17m14s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 380h17m18s
CI/CD Pipeline / CI Gate (pull_request) Successful in 2s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 379h59m20s
CI/CD Pipeline / Production Browser E2E (pull_request) Failing after 379h59m18s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 379h59m22s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 379h59m24s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 380h24m53s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 380h15m55s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 380h15m57s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 380h17m24s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 380h17m28s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (push) Successful in 1s
CI/CD Pipeline / Check push changed paths (push) Failing after 2s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 3m19s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 3m52s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 4m33s
AI Code Review / AI Code Review (pull_request) Failing after 6m33s
CI/CD Pipeline / Validate - Style (push) Successful in 6m41s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 6m50s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (push) Failing after 2m57s
CI/CD Pipeline / Validate - Python (mypy + alembic) (push) Successful in 7m52s
CI/CD Pipeline / Frontend Unit Tests (push) Successful in 5m53s
CI/CD Pipeline / Validate - Security (push) Successful in 19m48s
CI/CD Pipeline / Integration Tests (push) Successful in 19m2s
CI/CD Pipeline / Unit Tests (push) Successful in 27m48s
CI/CD Pipeline / Production Browser E2E (push) Failing after 379h26m40s
CI/CD Pipeline / Deploy Production (push) Failing after 379h26m42s
CI/CD Pipeline / CI Gate (push) Failing after 379h26m43s
CI/CD Pipeline / Build Production Web Image (push) Failing after 379h26m45s
CI/CD Pipeline / Build Production API Image (push) Failing after 379h26m46s
CI/CD Pipeline / ACR Image Cleanup (push) Failing after 379h46m45s
CI/CD Pipeline / Staging API Integration Tests (push) Failing after 379h46m45s
CI/CD Pipeline / Staging E2E Tests (push) Failing after 379h46m46s
CI/CD Pipeline / Retag skipped Staging Worker Image (push) Failing after 379h49m54s
CI/CD Pipeline / Retag skipped Staging Web Image (push) Failing after 379h49m56s
CI/CD Pipeline / Retag skipped Staging API Image (push) Failing after 379h49m58s
CI/CD Pipeline / Build Staging Worker Image (push) Failing after 379h50m32s
CI/CD Pipeline / Build Staging API Image (push) Failing after 379h50m34s
CI/CD Pipeline / PR Build Worker Image (push) Failing after 379h50m48s
CI/CD Pipeline / Frontend Lint (push) Failing after 379h51m24s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 379h54m40s
CI/CD Pipeline / PR Build API Image (push) Failing after 379h50m52s
CI/CD Pipeline / Check if frontend-only change (push) Failing after 379h54m42s
CI/CD Pipeline / Canary Release to Production (push) Failing after 380h0m54s
CI/CD Pipeline / Build Production Worker Image (push) Failing after 380h0m57s
CI/CD Pipeline / Build Staging Web Image (push) Failing after 380h24m46s
CI/CD Pipeline / PR Build Web Image (push) Failing after 380h25m2s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 380h33m32s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 380h50m12s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 380h51m39s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 2m34s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 2m30s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 3m45s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 6m53s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 4m27s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 19m0s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 5m31s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 380h51m29s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 379h59m24s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 380h16m1s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 380h16m13s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 380h16m15s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 380h16m17s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 380h17m14s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 380h17m18s
CI/CD Pipeline / CI Gate (pull_request) Successful in 2s
CI/CD Pipeline / Canary Release to Production (pull_request) Failing after 379h59m20s
CI/CD Pipeline / Production Browser E2E (pull_request) Failing after 379h59m18s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 379h59m22s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 379h59m24s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 380h24m53s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 380h15m55s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 380h15m57s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 380h17m24s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 380h17m28s
问题:retag-staging-skipped 在全栈 push 时所有矩阵项都被 skipped(因为都有对应 build), success() 认为 skipped 不满足条件,导致 deploy-staging 被跳过。 修复:success() → !cancelled(),允许 skipped 依赖不阻塞 deploy。 删除两行误导性注释(声称 success() 不阻塞 skipped,实际恰恰相反)。 安全兜底:build-staging 真正失败时 workflow 会 cancel,!cancelled() 仍会阻止 deploy。
This commit was merged in pull request #1581.
This commit is contained in:
@@ -1145,9 +1145,7 @@ jobs:
|
||||
- check-push-paths
|
||||
- build-staging
|
||||
- retag-staging-skipped
|
||||
# 显式 success() 状态检查:上游 build/retag 被路径过滤 if 跳过(skipped)时不阻塞本 job;
|
||||
# 上游真正失败时仍然阻断(act_runner 对无状态函数的 if 隐式包 success(),纯 skipped 也会连带跳过)
|
||||
if: success() && github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'develop')
|
||||
if: (!cancelled()) && github.event_name == 'push' && (github.ref_name == 'main' || github.ref_name == 'develop')
|
||||
steps:
|
||||
- name: Checkout code
|
||||
shell: sh
|
||||
|
||||
Reference in New Issue
Block a user