Add knex SSL configuration support

This commit is contained in:
Tuan Dang
2024-02-03 15:16:43 -08:00
parent 3cbda8e785
commit 644cdf5a67
3 changed files with 22 additions and 5 deletions
+15 -3
View File
@@ -1,11 +1,23 @@
import knex from "knex";
export type TDbClient = ReturnType<typeof initDbConnection>;
export const initDbConnection = (dbConnectionUri: string) => {
export const initDbConnection = ({
dbConnectionUri,
dbRootCert
}: {
dbConnectionUri: string;
dbRootCert?: string;
}) => {
const db = knex({
client: "pg",
connection: dbConnectionUri
connection: {
connectionString: dbConnectionUri,
ssl: dbRootCert ? {
rejectUnauthorized: true,
ca: Buffer.from(dbRootCert, 'base64').toString('ascii')
} : false
}
});
return db;
};
};