28 lines
688 B
TypeScript
28 lines
688 B
TypeScript
import fs from "fs";
|
|
import grabDirNames from "./names/grab-dir-names";
|
|
import type { ConnectionConfig } from "mariadb";
|
|
|
|
type Return = ConnectionConfig["ssl"] | undefined;
|
|
|
|
/**
|
|
* # Grab SSL
|
|
*/
|
|
export default function grabDbSSL(): Return {
|
|
const { maxscaleSSLDir } = grabDirNames();
|
|
if (!maxscaleSSLDir?.match(/./)) {
|
|
return undefined;
|
|
}
|
|
|
|
const caFilePath = `${maxscaleSSLDir}/ca-cert.pem`;
|
|
|
|
if (!fs.existsSync(caFilePath)) {
|
|
console.log(`${caFilePath} does not exist`);
|
|
return undefined;
|
|
}
|
|
|
|
return {
|
|
ca: fs.readFileSync(`${maxscaleSSLDir}/ca-cert.pem`),
|
|
rejectUnauthorized: false,
|
|
};
|
|
}
|