chore(release): initialize separated production env
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user