2.0 KiB
2.0 KiB
inclusion, fileMatchPattern, name, description
| inclusion | fileMatchPattern | name | description |
|---|---|---|---|
| fileMatch | **/.env*,**/scripts/**,**/export/**,**/EXPORT-PATHS* | export-paths-full | 输出路径完整规范(目录结构、环境变量映射、检查清单)。读到 .env / scripts / export 文件时自动加载。 |
输出路径完整规范
目录结构与环境变量
export/
├── ETL-Connectors/feiqiu/
│ ├── JSON/ — EXPORT_ROOT / FETCH_ROOT
│ ├── LOGS/ — LOG_ROOT
│ └── REPORTS/ — ETL_REPORT_ROOT
├── SYSTEM/
│ ├── LOGS/ — SYSTEM_LOG_ROOT
│ ├── REPORTS/
│ │ ├── dataflow_analysis/ — SYSTEM_ANALYZE_ROOT
│ │ ├── field_audit/ — FIELD_AUDIT_ROOT
│ │ └── full_dataflow_doc/ — FULL_DATAFLOW_DOC_ROOT
│ └── CACHE/
│ └── api_samples/ — API_SAMPLE_CACHE_ROOT
└── BACKEND/
└── LOGS/ — BACKEND_LOG_ROOT
路径读取方式详细
scripts/ops/脚本:通过_env_paths.get_output_path("变量名")读取(内部自动load_dotenv)- ETL 核心模块:通过
env_parser.py→AppConfig的io.*配置节读取 - ETL 独立脚本:通过
os.environ.get("ETL_REPORT_ROOT")读取,缺失时抛错 - 后端:通过
os.environ.get("BACKEND_LOG_ROOT")读取
新增输出场景的检查清单
当任何操作需要写入文件时,按以下顺序确认:
- 该输出是否已有对应的环境变量?→ 直接使用
- 是否属于现有目录分类(ETL/SYSTEM/BACKEND)?→ 使用对应父目录变量 + 子路径
- 都不匹配?→ 在
export/下新建合理子目录,新增环境变量,更新.env/.env.template/EXPORT-PATHS.md
共享工具
scripts/ops/_env_paths.py:提供get_output_path(env_var)函数,自动load_dotenv+ 读取 + 建目录 + 缺失报错
参考文档
- 完整目录说明:
docs/deployment/EXPORT-PATHS.md - 环境变量定义:根
.env的"统一输出路径配置"节