2024-11-07 14:28:28 +00:00
|
|
|
// @ts-check
|
|
|
|
|
|
|
|
const fs = require("fs");
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @returns {string | (import("tls").SecureContextOptions & { rejectUnauthorized?: boolean | undefined;}) | undefined}
|
|
|
|
*/
|
|
|
|
module.exports = function grabDbSSL() {
|
|
|
|
const SSL_DIR = process.env.DSQL_SSL_DIR;
|
2024-11-08 19:15:37 +00:00
|
|
|
if (!SSL_DIR?.match(/./)) {
|
|
|
|
console.log(
|
|
|
|
"No SSL certificate provided. Query will run in normal mode. To add SSL add an env path dir `DSQL_SSL_DIR` with a file named `ca-cert.pem`"
|
|
|
|
);
|
|
|
|
return undefined;
|
|
|
|
}
|
2024-11-07 14:28:28 +00:00
|
|
|
|
|
|
|
const caFilePath = `${SSL_DIR}/ca-cert.pem`;
|
2024-11-08 19:15:37 +00:00
|
|
|
|
2024-11-07 14:28:28 +00:00
|
|
|
if (!fs.existsSync(caFilePath)) {
|
|
|
|
console.log(`${caFilePath} does not exist`);
|
|
|
|
return undefined;
|
|
|
|
}
|
|
|
|
|
|
|
|
return {
|
|
|
|
ca: fs.readFileSync(`${SSL_DIR}/ca-cert.pem`),
|
|
|
|
};
|
|
|
|
};
|