From b40168182a38350122a1e9ccde363e28ba88d4ec Mon Sep 17 00:00:00 2001 From: "SPRINX0\\prochazka" Date: Wed, 5 Mar 2025 15:25:08 +0100 Subject: [PATCH] SYNC: fixed SQLite E2E tests (use absolute folder) --- e2e-tests/clearTestingData.js | 4 ++-- e2e-tests/env/multi-sql/.env | 3 ++- e2e-tests/init/multi-sql.js | 5 ++++- e2e-tests/tmpdata/.gitkeep | 0 packages/api/src/controllers/connections.js | 5 ++++- packages/api/src/utility/crypting.js | 3 +++ 6 files changed, 15 insertions(+), 5 deletions(-) create mode 100644 e2e-tests/tmpdata/.gitkeep diff --git a/e2e-tests/clearTestingData.js b/e2e-tests/clearTestingData.js index 2adcf8a56..5a93dc1bd 100644 --- a/e2e-tests/clearTestingData.js +++ b/e2e-tests/clearTestingData.js @@ -17,8 +17,8 @@ function clearTestingData() { if (fs.existsSync(path.join(baseDir, 'archive-e2etests'))) { fs.rmdirSync(path.join(baseDir, 'archive-e2etests'), { recursive: true }); } - if (fs.existsSync(path.join(__dirname, '../my_guitar_shop.db'))) { - fs.unlinkSync(path.join(__dirname, '../my_guitar_shop.db')); + if (fs.existsSync(path.join(__dirname, 'tmpdata', 'my_guitar_shop.db'))) { + fs.unlinkSync(path.join(__dirname, 'tmpdata', 'my_guitar_shop.db')); } } diff --git a/e2e-tests/env/multi-sql/.env b/e2e-tests/env/multi-sql/.env index b8657106c..57617eb81 100644 --- a/e2e-tests/env/multi-sql/.env +++ b/e2e-tests/env/multi-sql/.env @@ -1,4 +1,5 @@ CONNECTIONS=mysql,postgres,mssql,oracle,sqlite +LOG_CONNECTION_SENSITIVE_VALUES=true LABEL_mysql=MySql-connection SERVER_mysql=localhost @@ -32,5 +33,5 @@ PORT_mssql=16014 ENGINE_mssql=mssql@dbgate-plugin-mssql LABEL_sqlite=Sqlite-connection -FILE_sqlite=my_guitar_shop.db +FILE_sqlite=%%E2E_TEST_DATA_DIRECTORY%%/my_guitar_shop.db ENGINE_sqlite=sqlite@dbgate-plugin-sqlite diff --git a/e2e-tests/init/multi-sql.js b/e2e-tests/init/multi-sql.js index f2f60b4f6..d8e8db6ad 100644 --- a/e2e-tests/init/multi-sql.js +++ b/e2e-tests/init/multi-sql.js @@ -97,7 +97,10 @@ async function run() { if (localconfig.sqlite) { await createDb( { - databaseFile: process.env.FILE_sqlite, + databaseFile: process.env.FILE_sqlite.replace( + '%%E2E_TEST_DATA_DIRECTORY%%', + path.join(path.dirname(__dirname), 'tmpdata') + ), singleDatabase: true, engine: 'sqlite@dbgate-plugin-sqlite', }, diff --git a/e2e-tests/tmpdata/.gitkeep b/e2e-tests/tmpdata/.gitkeep new file mode 100644 index 000000000..e69de29bb diff --git a/packages/api/src/controllers/connections.js b/packages/api/src/controllers/connections.js index 9747da2a1..0894e60fa 100644 --- a/packages/api/src/controllers/connections.js +++ b/packages/api/src/controllers/connections.js @@ -62,7 +62,10 @@ function getPortalCollections() { port: process.env[`PORT_${id}`], databaseUrl: process.env[`URL_${id}`], useDatabaseUrl: !!process.env[`URL_${id}`], - databaseFile: process.env[`FILE_${id}`], + databaseFile: process.env[`FILE_${id}`]?.replace( + '%%E2E_TEST_DATA_DIRECTORY%%', + path.join(path.dirname(path.dirname(__dirname)), 'e2e-tests', 'tmpdata') + ), socketPath: process.env[`SOCKET_PATH_${id}`], serviceName: process.env[`SERVICE_NAME_${id}`], authType: process.env[`AUTH_TYPE_${id}`] || (process.env[`SOCKET_PATH_${id}`] ? 'socket' : undefined), diff --git a/packages/api/src/utility/crypting.js b/packages/api/src/utility/crypting.js index 871d561ba..f24ede6a7 100644 --- a/packages/api/src/utility/crypting.js +++ b/packages/api/src/utility/crypting.js @@ -88,6 +88,9 @@ function decryptConnection(connection) { } function pickSafeConnectionInfo(connection) { + if (process.env.LOG_CONNECTION_SENSITIVE_VALUES) { + return connection; + } return _.mapValues(connection, (v, k) => { if (k == 'engine' || k == 'port' || k == 'authType' || k == 'sshMode' || k == 'passwordMode') return v; if (v === null || v === true || v === false) return v;