# DataOps Platform 发布包清单

> 版本以打包日期为准，开发侧执行 `sync_release.sh` + `package_release.sh` 生成。

## 核心文件

| 文件 | 说明 |
|------|------|
| `deploy_dataops.sh` | **一键部署入口**，复制代码、建 venv、配置 Supervisor |
| `dataops.env` | 生产环境变量模板 → `/etc/dataops-platform/dataops.env` |
| `.env.production.example` | 环境变量说明副本 |
| `requirements.txt` | Python 依赖（pip install -r） |
| `wsgi.py` | Gunicorn WSGI 入口 |
| `gunicorn_config.py` | Gunicorn 配置（post_worker_init 初始化日志） |
| `__init__.py` | 包入口（可选） |

## 应用代码

| 目录 | 说明 |
|------|------|
| `app/` | Flask 应用完整源码 |
| `app/config/config.py` | 主配置（含生产默认连接、MinIO/LLM 回退） |
| `app/core/llm/deepseek_client.py` | DeepSeek SDK 封装（base_url 规范化） |
| `app/core/llm/llm_service.py` | LLM 翻译/SQL 生成 |
| `app/core/llm/ddl_parser.py` | DDL 解析（HTTP `/v1/chat/completions`） |
| `app/api/` | 全部 API 路由 |
| `database/` | PostgreSQL SQL 脚本 |

## 运维脚本

| 脚本 | 说明 |
|------|------|
| `scripts/dataops-common.sh` | 公共配置、健康检查、Supervisor 配置 |
| `scripts/run_dataops.sh` | Supervisor 调用，加载 env 启动 Gunicorn |
| `scripts/start_dataops.sh` | 启动服务 |
| `scripts/stop_dataops.sh` | 停止服务 |
| `scripts/restart_dataops.sh` | 重启服务 |
| `scripts/deploy_dataops.sh` | 已安装环境下的增量部署（可选） |

## 配置模板

| 文件 | 说明 |
|------|------|
| `config/nginx-dataops-platform.conf` | Nginx 反向代理（SSL、ddlparse 超时） |
| `config/supervisor-dataops-platform.conf` | Supervisor 参考配置（deploy 脚本会自动生成） |

## 开发/打包工具

| 脚本 | 说明 |
|------|------|
| `sync_release.sh` | 从仓库根目录同步最新代码到 deployment/ |
| `package_release.sh` | 打包 `dist/dataops-platform-release-YYYYMMDD.tar.gz` |

## 文档

| 文件 | 说明 |
|------|------|
| `README.md` | 快速开始 |
| `DEPLOYMENT_GUIDE.md` | 完整部署手册 |
| `CHECKLIST.md` | 部署检查清单 |
| `MANIFEST.md` | 本文件 |

## 部署目标路径

| 源 | 目标 |
|----|------|
| `app/` | `/opt/dataops-platform/app/` |
| `database/` | `/opt/dataops-platform/database/` |
| `scripts/` | `/opt/dataops-platform/scripts/` |
| `requirements.txt` 等 | `/opt/dataops-platform/` |
| `dataops.env` | `/etc/dataops-platform/dataops.env` |

## 近期重要变更（2026-05）

- DeepSeek：`LLM_BASE_URL=https://api.deepseek.com`，模型默认 `deepseek-v4-pro`
- `ddl_parser` 修正 API 路径为 `/v1/chat/completions`
- MinIO 配置整组加载，避免 host/密钥混搭
- 翻译接口修复空结果回退逻辑
- 运维脚本统一 LF，env 权限 640 root:ubuntu
- Gunicorn 日志绝对路径 `LOG_FILE`
