forked from wangziqi/gongxue-base
Merge pull request 'fix: 迁移读取根 .env + 部署脚本本地直跑 + 健康检查读 PORT' (#66) from fix/datasource-root-env into main
This commit is contained in:
@@ -1,9 +1,18 @@
|
||||
import { DataSource } from 'typeorm';
|
||||
import { config } from 'dotenv';
|
||||
import { join } from 'path';
|
||||
import { basename, join, resolve } from 'path';
|
||||
|
||||
// TypeORM CLI runs from apps/server/
|
||||
const root = process.cwd();
|
||||
// TypeORM CLI 默认在 apps/server/ 下运行,但生产环境的 .env 通常放在仓库根目录。
|
||||
// 这里先加载仓库根目录的 .env(默认),再加载当前目录(apps/server/.env)作为补充/覆盖,
|
||||
// 这样无论 .env 放哪一份,迁移 CLI 都能读到数据库配置。
|
||||
const root = resolve(process.cwd());
|
||||
const repoRoot =
|
||||
basename(root) === 'server' && basename(join(root, '..')) === 'apps'
|
||||
? resolve(root, '../..')
|
||||
: root;
|
||||
|
||||
// 先根目录,后当前目录(dotenv 默认不覆盖已存在变量,所以根目录优先级更高)
|
||||
config({ path: join(repoRoot, '.env') });
|
||||
config({ path: join(root, '.env') });
|
||||
|
||||
export default new DataSource({
|
||||
|
||||
Reference in New Issue
Block a user