UNPKG

cnpmcore

Version:

Private NPM Registry for Enterprise

53 lines 5.47 kB
import { env } from 'read-env-value'; export var DATABASE_TYPE; (function (DATABASE_TYPE) { DATABASE_TYPE["MySQL"] = "MySQL"; DATABASE_TYPE["PostgreSQL"] = "PostgreSQL"; DATABASE_TYPE["SQLite"] = "SQLite"; })(DATABASE_TYPE || (DATABASE_TYPE = {})); const dbType = env('CNPMCORE_DATABASE_TYPE', 'string', DATABASE_TYPE.MySQL); let dbName = env('CNPMCORE_DATABASE_NAME', 'string'); let dbHost = env('CNPMCORE_DATABASE_HOST', 'string'); let dbPort = env('CNPMCORE_DATABASE_PORT', 'number'); let dbUser = env('CNPMCORE_DATABASE_USER', 'string'); let dbPassword = env('CNPMCORE_DATABASE_PASSWORD', 'string'); let dialect = 'mysql'; let dbClient = 'mysql2'; if (dbType === DATABASE_TYPE.MySQL) { // Compatible mysql configurations dbName = dbName ?? env('CNPMCORE_MYSQL_DATABASE', 'string') ?? env('MYSQL_DATABASE', 'string'); dbHost = dbHost ?? env('CNPMCORE_MYSQL_HOST', 'string') ?? env('MYSQL_HOST', 'string') ?? '127.0.0.1'; dbPort = dbPort ?? env('CNPMCORE_MYSQL_PORT', 'number') ?? env('MYSQL_PORT', 'number') ?? 3306; dbUser = dbUser ?? env('CNPMCORE_MYSQL_USER', 'string') ?? env('MYSQL_USER', 'string') ?? 'root'; dbPassword = dbPassword ?? env('CNPMCORE_MYSQL_PASSWORD', 'string') ?? env('MYSQL_PASSWORD', 'string'); } else if (dbType === DATABASE_TYPE.PostgreSQL) { dbClient = 'pg'; dialect = 'postgres'; dbHost = dbHost ?? env('CNPMCORE_POSTGRES_HOST', 'string') ?? env('POSTGRES_HOST', 'string') ?? '127.0.0.1'; dbPort = dbPort ?? env('CNPMCORE_POSTGRES_PORT', 'number') ?? env('POSTGRES_PORT', 'number') ?? 5432; dbUser = dbUser ?? env('CNPMCORE_POSTGRES_USER', 'string') ?? env('POSTGRES_USER', 'string') ?? 'postgres'; dbPassword = dbPassword ?? env('CNPMCORE_POSTGRES_PASSWORD', 'string') ?? env('POSTGRES_PASSWORD', 'string') ?? 'postgres'; } else if (dbType === DATABASE_TYPE.SQLite) { // TODO: Implement SQLite dbClient = 'sqlite'; dialect = 'sqlite'; } // Per-worker database isolation for vitest parallel execution const poolId = env('VITEST_POOL_ID', 'string'); if (poolId) { dbName = `${dbName ?? 'cnpmcore_unittest'}_${poolId}`; } export const database = { type: dbType, dialect, client: dbClient, name: dbName, host: dbHost, port: dbPort, user: dbUser, password: dbPassword, }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9jb25maWcvZGF0YWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE1BQU0sQ0FBTixJQUFZLGFBSVg7QUFKRCxXQUFZLGFBQWE7SUFDdkIsZ0NBQWUsQ0FBQTtJQUNmLDBDQUF5QixDQUFBO0lBQ3pCLGtDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFKVyxhQUFhLEtBQWIsYUFBYSxRQUl4QjtBQUVELE1BQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRSxRQUFRLEVBQUUsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzVFLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUNyRCxJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUMsd0JBQXdCLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDckQsSUFBSSxNQUFNLEdBQUcsR0FBRyxDQUFDLHdCQUF3QixFQUFFLFFBQVEsQ0FBQyxDQUFDO0FBQ3JELElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyx3QkFBd0IsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUNyRCxJQUFJLFVBQVUsR0FBRyxHQUFHLENBQUMsNEJBQTRCLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDN0QsSUFBSSxPQUFPLEdBQUcsT0FBTyxDQUFDO0FBQ3RCLElBQUksUUFBUSxHQUFHLFFBQVEsQ0FBQztBQUN4QixJQUFJLE1BQU0sS0FBSyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDbkMsa0NBQWtDO0lBQ2xDLE1BQU0sR0FBRyxNQUFNLElBQUksR0FBRyxDQUFDLHlCQUF5QixFQUFFLFFBQVEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUMvRixNQUFNLEdBQUcsTUFBTSxJQUFJLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxJQUFJLFdBQVcsQ0FBQztJQUN0RyxNQUFNLEdBQUcsTUFBTSxJQUFJLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQztJQUMvRixNQUFNLEdBQUcsTUFBTSxJQUFJLEdBQUcsQ0FBQyxxQkFBcUIsRUFBRSxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxJQUFJLE1BQU0sQ0FBQztJQUNqRyxVQUFVLEdBQUcsVUFBVSxJQUFJLEdBQUcsQ0FBQyx5QkFBeUIsRUFBRSxRQUFRLENBQUMsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDekcsQ0FBQztLQUFNLElBQUksTUFBTSxLQUFLLGFBQWEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMvQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ2hCLE9BQU8sR0FBRyxVQUFVLENBQUM7SUFDckIsTUFBTSxHQUFHLE1BQU0sSUFBSSxHQUFHLENBQUMsd0JBQXdCLEVBQUUsUUFBUSxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsSUFBSSxXQUFXLENBQUM7SUFDNUcsTUFBTSxHQUFHLE1BQU0sSUFBSSxHQUFHLENBQUMsd0JBQXdCLEVBQUUsUUFBUSxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDckcsTUFBTSxHQUFHLE1BQU0sSUFBSSxHQUFHLENBQUMsd0JBQXdCLEVBQUUsUUFBUSxDQUFDLElBQUksR0FBRyxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsSUFBSSxVQUFVLENBQUM7SUFDM0csVUFBVTtRQUNSLFVBQVUsSUFBSSxHQUFHLENBQUMsNEJBQTRCLEVBQUUsUUFBUSxDQUFDLElBQUksR0FBRyxDQUFDLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxJQUFJLFVBQVUsQ0FBQztBQUNsSCxDQUFDO0tBQU0sSUFBSSxNQUFNLEtBQUssYUFBYSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzNDLHlCQUF5QjtJQUN6QixRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQ3BCLE9BQU8sR0FBRyxRQUFRLENBQUM7QUFDckIsQ0FBQztBQUVELDhEQUE4RDtBQUM5RCxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsZ0JBQWdCLEVBQUUsUUFBUSxDQUFDLENBQUM7QUFDL0MsSUFBSSxNQUFNLEVBQUUsQ0FBQztJQUNYLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxtQkFBbUIsSUFBSSxNQUFNLEVBQUUsQ0FBQztBQUN4RCxDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLElBQUksRUFBRSxNQUFNO0lBQ1osT0FBTztJQUNQLE1BQU0sRUFBRSxRQUFRO0lBQ2hCLElBQUksRUFBRSxNQUFNO0lBQ1osSUFBSSxFQUFFLE1BQU07SUFDWixJQUFJLEVBQUUsTUFBTTtJQUNaLElBQUksRUFBRSxNQUFNO0lBQ1osUUFBUSxFQUFFLFVBQVU7Q0FDckIsQ0FBQyJ9