459cf61495
CI/CD Pipeline / Check push changed paths (pull_request) Has been skipped
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 3m47s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 4m36s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 4m40s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 5m4s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 5m49s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 5m59s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 6m12s
AI Code Review / AI Code Review (pull_request) Successful in 6m38s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 6m43s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 9m22s
CI/CD Pipeline / Unit Tests (pull_request) Has been cancelled
CI/CD Pipeline / Build Production API Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Web Image (pull_request) Has been cancelled
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been cancelled
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / CI Gate (pull_request) Has been cancelled
第一部分:修正配置模板(7 处差异) - MINIO_BUCKET → MINIO_BUCKET_NAME(统一变量名) - 删除 DOUBAO_API_KEY 区块(两个环境都没在用) - 新增 DASHSCOPE_API_KEY(实际在用,模板漏了) - 新增 MediaKit 区块(3 个变量) - staging DEBUG=true(实际在用 true) - ENABLE_EMAIL_DELIVERY=false(邮件功能未上线) - SMTP 相关默认值改为空 第二部分:创建 env 渲染脚本 - scripts/render_env.sh:从模板 + Secrets 渲染 .env - 使用 Python 实现变量替换(CI runner 无 envsubst) - 支持 STAGING_xxx/PRODUCTION_xxx 前缀映射 - 自动校验所有必需变量已设置 - 输出文件权限 600,不打印到日志 第三部分:改造 CI 部署流程 - deploy-staging 新增 'Render .env from template' 步骤 - SSH deploy 前先 SCP 渲染后的 .env 到服务器 - 自动备份旧 .env(带时间戳) - 部署完成后清理 CI runner 上的渲染文件 - ci_staging_deploy.sh 改为显式检查 .env 来源 安全: .env.rendered 加入 .gitignore