import { createConnection } from "typeorm"; import Suggestions from "../domains/suggestions/repositories/suggestions.entity"; import SuggestionsData from "../domains/suggestions/repositories/suggestionsData.entity"; import SuggestionsMetadata from "../domains/suggestions/repositories/suggestionsMetadata.entity"; import { logger } from "./winston"; export default async function createDatabaseConnection( baseDirectory: string ): Promise { await createConnection({ type: "sqlite", database: `${process.env.DATABASE_FOLDER || "."}/database.sqlite`, synchronize: false, logging: false, entities: [Suggestions, SuggestionsData, SuggestionsMetadata], migrations: [`${baseDirectory}/migration/**/*.{ts,js}`], }) .then((conn) => conn.runMigrations()) .then(() => logger.info("Successfully initiated database connection")) .catch((e) => logger.error("Failed to initialize database", e)); }