mirror of
https://github.com/dbgate/dbgate
synced 2024-11-10 05:36:29 +00:00
30 lines
914 B
JavaScript
30 lines
914 B
JavaScript
const requireEngineDriver = require('dbgate-api/src/utility/requireEngineDriver');
|
|
const engines = require('./engines');
|
|
const { extractConnection } = require('./tools');
|
|
global.DBGATE_TOOLS = require('dbgate-tools');
|
|
|
|
async function connectEngine(engine) {
|
|
const connection = extractConnection(engine);
|
|
const driver = requireEngineDriver(connection);
|
|
for (;;) {
|
|
try {
|
|
const conn = await driver.connect(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();
|