drapcode-utility 2.5.6 → 2.5.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -330,15 +330,31 @@ const makeMySqlCall = async (projectId, data, extDbSetting) => {
330
330
  values.push(fileData);
331
331
  });
332
332
  }
333
- const { mysqlDbHostUrl, mysqlDbUser, mysqlDbPassword, mysqlDbName, mysqlDbPort } = extDbSetting || {};
333
+ const { mysqlDbHostUrl, mysqlDbUser, mysqlDbPassword, mysqlDbName, mysqlDbPort, mysqlDbSslEnabled, mysqlDbSslCa, mysqlDbSslCert, mysqlDbSslKey } = extDbSetting || {};
334
334
  const mysqlDBConfig = {
335
335
  host: mysqlDbHostUrl,
336
336
  user: mysqlDbUser,
337
337
  password: mysqlDbPassword,
338
338
  database: mysqlDbName,
339
339
  port: mysqlDbPort,
340
+ sslEnabled: mysqlDbSslEnabled,
341
+ sslCa: '',
342
+ sslCert: '',
343
+ sslKey: ''
340
344
  };
345
+ if (mysqlDbSslEnabled) {
346
+ if (mysqlDbSslCa) {
347
+ mysqlDBConfig.sslCa = mysqlDbSslCa;
348
+ }
349
+ if (mysqlDbSslCert) {
350
+ mysqlDBConfig.sslCert = mysqlDbSslCert;
351
+ }
352
+ if (mysqlDbSslKey) {
353
+ mysqlDBConfig.sslKey = mysqlDbSslKey;
354
+ }
355
+ }
341
356
  console.log(`==> Final MySQL projectID: ${projectId} ~ data:>> `, data, " ~ query type :>> ", operation, " ~ finalSql:>> ", finalSql, " ~ values:>> ", values);
357
+ console.log("🚀 ~ makeMySqlCall ~ process.env.MYSQL_SSL_CERT_PATH:", process.env.MYSQL_SSL_CERT_PATH);
342
358
  const connection = await (0, util_1.createMySqlConnection)(mysqlDBConfig);
343
359
  try {
344
360
  const [rows] = await connection.execute(finalSql, values);
@@ -17,6 +17,7 @@ const moment_1 = __importDefault(require("moment"));
17
17
  const mime_types_1 = __importDefault(require("mime-types"));
18
18
  const uuid_2 = require("uuid");
19
19
  const aws4_1 = require("aws4");
20
+ const fs_1 = __importDefault(require("fs"));
20
21
  const mysql = require("mysql2/promise");
21
22
  exports.nonFindQuery = ["COUNT", "SUM", "AVG", "MIN", "MAX"];
22
23
  // Constants
@@ -595,6 +596,7 @@ const processDerivedFieldInclude = (derivedFieldsInclude) => {
595
596
  return derivedFields;
596
597
  };
597
598
  const replaceValueFromSource = (variableName, environment, tenant) => {
599
+ console.log("🚀 ~ replaceValueFromSource ~ variableName:", variableName, "~ environment:", environment);
598
600
  if (variableName && typeof variableName === "string") {
599
601
  if (variableName.startsWith(ENVIRONMENT_FIX_KEY)) {
600
602
  return replaceValueFromEnvironment(variableName, environment);
@@ -618,6 +620,7 @@ const replaceValueFromEnvironment = (variableName, environment) => {
618
620
  environment &&
619
621
  environment.constants) {
620
622
  const envConstant = environment.constants.find((env) => env.name === variableName.replace(ENVIRONMENT_FIX_KEY, ""));
623
+ console.log("🚀 ~ replaceValueFromEnvironment ~ envConstant:", envConstant);
621
624
  return envConstant.value;
622
625
  }
623
626
  else {
@@ -1275,14 +1278,41 @@ exports.getAwsSignature = getAwsSignature;
1275
1278
  */
1276
1279
  const createMySqlConnection = async (config) => {
1277
1280
  try {
1278
- const { host, user, password, database, port } = config || {};
1279
- const connection = await mysql.createConnection({
1280
- host: host,
1281
- user: user,
1282
- password: password,
1283
- database: database,
1284
- port: port,
1285
- });
1281
+ const { host, user, password, database, port, sslEnabled, sslCa, sslCert, sslKey } = config || {};
1282
+ console.log("🚀 ~ createMySqlConnection ~ sslEnabled:", sslEnabled);
1283
+ console.log("🚀 ~ createMySqlConnection ~ process.env.MYSQL_SSL_CERT_PATH:", process.env.MYSQL_SSL_CERT_PATH);
1284
+ const sslCertsPath = process.env.MYSQL_SSL_CERT_PATH || './';
1285
+ console.log("🚀 ~ createMySqlConnection ~ sslCertsPath:", sslCertsPath);
1286
+ let connection = null;
1287
+ if (sslEnabled) {
1288
+ const connectionOptions = {
1289
+ host,
1290
+ user,
1291
+ password,
1292
+ database,
1293
+ port,
1294
+ ssl: {}
1295
+ };
1296
+ if (sslCa) {
1297
+ connectionOptions.ssl.ca = fs_1.default.readFileSync(`${sslCertsPath}${sslCa}`);
1298
+ }
1299
+ if (sslCert) {
1300
+ connectionOptions.ssl.cert = fs_1.default.readFileSync(`${sslCertsPath}${sslCert}`);
1301
+ }
1302
+ if (sslKey) {
1303
+ connectionOptions.ssl.key = fs_1.default.readFileSync(`${sslCertsPath}${sslKey}`);
1304
+ }
1305
+ connection = await mysql.createConnection(connectionOptions);
1306
+ }
1307
+ else {
1308
+ connection = await mysql.createConnection({
1309
+ host,
1310
+ user,
1311
+ password,
1312
+ database,
1313
+ port,
1314
+ });
1315
+ }
1286
1316
  const [rows] = await connection.execute("select ?+? as sum", [2, 2]);
1287
1317
  console.log("==> MySQL createMySqlConnection ~ Testing connection...", rows);
1288
1318
  return connection;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "drapcode-utility",
3
- "version": "2.5.6",
3
+ "version": "2.5.8",
4
4
  "description": "DrapCode Utility",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",