From aaf78ed5dfa7842d232f1975ac732e8cbd7afd55 Mon Sep 17 00:00:00 2001 From: David Ludwig Date: Sat, 1 May 2021 17:20:37 -0500 Subject: [PATCH] Database package exports entities correctly. Database connection function connects via arguments instead of environment variables --- packages/database/src/index.ts | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/packages/database/src/index.ts b/packages/database/src/index.ts index ada4e28..b4a75d4 100644 --- a/packages/database/src/index.ts +++ b/packages/database/src/index.ts @@ -1,19 +1,25 @@ import * as entities from "./entities"; -import { readFile } from "fs/promises"; import { createConnection } from "typeorm"; -export async function connectToDatabase() { - // Fetch the database password from the secret file - let password = (await readFile(process.env["DB_PASSWORD_FILE"])).toString().trim(); +/** + * Export the entities + */ +export * from "./entities"; +/** + * A convenience function to connect to the database + */ +export default async function connectToDatabase(host: string, port: number, username: string, + password: string, database: string) +{ // Create the database connection - await createConnection({ - type : <"mysql" | "mariadb">process.env["DB_TYPE"], - host : process.env["DB_HOST"], - port : parseInt(process.env["DB_PORT"]), - username : process.env["DB_USER"], + return await createConnection({ + type : "mysql", + host : host, + port : port, + username : username, password : password, - database : process.env["DB_DATABASE"], + database : database, // synchronize: process.env["NODE_ENV"] != "production", synchronize: true, // Seems stable enough for my liking entities : Object.values(entities),