chore(release): initialize separated production env
Deploy / Deploy Production (push) Failing after 2089h3m52s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 2089h6m25s
Deploy / Deploy Staging (push) Has been cancelled

This commit is contained in:
Xiaoxia AI
2026-06-21 14:24:23 +08:00
parent 1f89f8edfe
commit f22af7ee4c
7 changed files with 146 additions and 5 deletions
+10 -3
View File
@@ -12,7 +12,14 @@
## 2. 生产环境检查
- `/var/lib/xiaoxia-saas-production/.env` 存在且权限正确。
- `/var/lib/xiaoxia-saas-production/.env` 存在且权限正确。首次初始化必须使用非部署脚本生成独立 production env:
```bash
scripts/init_production_env.sh
```
脚本只创建目录和 `.env`,不会启动容器;生成后必须人工替换 `CHANGE_ME_PRODUCTION_DB_PASSWORD`,并确认生产 DB/Redis 使用 `xiaoxia-postgres-production` / `xiaoxia-redis-production`,不得复用 staging 的 `xiaoxia-postgres` / `xiaoxia-redis`。
- `APP_ENV=production`。
- `DEBUG=false`。
- `AUTO_CREATE_SCHEMA=false`。
@@ -21,8 +28,8 @@
- `REDIS_URL` 指向生产 Redis。
- OSS 配置已确认或明确保持本地 fallback。
- `GENERATED_FILES_HOST_DIR` 生产环境不得指向 staging 目录。
- 本地校验文件:`python scripts/validate_release_env.py /var/lib/xiaoxia-saas-production/.env --strict-external`。
- 容器内校验已注入环境:`docker exec xiaoxia-api-production python /app/scripts/validate_release_env.py --from-environ --strict-external`。
- 本地校验文件:`python scripts/validate_release_env.py /var/lib/xiaoxia-saas-production/.env --strict-external`(SMTP 仅在 `ENABLE_EMAIL_DELIVERY=true` 时强制)。
- 容器内校验已注入环境:`docker exec xiaoxia-api-production python /app/scripts/validate_release_env.py --from-environ --strict-external`(SMTP 仅在启用邮件时强制)。
- 外部服务 smoke:`docker exec xiaoxia-api-production python /app/scripts/smoke_external_services.py --strict --skip-smtp`(SMTP 未启用时)。
- SMTP 真发信 smoke(启用邮件前必须执行):`docker exec xiaoxia-api-production python /app/scripts/smoke_external_services.py --strict --send-email-to <测试邮箱>`。
- 如开启邮件/session: