| 25 | })(knex) |
| 26 | |
| 27 | const getMasterConfig = (): Knex.Config => |
| 28 | ({ |
| 29 | tag: 'master', |
| 30 | client: 'pg', |
| 31 | connection: process.env.DB_URI |
| 32 | ? process.env.DB_URI |
| 33 | : { |
| 34 | host: process.env.DB_HOST, |
| 35 | port: Number(process.env.DB_PORT), |
| 36 | user: process.env.DB_USER, |
| 37 | password: process.env.DB_PASSWORD, |
| 38 | database: process.env.DB_NAME, |
| 39 | }, |
| 40 | pool: { |
| 41 | min: process.env.DB_MIN_POOL_SIZE ? Number(process.env.DB_MIN_POOL_SIZE) : 0, |
| 42 | max: process.env.DB_MAX_POOL_SIZE ? Number(process.env.DB_MAX_POOL_SIZE) : 3, |
| 43 | idleTimeoutMillis: 60000, |
| 44 | propagateCreateError: false, |
| 45 | acquireTimeoutMillis: process.env.DB_ACQUIRE_CONNECTION_TIMEOUT |
| 46 | ? Number(process.env.DB_ACQUIRE_CONNECTION_TIMEOUT) |
| 47 | : 60000, |
| 48 | }, |
| 49 | acquireConnectionTimeout: process.env.DB_ACQUIRE_CONNECTION_TIMEOUT |
| 50 | ? Number(process.env.DB_ACQUIRE_CONNECTION_TIMEOUT) |
| 51 | : 60000, |
| 52 | }) as any |
| 53 | |
| 54 | const getReadReplicaConfigByIndex = (index: number): Knex.Config => |
| 55 | ({ |