This commit is contained in:
Jan Prochazka
2021-05-27 12:26:20 +02:00
parent 35a48fb3d5
commit 9dbe73d9c3
3 changed files with 19 additions and 17 deletions

View File

@@ -2,23 +2,26 @@ const requireEngineDriver = require('dbgate-api/src/utility/requireEngineDriver'
const engines = require('./engines');
global.DBGATE_TOOLS = require('dbgate-tools');
async function run() {
for (const engine of engines) {
const driver = requireEngineDriver(engine.connection);
for (;;) {
try {
const conn = await driver.connect(engine.connection);
await driver.getVersion(conn);
console.log(`Connect to ${engine.label} - OK`);
await driver.close(conn);
break;
} catch (err) {
console.log(`Waiting for ${engine.label}`);
await new Promise(resolve => setTimeout(resolve, 1000));
continue;
}
async function connectEngine(engine) {
const driver = requireEngineDriver(engine.connection);
for (;;) {
try {
const conn = await driver.connect(engine.connection);
await driver.getVersion(conn);
console.log(`Connect to ${engine.label} - OK`);
await driver.close(conn);
return;
} catch (err) {
console.log(`Waiting for ${engine.label}, error: ${err.message}`);
await new Promise(resolve => setTimeout(resolve, 2500));
continue;
}
}
}
async function run() {
await new Promise(resolve => setTimeout(resolve, 10000));
await Promise.all(engines.map(engine => connectEngine(engine)));
}
run();