refactor: simplify db credential handling

This commit is contained in:
Dragory 2024-04-06 15:36:45 +00:00
parent 898cf18885
commit 1ef7ba8d0f
No known key found for this signature in database
6 changed files with 66 additions and 72 deletions

View file

@ -11,34 +11,22 @@ const entities = path.relative(process.cwd(), path.resolve(backendDir, "dist/dat
const migrations = path.relative(process.cwd(), path.resolve(backendDir, "dist/migrations/*.js"));
type DbOpts = Pick<MysqlConnectionOptions, "host" | "port" | "username" | "password" | "database">;
let dbOpts: DbOpts;
if (env.HOST_MODE === "development") {
dbOpts = {
host: "mysql",
port: 3306,
username: "zeppelin",
password: env.DEVELOPMENT_MYSQL_PASSWORD,
database: "zeppelin",
};
} else if (env.HOST_MODE === "standalone") {
dbOpts = {
host: "mysql",
port: 3306,
username: "zeppelin",
password: env.STANDALONE_MYSQL_PASSWORD,
database: "zeppelin",
};
} else if (env.HOST_MODE === "lightweight") {
dbOpts = {
host: env.LIGHTWEIGHT_DB_HOST,
port: env.LIGHTWEIGHT_DB_PORT,
username: env.LIGHTWEIGHT_DB_USER,
password: env.LIGHTWEIGHT_DB_PASSWORD,
database: env.LIGHTWEIGHT_DB_DATABASE,
};
} else {
throw new Error(`Unknown host mode: ${env.HOST_MODE}`);
}
const dbOpts: DbOpts =
env.NODE_ENV === "production"
? {
host: env.DB_HOST,
port: env.DB_PORT,
username: env.DB_USER,
password: env.DB_PASSWORD,
database: env.DB_DATABASE,
}
: {
host: "mysql",
port: 3306,
username: "zeppelin",
password: env.DEVELOPMENT_MYSQL_PASSWORD,
database: "zeppelin",
};
export const dataSource = new DataSource({
type: "mysql",