fix(ci): auto-fix lint/format issues
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 32s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 30s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 44s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 41s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 1m33s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 44s
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 49s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 1m4s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 53s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 56s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 7m5s
AI Code Review / AI Code Review (pull_request) Successful in 8m35s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 2m52s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m25s
CI/CD Pipeline / Production Browser E2E (pull_request) Failing after 1339h19m40s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 1339h23m13s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 1339h23m15s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 1339h23m15s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 1339h23m17s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 1339h38m25s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 1339h38m38s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 1339h38m42s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 1339h38m44s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 1340h3m28s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 1340h3m32s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 1340h35m46s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 1340h10m56s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 32s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 30s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 44s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 41s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 1m33s
CI/CD Pipeline / PR Build Web Image (pull_request) Successful in 44s
CI/CD Pipeline / PR Build Worker Image (pull_request) Failing after 49s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 1m4s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 53s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Failing after 56s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 7m5s
AI Code Review / AI Code Review (pull_request) Successful in 8m35s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 2m52s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m25s
CI/CD Pipeline / Production Browser E2E (pull_request) Failing after 1339h19m40s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 1339h23m13s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 1339h23m15s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 1339h23m15s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 1339h23m17s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 1339h38m25s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 1339h38m38s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 1339h38m42s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 1339h38m44s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 1340h3m28s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 1340h3m32s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 1340h35m46s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 1340h10m56s
This commit is contained in:
+13
-15
@@ -6,11 +6,9 @@ PR自动扫描器:扫描所有open PR,对CI全绿的进行自动审批/合
|
||||
|
||||
import argparse
|
||||
import json
|
||||
import sys
|
||||
import urllib.request
|
||||
import urllib.error
|
||||
import time
|
||||
import os
|
||||
import urllib.error
|
||||
import urllib.request
|
||||
|
||||
|
||||
def api_request(token, repo, endpoint, method="GET", data=None):
|
||||
@@ -272,12 +270,12 @@ def main():
|
||||
# === 自动审批 ===
|
||||
if args.approve and all_ok and not failed:
|
||||
if has_approval(args.token, args.repo, pr_num):
|
||||
print(f" ✅ 已有审批,跳过")
|
||||
print(" ✅ 已有审批,跳过")
|
||||
else:
|
||||
if dry_run:
|
||||
print(f" 🎯 [DRY-RUN] 将自动审批")
|
||||
print(" 🎯 [DRY-RUN] 将自动审批")
|
||||
else:
|
||||
print(f" 🎯 执行自动审批...")
|
||||
print(" 🎯 执行自动审批...")
|
||||
ok, msg = approve_pr(args.token, args.repo, pr_num)
|
||||
if ok:
|
||||
print(f" ✅ 审批成功: {msg}")
|
||||
@@ -285,9 +283,9 @@ def main():
|
||||
else:
|
||||
print(f" ❌ 审批失败: {msg}")
|
||||
elif failed:
|
||||
print(f" ❌ CI有失败项,跳过审批")
|
||||
print(" ❌ CI有失败项,跳过审批")
|
||||
elif pending:
|
||||
print(f" ⏳ CI仍在运行,跳过")
|
||||
print(" ⏳ CI仍在运行,跳过")
|
||||
|
||||
# === 自动合并 ===
|
||||
if args.merge:
|
||||
@@ -301,9 +299,9 @@ def main():
|
||||
|
||||
if merge_ok and approved and not merge_failed:
|
||||
if dry_run:
|
||||
print(f" 🎯 [DRY-RUN] 将自动合并")
|
||||
print(" 🎯 [DRY-RUN] 将自动合并")
|
||||
else:
|
||||
print(f" 🎯 执行自动合并...")
|
||||
print(" 🎯 执行自动合并...")
|
||||
ok, msg = merge_pr(args.token, args.repo, pr_num)
|
||||
if ok:
|
||||
print(f" ✅ 合并成功: {msg}")
|
||||
@@ -311,13 +309,13 @@ def main():
|
||||
else:
|
||||
print(f" ⚠️ 合并失败: {msg}")
|
||||
elif merge_pending:
|
||||
print(f" ⏳ 合并条件未满足: CI运行中")
|
||||
print(" ⏳ 合并条件未满足: CI运行中")
|
||||
elif merge_failed:
|
||||
print(f" ❌ 合并条件未满足: CI有失败")
|
||||
print(" ❌ 合并条件未满足: CI有失败")
|
||||
elif not approved:
|
||||
print(f" ⏳ 合并条件未满足: 无审批")
|
||||
print(" ⏳ 合并条件未满足: 无审批")
|
||||
|
||||
print(f"\n=== 扫描结果 ===")
|
||||
print("\n=== 扫描结果 ===")
|
||||
print(f" 处理PR数: {min(len(prs), args.max_prs)}")
|
||||
print(f" 自动审批: {approved_count} 个")
|
||||
print(f" 自动合并: {merged_count} 个")
|
||||
|
||||
Reference in New Issue
Block a user