exodus-framework 2.0.721 → 2.0.723
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.
@@ -17,6 +17,7 @@ declare class SequelizeService extends Service implements IService {
|
|
17
17
|
createDB(hostUuid: string, name: string): Promise<boolean>;
|
18
18
|
deleteDB(hostUuid: string, name: string): Promise<boolean>;
|
19
19
|
getDatabaseConnection(tenantId: string): Promise<false | Sequelize>;
|
20
|
+
testHostConnections(host: string, port: number, username: string, password: string): Promise<boolean>;
|
20
21
|
initDatabase(tenantId: string): Promise<false | Sequelize>;
|
21
22
|
registerModels(models: ModelStatic<any>[]): void;
|
22
23
|
getModel<M extends typeof Model<any, any>>(model: typeof Model<any, any> & {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"sequelize.d.ts","sourceRoot":"","sources":["../../src/services/sequelize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE1D,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;
|
1
|
+
{"version":3,"file":"sequelize.d.ts","sourceRoot":"","sources":["../../src/services/sequelize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE1D,OAAO,OAAO,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAgB,MAAM,WAAW,CAAC;AAcpD,cAAM,gBAAiB,SAAQ,OAAQ,YAAW,QAAQ;IACxD,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;IAC3B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACpC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IACvD,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;;IAM5B,IAAI;IAOJ,mBAAmB;IAgCzB,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,SAAI;IAerC,mBAAmB;IAGb,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IA6CvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;IA0CvC,qBAAqB,CAAC,QAAQ,EAAE,MAAM;IA4BtC,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IA0BlF,YAAY,CAAC,QAAQ,EAAE,MAAM;IAsDnC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE;IAInC,QAAQ,CAAC,CAAC,SAAS,OAAO,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,EAC7C,KAAK,EAAE,OAAO,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG;QAAE,UAAU,EAAE,CAAC,UAAU,EAAE,SAAS,KAAK,CAAC,CAAA;KAAE,EAC5E,QAAQ,EAAE,MAAM;IAwBlB,uBAAuB,CAAC,MAAM,EAAE,MAAM;;;;IAOtC,sBAAsB,CAAC,QAAQ,EAAE,MAAM;CAGxC;AAED,eAAe,gBAAgB,CAAC"}
|
@@ -7,11 +7,11 @@ exports.default = void 0;
|
|
7
7
|
var _sequelize = require("sequelize");
|
8
8
|
var _app = require("../app");
|
9
9
|
var _service = _interopRequireDefault(require("../app/service"));
|
10
|
+
var _models = require("../models");
|
10
11
|
var _DatabaseHost = require("../models/DatabaseHost");
|
11
12
|
var _database = require("../utils/database");
|
12
13
|
var _logger = _interopRequireDefault(require("../utils/logger"));
|
13
14
|
var _error = require("./error");
|
14
|
-
var _models = require("../models");
|
15
15
|
var _security = _interopRequireDefault(require("./security"));
|
16
16
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
17
17
|
/**
|
@@ -127,7 +127,10 @@ class SequelizeService extends _service.default {
|
|
127
127
|
this.log('Database host information not found: ' + hostUuid);
|
128
128
|
return false;
|
129
129
|
}
|
130
|
+
const queryHost = host.host.split(':');
|
130
131
|
const sequelize = new _sequelize.Sequelize({
|
132
|
+
host: queryHost[0],
|
133
|
+
port: Number(queryHost[1]),
|
131
134
|
dialect: host.dialect,
|
132
135
|
username: host.username,
|
133
136
|
password: host.password,
|
@@ -181,6 +184,27 @@ class SequelizeService extends _service.default {
|
|
181
184
|
const queryId = `${relation.hostUuid}@${this.getDatabaseNamePattern(relation.envToken)}`;
|
182
185
|
return this.connections.get(queryId) || (await this.initDatabase(tenantId));
|
183
186
|
}
|
187
|
+
async testHostConnections(host, port, username, password) {
|
188
|
+
const sequelize = new _sequelize.Sequelize({
|
189
|
+
host,
|
190
|
+
port,
|
191
|
+
username,
|
192
|
+
password,
|
193
|
+
timezone: '-03:00',
|
194
|
+
logging(sql, timing) {
|
195
|
+
(0, _logger.default)().trace('DATABASE', sql, timing);
|
196
|
+
}
|
197
|
+
});
|
198
|
+
return new Promise(resolve => {
|
199
|
+
sequelize.authenticate().then(async () => {
|
200
|
+
resolve(true);
|
201
|
+
}).catch(reason => {
|
202
|
+
resolve(false);
|
203
|
+
}).finally(() => {
|
204
|
+
sequelize.close();
|
205
|
+
});
|
206
|
+
});
|
207
|
+
}
|
184
208
|
async initDatabase(tenantId) {
|
185
209
|
const {
|
186
210
|
con_uuid: hostUuid,
|