4 Commits
Author SHA1 Message Date
Zhengen 2b60c0d5e0 feat: add 18 independent industry demo templates 2026-11-03 22:33:03 +08:00
Zhengen 1d08bdb6a5 feat: add isolated Docker local testing and HTTP smoke validation 2026-11-03 19:21:58 +08:00
Zhengen 19af182314 生产环境部署准备:Docker 化 + 修复存储配置 + SMTP 邮件
- 修复 production.py 存储配置:Django 6.0 已移除 DEFAULT_FILE_STORAGE/
  STATICFILES_STORAGE 旧式设置兼容层,改用 STORAGES 字典(此前的写法
  实际上早已失效,属于遗留 bug)
- 静态文件接入 whitenoise(压缩+哈希文件名+长缓存头),容器化部署下
  无需额外 Nginx/CDN 即可正确提供静态文件
- 新增生产 SMTP 邮件配置(EMAIL_HOST/PORT/USER/PASSWORD/USE_TLS/
  DEFAULT_FROM_EMAIL),修复线索通知邮件/PIPL 删除确认邮件在生产环境
  发不出去的问题
- 新增 docker/Dockerfile(多阶段构建,非 root 用户运行)
- 新增 docker/entrypoint.sh(启动时自动 migrate + collectstatic +
  bootstrap_deployment,均为幂等操作)
- 新增 docker-compose.prod.yml(backend + postgres + redis 编排)
- 新增 .dockerignore
- .env.example 补充 POSTGRES_*/EMAIL_* 环境变量说明
2026-08-18 14:40:19 +08:00
Zhengen 147107501b 补充测试覆盖率 + 新增部署引导命令 bootstrap_deployment
- 新增 apps/blog、apps/solutions、apps/home、apps/api 测试文件,覆盖标签/排序/
  草稿过滤、HomePage.subpage_types 回归测试、page_preview 预览接口
- apps/core/tests.py 新增健康检查端点、发布 webhook 信号、bootstrap_deployment
  命令的测试用例,pytest 用例数从 40 增至 65,全部通过
- 修复 apps/api/urls.py 中 PagePreviewAPIViewSet.get_object() 未捕获
  DoesNotExist 导致 500 而非文档承诺 404 的 bug
- 新增 apps/core/management/commands/bootstrap_deployment.py:部署时按环境变量
  幂等创建首个超级管理员账号并联动初始化 RBAC 权限组,.env.example 补充对应
  环境变量说明
- 新增 OpenSearch + 中文分词本地 PoC 脚手架(docker-compose.opensearch.yml +
  docker/opensearch/Dockerfile),调研结论详见设计文档 §2.10
- 更新设计文档 §2.16 Phase 1 进度清单
2026-08-11 14:47:10 +08:00