@l-v-yonsama/multi-platform-database-drivers 1.1.2 → 1.3.0
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.
- package/built/src/drivers/AwsDriver.d.ts +6 -0
- package/built/src/drivers/AwsDriver.js +84 -4
- package/built/src/drivers/AwsDriver.js.map +1 -1
- package/built/src/drivers/RedisDriver.d.ts +5 -2
- package/built/src/drivers/RedisDriver.js +67 -0
- package/built/src/drivers/RedisDriver.js.map +1 -1
- package/built/src/drivers/aws/AwsCloudFormationServiceClient.d.ts +35 -0
- package/built/src/drivers/aws/AwsCloudFormationServiceClient.js +197 -0
- package/built/src/drivers/aws/AwsCloudFormationServiceClient.js.map +1 -0
- package/built/src/drivers/aws/AwsCloudwatchServiceClient.js +1 -4
- package/built/src/drivers/aws/AwsCloudwatchServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsDynamoServiceClient.js +1 -4
- package/built/src/drivers/aws/AwsDynamoServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsS3ServiceClient.js +4 -6
- package/built/src/drivers/aws/AwsS3ServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSESServiceClient.js +23 -0
- package/built/src/drivers/aws/AwsSESServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSQSServiceClient.d.ts +1 -0
- package/built/src/drivers/aws/AwsSQSServiceClient.js +32 -0
- package/built/src/drivers/aws/AwsSQSServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSecretsManagerServiceClient.d.ts +19 -0
- package/built/src/drivers/aws/AwsSecretsManagerServiceClient.js +118 -0
- package/built/src/drivers/aws/AwsSecretsManagerServiceClient.js.map +1 -0
- package/built/src/drivers/aws/AwsServiceClient.d.ts +1 -0
- package/built/src/drivers/aws/AwsServiceClient.js +11 -0
- package/built/src/drivers/aws/AwsServiceClient.js.map +1 -1
- package/built/src/drivers/aws/AwsSsmServiceClient.d.ts +19 -0
- package/built/src/drivers/aws/AwsSsmServiceClient.js +116 -0
- package/built/src/drivers/aws/AwsSsmServiceClient.js.map +1 -0
- package/built/src/drivers/aws/index.d.ts +3 -0
- package/built/src/drivers/aws/index.js +3 -0
- package/built/src/drivers/aws/index.js.map +1 -1
- package/built/src/helpers/prompts/AwsPromptHelper.js +93 -2
- package/built/src/helpers/prompts/AwsPromptHelper.js.map +1 -1
- package/built/src/resource/DbResource.d.ts +21 -3
- package/built/src/resource/DbResource.js +82 -1
- package/built/src/resource/DbResource.js.map +1 -1
- package/built/src/types/drivers/ScanParams.d.ts +15 -1
- package/built/src/types/resource/AwsCfnStackAttributes.d.ts +164 -0
- package/built/src/types/resource/AwsCfnStackAttributes.js +56 -0
- package/built/src/types/resource/AwsCfnStackAttributes.js.map +1 -0
- package/built/src/types/resource/AwsSESIdentityAttributes.d.ts +17 -0
- package/built/src/types/resource/AwsSESIdentityAttributes.js +3 -0
- package/built/src/types/resource/AwsSESIdentityAttributes.js.map +1 -0
- package/built/src/types/resource/AwsSQSAttributes.d.ts +1 -0
- package/built/src/types/resource/AwsSecretAttributes.d.ts +6 -0
- package/built/src/types/resource/AwsSecretAttributes.js +3 -0
- package/built/src/types/resource/AwsSecretAttributes.js.map +1 -0
- package/built/src/types/resource/AwsServiceType.d.ts +4 -1
- package/built/src/types/resource/AwsServiceType.js +3 -0
- package/built/src/types/resource/AwsServiceType.js.map +1 -1
- package/built/src/types/resource/AwsSsmParameterAttributes.d.ts +12 -0
- package/built/src/types/resource/AwsSsmParameterAttributes.js +3 -0
- package/built/src/types/resource/AwsSsmParameterAttributes.js.map +1 -0
- package/built/src/types/resource/ConnectionSetting.d.ts +2 -2
- package/built/src/types/resource/ConnectionSetting.js.map +1 -1
- package/built/src/types/resource/ResourceType.d.ts +5 -0
- package/built/src/types/resource/ResourceType.js +5 -0
- package/built/src/types/resource/ResourceType.js.map +1 -1
- package/built/src/types/resource/index.d.ts +4 -0
- package/built/src/types/resource/index.js +4 -0
- package/built/src/types/resource/index.js.map +1 -1
- package/built/src/utils/cfn/applicationDiagram.d.ts +2 -0
- package/built/src/utils/cfn/applicationDiagram.js +134 -0
- package/built/src/utils/cfn/applicationDiagram.js.map +1 -0
- package/built/src/utils/cfn/applicationRelations.d.ts +28 -0
- package/built/src/utils/cfn/applicationRelations.js +338 -0
- package/built/src/utils/cfn/applicationRelations.js.map +1 -0
- package/built/src/utils/cfn/architectureDiagram.d.ts +3 -0
- package/built/src/utils/cfn/architectureDiagram.js +238 -0
- package/built/src/utils/cfn/architectureDiagram.js.map +1 -0
- package/built/src/utils/cfn/architectureTopology.d.ts +128 -0
- package/built/src/utils/cfn/architectureTopology.js +523 -0
- package/built/src/utils/cfn/architectureTopology.js.map +1 -0
- package/built/src/utils/cfn/cfnDependencyGraphDiagram.d.ts +2 -0
- package/built/src/utils/cfn/cfnDependencyGraphDiagram.js +198 -0
- package/built/src/utils/cfn/cfnDependencyGraphDiagram.js.map +1 -0
- package/built/src/utils/cfn/diagramFileModel.d.ts +2 -0
- package/built/src/utils/cfn/diagramFileModel.js +178 -0
- package/built/src/utils/cfn/diagramFileModel.js.map +1 -0
- package/built/src/utils/cfn/drawioApplicationDiagram.d.ts +2 -0
- package/built/src/utils/cfn/drawioApplicationDiagram.js +197 -0
- package/built/src/utils/cfn/drawioApplicationDiagram.js.map +1 -0
- package/built/src/utils/cfn/drawioInfrastructureDiagrams.d.ts +4 -0
- package/built/src/utils/cfn/drawioInfrastructureDiagrams.js +444 -0
- package/built/src/utils/cfn/drawioInfrastructureDiagrams.js.map +1 -0
- package/built/src/utils/cfn/drawioXml.d.ts +25 -0
- package/built/src/utils/cfn/drawioXml.js +53 -0
- package/built/src/utils/cfn/drawioXml.js.map +1 -0
- package/built/src/utils/cfn/generateDiagram.d.ts +2 -0
- package/built/src/utils/cfn/generateDiagram.js +23 -0
- package/built/src/utils/cfn/generateDiagram.js.map +1 -0
- package/built/src/utils/cfn/icons.d.ts +1 -0
- package/built/src/utils/cfn/icons.js +60 -0
- package/built/src/utils/cfn/icons.js.map +1 -0
- package/built/src/utils/cfn/index.d.ts +11 -0
- package/built/src/utils/cfn/index.js +33 -0
- package/built/src/utils/cfn/index.js.map +1 -0
- package/built/src/utils/cfn/intrinsics.d.ts +12 -0
- package/built/src/utils/cfn/intrinsics.js +158 -0
- package/built/src/utils/cfn/intrinsics.js.map +1 -0
- package/built/src/utils/cfn/mermaidFlowchart.d.ts +3 -0
- package/built/src/utils/cfn/mermaidFlowchart.js +14 -0
- package/built/src/utils/cfn/mermaidFlowchart.js.map +1 -0
- package/built/src/utils/cfn/multiAzDeploymentDataPaths.d.ts +27 -0
- package/built/src/utils/cfn/multiAzDeploymentDataPaths.js +257 -0
- package/built/src/utils/cfn/multiAzDeploymentDataPaths.js.map +1 -0
- package/built/src/utils/cfn/naming.d.ts +6 -0
- package/built/src/utils/cfn/naming.js +33 -0
- package/built/src/utils/cfn/naming.js.map +1 -0
- package/built/src/utils/cfn/resourceDependencies.d.ts +2 -0
- package/built/src/utils/cfn/resourceDependencies.js +33 -0
- package/built/src/utils/cfn/resourceDependencies.js.map +1 -0
- package/built/src/utils/cfn/templateParsing.d.ts +3 -0
- package/built/src/utils/cfn/templateParsing.js +73 -0
- package/built/src/utils/cfn/templateParsing.js.map +1 -0
- package/built/src/utils/cfn/viewpoints.d.ts +3 -0
- package/built/src/utils/cfn/viewpoints.js +122 -0
- package/built/src/utils/cfn/viewpoints.js.map +1 -0
- package/built/src/utils/index.d.ts +1 -0
- package/built/src/utils/index.js +1 -0
- package/built/src/utils/index.js.map +1 -1
- package/package.json +9 -1
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
import { AwsCredentialIdentity, AwsCredentialIdentityProvider } from '@aws-sdk/types';
|
|
2
2
|
import { AwsDatabase, SchemaAndTableName } from '../resource';
|
|
3
3
|
import { AwsServiceType, ConnectionSetting, LimitClauseStyle, QueryParams, ResourceType, SQLLang } from '../types';
|
|
4
|
+
import { AwsCloudFormationServiceClient } from './aws/AwsCloudFormationServiceClient';
|
|
4
5
|
import { AwsCloudwatchServiceClient } from './aws/AwsCloudwatchServiceClient';
|
|
5
6
|
import { AwsS3ServiceClient } from './aws/AwsS3ServiceClient';
|
|
6
7
|
import { AwsServiceClient } from './aws/AwsServiceClient';
|
|
7
8
|
import { AwsSESServiceClient } from './aws/AwsSESServiceClient';
|
|
8
9
|
import { AwsSQSServiceClient } from './aws/AwsSQSServiceClient';
|
|
9
10
|
import { AwsDynamoServiceClient } from './aws/AwsDynamoServiceClient';
|
|
11
|
+
import { AwsSsmServiceClient } from './aws/AwsSsmServiceClient';
|
|
12
|
+
import { AwsSecretsManagerServiceClient } from './aws/AwsSecretsManagerServiceClient';
|
|
10
13
|
import { ResultSetData } from '@l-v-yonsama/rdh';
|
|
11
14
|
import { BaseSQLSupportDriver } from './BaseSQLSupportDriver';
|
|
12
15
|
import { QuoteChar } from '../helpers';
|
|
@@ -21,6 +24,9 @@ export declare class AwsDriver extends BaseSQLSupportDriver<AwsDatabase> {
|
|
|
21
24
|
cloudwatchClient: AwsCloudwatchServiceClient;
|
|
22
25
|
s3Client: AwsS3ServiceClient;
|
|
23
26
|
dynamoClient: AwsDynamoServiceClient;
|
|
27
|
+
ssmClient: AwsSsmServiceClient;
|
|
28
|
+
secretsManagerClient: AwsSecretsManagerServiceClient;
|
|
29
|
+
cloudFormationClient: AwsCloudFormationServiceClient;
|
|
24
30
|
constructor(conRes: ConnectionSetting);
|
|
25
31
|
protected createClientConfig(): ClientConfigType;
|
|
26
32
|
getSqlLang(): SQLLang;
|
|
@@ -4,11 +4,14 @@ exports.AwsDriver = void 0;
|
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const credential_providers_1 = require("@aws-sdk/credential-providers");
|
|
6
6
|
const types_1 = require("../types");
|
|
7
|
+
const AwsCloudFormationServiceClient_1 = require("./aws/AwsCloudFormationServiceClient");
|
|
7
8
|
const AwsCloudwatchServiceClient_1 = require("./aws/AwsCloudwatchServiceClient");
|
|
8
9
|
const AwsS3ServiceClient_1 = require("./aws/AwsS3ServiceClient");
|
|
9
10
|
const AwsSESServiceClient_1 = require("./aws/AwsSESServiceClient");
|
|
10
11
|
const AwsSQSServiceClient_1 = require("./aws/AwsSQSServiceClient");
|
|
11
12
|
const AwsDynamoServiceClient_1 = require("./aws/AwsDynamoServiceClient");
|
|
13
|
+
const AwsSsmServiceClient_1 = require("./aws/AwsSsmServiceClient");
|
|
14
|
+
const AwsSecretsManagerServiceClient_1 = require("./aws/AwsSecretsManagerServiceClient");
|
|
12
15
|
const BaseSQLSupportDriver_1 = require("./BaseSQLSupportDriver");
|
|
13
16
|
class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
14
17
|
constructor(conRes) {
|
|
@@ -48,6 +51,15 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
48
51
|
case 'DynamoDB':
|
|
49
52
|
client = this.dynamoClient;
|
|
50
53
|
break;
|
|
54
|
+
case 'SSM':
|
|
55
|
+
client = this.ssmClient;
|
|
56
|
+
break;
|
|
57
|
+
case 'SecretsManager':
|
|
58
|
+
client = this.secretsManagerClient;
|
|
59
|
+
break;
|
|
60
|
+
case 'CloudFormation':
|
|
61
|
+
client = this.cloudFormationClient;
|
|
62
|
+
break;
|
|
51
63
|
}
|
|
52
64
|
return client;
|
|
53
65
|
}
|
|
@@ -68,6 +80,15 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
68
80
|
case 'DynamoTable':
|
|
69
81
|
client = this.dynamoClient;
|
|
70
82
|
break;
|
|
83
|
+
case 'SsmParameter':
|
|
84
|
+
client = this.ssmClient;
|
|
85
|
+
break;
|
|
86
|
+
case 'SecretsManagerSecret':
|
|
87
|
+
client = this.secretsManagerClient;
|
|
88
|
+
break;
|
|
89
|
+
case 'CfnStack':
|
|
90
|
+
client = this.cloudFormationClient;
|
|
91
|
+
break;
|
|
71
92
|
}
|
|
72
93
|
return client;
|
|
73
94
|
}
|
|
@@ -81,10 +102,9 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
81
102
|
return (0, credential_providers_1.fromEnv)();
|
|
82
103
|
}
|
|
83
104
|
}
|
|
84
|
-
return {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
};
|
|
105
|
+
return Object.assign({ accessKeyId: user, secretAccessKey: password }, ((awsSetting === null || awsSetting === void 0 ? void 0 : awsSetting.sessionToken)
|
|
106
|
+
? { sessionToken: awsSetting.sessionToken }
|
|
107
|
+
: {}));
|
|
88
108
|
}
|
|
89
109
|
connectSub() {
|
|
90
110
|
var _a;
|
|
@@ -96,6 +116,9 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
96
116
|
const s3 = new AwsS3ServiceClient_1.AwsS3ServiceClient(this.conRes, config, this);
|
|
97
117
|
const ses = new AwsSESServiceClient_1.AwsSESServiceClient(this.conRes, config, this);
|
|
98
118
|
const dynamo = new AwsDynamoServiceClient_1.AwsDynamoServiceClient(this.conRes, config, this);
|
|
119
|
+
const ssm = new AwsSsmServiceClient_1.AwsSsmServiceClient(this.conRes, config, this);
|
|
120
|
+
const secretsManager = new AwsSecretsManagerServiceClient_1.AwsSecretsManagerServiceClient(this.conRes, config, this);
|
|
121
|
+
const cloudFormation = new AwsCloudFormationServiceClient_1.AwsCloudFormationServiceClient(this.conRes, config, this);
|
|
99
122
|
const { services } = this.conRes.awsSetting;
|
|
100
123
|
let message = '';
|
|
101
124
|
if (services.includes(types_1.AwsServiceType.Cloudwatch)) {
|
|
@@ -148,6 +171,36 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
148
171
|
this.dynamoClient = dynamo;
|
|
149
172
|
}
|
|
150
173
|
}
|
|
174
|
+
if (services.includes(types_1.AwsServiceType.SSM)) {
|
|
175
|
+
message = yield ssm.connect();
|
|
176
|
+
if (message) {
|
|
177
|
+
messageList.push(message);
|
|
178
|
+
this.ssmClient = null;
|
|
179
|
+
}
|
|
180
|
+
else {
|
|
181
|
+
this.ssmClient = ssm;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
if (services.includes(types_1.AwsServiceType.SecretsManager)) {
|
|
185
|
+
message = yield secretsManager.connect();
|
|
186
|
+
if (message) {
|
|
187
|
+
messageList.push(message);
|
|
188
|
+
this.secretsManagerClient = null;
|
|
189
|
+
}
|
|
190
|
+
else {
|
|
191
|
+
this.secretsManagerClient = secretsManager;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
if (services.includes(types_1.AwsServiceType.CloudFormation)) {
|
|
195
|
+
message = yield cloudFormation.connect();
|
|
196
|
+
if (message) {
|
|
197
|
+
messageList.push(message);
|
|
198
|
+
this.cloudFormationClient = null;
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
this.cloudFormationClient = cloudFormation;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
151
204
|
const ssoExpired = messageList.some((msg) => typeof msg === 'string' &&
|
|
152
205
|
(msg.includes('The SSO session associated with this profile has expired') ||
|
|
153
206
|
msg.includes('SSO session has expired') ||
|
|
@@ -172,6 +225,9 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
172
225
|
this.sqsClient,
|
|
173
226
|
this.cloudwatchClient,
|
|
174
227
|
this.dynamoClient,
|
|
228
|
+
this.ssmClient,
|
|
229
|
+
this.secretsManagerClient,
|
|
230
|
+
this.cloudFormationClient,
|
|
175
231
|
]) {
|
|
176
232
|
if (!client) {
|
|
177
233
|
continue;
|
|
@@ -224,6 +280,27 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
224
280
|
messageList.push(message);
|
|
225
281
|
}
|
|
226
282
|
}
|
|
283
|
+
if (services.includes(types_1.AwsServiceType.SSM)) {
|
|
284
|
+
const client = new AwsSsmServiceClient_1.AwsSsmServiceClient(this.conRes, config, this);
|
|
285
|
+
const message = yield client.test(with_connect);
|
|
286
|
+
if (message) {
|
|
287
|
+
messageList.push(message);
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
if (services.includes(types_1.AwsServiceType.SecretsManager)) {
|
|
291
|
+
const client = new AwsSecretsManagerServiceClient_1.AwsSecretsManagerServiceClient(this.conRes, config, this);
|
|
292
|
+
const message = yield client.test(with_connect);
|
|
293
|
+
if (message) {
|
|
294
|
+
messageList.push(message);
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
if (services.includes(types_1.AwsServiceType.CloudFormation)) {
|
|
298
|
+
const client = new AwsCloudFormationServiceClient_1.AwsCloudFormationServiceClient(this.conRes, config, this);
|
|
299
|
+
const message = yield client.test(with_connect);
|
|
300
|
+
if (message) {
|
|
301
|
+
messageList.push(message);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
227
304
|
return messageList.join(',');
|
|
228
305
|
});
|
|
229
306
|
}
|
|
@@ -236,6 +313,9 @@ class AwsDriver extends BaseSQLSupportDriver_1.BaseSQLSupportDriver {
|
|
|
236
313
|
this.cloudwatchClient,
|
|
237
314
|
this.s3Client,
|
|
238
315
|
this.dynamoClient,
|
|
316
|
+
this.ssmClient,
|
|
317
|
+
this.secretsManagerClient,
|
|
318
|
+
this.cloudFormationClient,
|
|
239
319
|
]) {
|
|
240
320
|
if (!client) {
|
|
241
321
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AwsDriver.js","sourceRoot":"","sources":["../../../src/drivers/AwsDriver.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AwsDriver.js","sourceRoot":"","sources":["../../../src/drivers/AwsDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,8 @@ import { ResultSetData } from '@l-v-yonsama/rdh';
|
|
|
2
2
|
import { Redis } from 'ioredis';
|
|
3
3
|
import { DbKey, RedisDatabase, RedisKeyParams } from '../resource';
|
|
4
4
|
import { ConnectionSetting, RedisKeyType, RedisScanParams } from '../types';
|
|
5
|
-
import { BaseDriver, Scannable } from './BaseDriver';
|
|
6
|
-
export declare class RedisDriver extends BaseDriver<RedisDatabase> implements Scannable<RedisScanParams
|
|
5
|
+
import { BaseDriver, Commandable, Scannable } from './BaseDriver';
|
|
6
|
+
export declare class RedisDriver extends BaseDriver<RedisDatabase> implements Scannable<RedisScanParams>, Commandable {
|
|
7
7
|
client: Redis | undefined;
|
|
8
8
|
constructor(conRes: ConnectionSetting);
|
|
9
9
|
connectSub(): Promise<string>;
|
|
@@ -13,6 +13,9 @@ export declare class RedisDriver extends BaseDriver<RedisDatabase> implements Sc
|
|
|
13
13
|
delete(key: string): Promise<void>;
|
|
14
14
|
scanStream(params: RedisScanParams): Promise<DbKey<RedisKeyParams>[]>;
|
|
15
15
|
scan(params: RedisScanParams): Promise<ResultSetData>;
|
|
16
|
+
executeCommand(command: string): Promise<ResultSetData>;
|
|
17
|
+
private tokenizeCommand;
|
|
18
|
+
private buildCommandResultSet;
|
|
16
19
|
getValueByKey(client: Redis, key: string, type: RedisKeyType): Promise<any>;
|
|
17
20
|
getInfomationSchemasSub(): Promise<Array<RedisDatabase>>;
|
|
18
21
|
closeSub(): Promise<string>;
|
|
@@ -174,6 +174,73 @@ class RedisDriver extends BaseDriver_1.BaseDriver {
|
|
|
174
174
|
return rdb.build();
|
|
175
175
|
});
|
|
176
176
|
}
|
|
177
|
+
executeCommand(command) {
|
|
178
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
179
|
+
const startTime = new Date().getTime();
|
|
180
|
+
const { cmdName, args } = this.tokenizeCommand(command);
|
|
181
|
+
const reply = yield this.client.call(cmdName, ...args);
|
|
182
|
+
const elapsedTimeMilli = new Date().getTime() - startTime;
|
|
183
|
+
const rdb = this.buildCommandResultSet(cmdName, reply);
|
|
184
|
+
rdb.setSummary({
|
|
185
|
+
elapsedTimeMilli,
|
|
186
|
+
selectedRows: rdb.rs.rows.length,
|
|
187
|
+
});
|
|
188
|
+
const result = rdb.build();
|
|
189
|
+
result.meta.command = command;
|
|
190
|
+
return result;
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
tokenizeCommand(command) {
|
|
194
|
+
var _a;
|
|
195
|
+
const matches = (_a = command.trim().match(/"([^"]*)"|'([^']*)'|\S+/g)) !== null && _a !== void 0 ? _a : [];
|
|
196
|
+
const tokens = matches.map((tok) => {
|
|
197
|
+
if ((tok.startsWith('"') && tok.endsWith('"')) ||
|
|
198
|
+
(tok.startsWith("'") && tok.endsWith("'"))) {
|
|
199
|
+
return tok.slice(1, -1);
|
|
200
|
+
}
|
|
201
|
+
return tok;
|
|
202
|
+
});
|
|
203
|
+
const [cmdName, ...args] = tokens;
|
|
204
|
+
if (!cmdName) {
|
|
205
|
+
throw new Error('Empty command');
|
|
206
|
+
}
|
|
207
|
+
return { cmdName, args };
|
|
208
|
+
}
|
|
209
|
+
buildCommandResultSet(cmdName, reply) {
|
|
210
|
+
if (cmdName.toUpperCase() === 'HGETALL' &&
|
|
211
|
+
Array.isArray(reply) &&
|
|
212
|
+
reply.length % 2 === 0) {
|
|
213
|
+
const rdb = new rdh_1.ResultSetDataBuilder([
|
|
214
|
+
(0, rdh_1.createRdhKey)({ name: 'field', type: rdh_1.GeneralColumnType.TEXT, width: 150 }),
|
|
215
|
+
(0, rdh_1.createRdhKey)({ name: 'value', type: rdh_1.GeneralColumnType.TEXT, width: 300 }),
|
|
216
|
+
]);
|
|
217
|
+
for (let i = 0; i < reply.length; i += 2) {
|
|
218
|
+
rdb.addRow({ field: reply[i], value: reply[i + 1] });
|
|
219
|
+
}
|
|
220
|
+
rdb.updateMeta({
|
|
221
|
+
tableName: `Redis${cmdName.toUpperCase()}`,
|
|
222
|
+
connectionName: this.conRes.name,
|
|
223
|
+
});
|
|
224
|
+
return rdb;
|
|
225
|
+
}
|
|
226
|
+
const rdb = new rdh_1.ResultSetDataBuilder([
|
|
227
|
+
(0, rdh_1.createRdhKey)({ name: 'value', type: rdh_1.GeneralColumnType.JSON, width: 300 }),
|
|
228
|
+
]);
|
|
229
|
+
if (Array.isArray(reply)) {
|
|
230
|
+
reply.forEach((el) => {
|
|
231
|
+
const value = el !== null && typeof el === 'object' ? JSON.stringify(el) : el;
|
|
232
|
+
rdb.addRow({ value });
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
rdb.addRow({ value: reply });
|
|
237
|
+
}
|
|
238
|
+
rdb.updateMeta({
|
|
239
|
+
tableName: `Redis${cmdName.toUpperCase()}`,
|
|
240
|
+
connectionName: this.conRes.name,
|
|
241
|
+
});
|
|
242
|
+
return rdb;
|
|
243
|
+
}
|
|
177
244
|
getValueByKey(client, key, type) {
|
|
178
245
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
179
246
|
switch (type) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RedisDriver.js","sourceRoot":"","sources":["../../../src/drivers/RedisDriver.ts"],"names":[],"mappings":";;;;AAEA,0CAK0B;AAC1B,qCAAgC;AAChC,0CAAmE;AACnE,oCAA4E;AAC5E,oCAAsC;AACtC,
|
|
1
|
+
{"version":3,"file":"RedisDriver.js","sourceRoot":"","sources":["../../../src/drivers/RedisDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { CloudFormationClient, StackSummary, TemplateStage } from '@aws-sdk/client-cloudformation';
|
|
2
|
+
import { ResultSetData } from '@l-v-yonsama/rdh';
|
|
3
|
+
import { AwsDatabase } from '../../resource';
|
|
4
|
+
import { AwsCfnStackResource, AwsCloudFormationScanParams, ConnectionSetting } from '../../types';
|
|
5
|
+
import { AwsDriver, ClientConfigType } from '../AwsDriver';
|
|
6
|
+
import { Scannable } from '../BaseDriver';
|
|
7
|
+
import { AwsServiceClient } from './AwsServiceClient';
|
|
8
|
+
export type AccountLimits = {
|
|
9
|
+
StackLimit?: number;
|
|
10
|
+
StackOutputsLimit?: number;
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
};
|
|
13
|
+
export type ListStackParams = {
|
|
14
|
+
filterType?: 'active' | 'inProgress' | 'completed' | 'deleted' | 'failed';
|
|
15
|
+
limit?: number;
|
|
16
|
+
};
|
|
17
|
+
export declare class AwsCloudFormationServiceClient extends AwsServiceClient implements Scannable<AwsCloudFormationScanParams> {
|
|
18
|
+
cfnClient: CloudFormationClient;
|
|
19
|
+
constructor(conRes: ConnectionSetting, config: ClientConfigType, awsDriver: AwsDriver);
|
|
20
|
+
protected connectSub(): Promise<string>;
|
|
21
|
+
protected testSub(): Promise<void>;
|
|
22
|
+
listStacks(params?: ListStackParams): Promise<StackSummary[]>;
|
|
23
|
+
private describeStackResources;
|
|
24
|
+
describeAccountLimits(): Promise<AccountLimits>;
|
|
25
|
+
getTemplate(params: {
|
|
26
|
+
stackName: string;
|
|
27
|
+
convertTo: 'yaml' | 'json';
|
|
28
|
+
templateStage?: TemplateStage;
|
|
29
|
+
}): Promise<string>;
|
|
30
|
+
getResourcesWithDependencies(stackName: string): Promise<AwsCfnStackResource[]>;
|
|
31
|
+
getInfomationSchemas(): Promise<AwsDatabase>;
|
|
32
|
+
scan(params: AwsCloudFormationScanParams): Promise<ResultSetData>;
|
|
33
|
+
protected closeSub(): Promise<void>;
|
|
34
|
+
protected getServiceName(): string;
|
|
35
|
+
}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AwsCloudFormationServiceClient = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const client_cloudformation_1 = require("@aws-sdk/client-cloudformation");
|
|
6
|
+
const rdh_1 = require("@l-v-yonsama/rdh");
|
|
7
|
+
const resource_1 = require("../../resource");
|
|
8
|
+
const types_1 = require("../../types");
|
|
9
|
+
const utils_1 = require("../../utils");
|
|
10
|
+
const js_yaml_1 = tslib_1.__importDefault(require("js-yaml"));
|
|
11
|
+
const AwsServiceClient_1 = require("./AwsServiceClient");
|
|
12
|
+
const LIVE_STACK_STATUSES = Object.values(client_cloudformation_1.StackStatus).filter((status) => status !== client_cloudformation_1.StackStatus.DELETE_COMPLETE);
|
|
13
|
+
class AwsCloudFormationServiceClient extends AwsServiceClient_1.AwsServiceClient {
|
|
14
|
+
constructor(conRes, config, awsDriver) {
|
|
15
|
+
super(conRes, config, awsDriver);
|
|
16
|
+
}
|
|
17
|
+
connectSub() {
|
|
18
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
this.cfnClient = new client_cloudformation_1.CloudFormationClient(this.config);
|
|
20
|
+
return this.test(false);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
testSub() {
|
|
24
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
if (this.cfnClient) {
|
|
26
|
+
yield this.cfnClient.send(new client_cloudformation_1.ListStacksCommand({ StackStatusFilter: LIVE_STACK_STATUSES }));
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
listStacks(params) {
|
|
31
|
+
var _a;
|
|
32
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
const { filterType, limit = 100 } = params !== null && params !== void 0 ? params : {};
|
|
34
|
+
let StackStatusFilter = LIVE_STACK_STATUSES;
|
|
35
|
+
switch (filterType) {
|
|
36
|
+
case 'active':
|
|
37
|
+
StackStatusFilter = types_1.ACTIVE_STATUSES;
|
|
38
|
+
break;
|
|
39
|
+
case 'inProgress':
|
|
40
|
+
StackStatusFilter = types_1.IN_PROGRESS_STATUSES;
|
|
41
|
+
break;
|
|
42
|
+
case 'completed':
|
|
43
|
+
StackStatusFilter = types_1.COMPLETED_STATUSES;
|
|
44
|
+
break;
|
|
45
|
+
case 'deleted':
|
|
46
|
+
StackStatusFilter = types_1.DELETED_STATUSES;
|
|
47
|
+
break;
|
|
48
|
+
case 'failed':
|
|
49
|
+
StackStatusFilter = types_1.FAILED_STATUSES;
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
let NextToken = undefined;
|
|
53
|
+
const list = [];
|
|
54
|
+
do {
|
|
55
|
+
const res = yield this.cfnClient.send(new client_cloudformation_1.ListStacksCommand({ StackStatusFilter, NextToken }));
|
|
56
|
+
list.push(...((_a = res.StackSummaries) !== null && _a !== void 0 ? _a : []));
|
|
57
|
+
if (list.length >= limit) {
|
|
58
|
+
return list.slice(0, limit);
|
|
59
|
+
}
|
|
60
|
+
NextToken = res.NextToken;
|
|
61
|
+
} while (NextToken);
|
|
62
|
+
return list;
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
describeStackResources(stackName) {
|
|
66
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
const { StackResources } = yield this.cfnClient.send(new client_cloudformation_1.DescribeStackResourcesCommand({ StackName: stackName }));
|
|
68
|
+
return (StackResources !== null && StackResources !== void 0 ? StackResources : []).map((it) => ({
|
|
69
|
+
logicalId: it.LogicalResourceId,
|
|
70
|
+
physicalId: it.PhysicalResourceId,
|
|
71
|
+
resourceType: it.ResourceType,
|
|
72
|
+
}));
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
describeAccountLimits() {
|
|
76
|
+
var _a;
|
|
77
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
const res = yield this.cfnClient.send(new client_cloudformation_1.DescribeAccountLimitsCommand({}));
|
|
79
|
+
const others = {};
|
|
80
|
+
let StackLimit;
|
|
81
|
+
let StackOutputsLimit;
|
|
82
|
+
((_a = res.AccountLimits) !== null && _a !== void 0 ? _a : []).forEach((it) => {
|
|
83
|
+
if (it.Name === 'StackLimit') {
|
|
84
|
+
StackLimit = it.Value;
|
|
85
|
+
}
|
|
86
|
+
else if (it.Name === 'StackOutputsLimit') {
|
|
87
|
+
StackOutputsLimit = it.Value;
|
|
88
|
+
}
|
|
89
|
+
else if (it.Name) {
|
|
90
|
+
others[it.Name] = it.Value;
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
return Object.assign({ StackLimit, StackOutputsLimit }, others);
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
getTemplate(params) {
|
|
97
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
const { stackName, templateStage = 'Original', convertTo } = params;
|
|
99
|
+
const res = yield this.cfnClient.send(new client_cloudformation_1.GetTemplateCommand({
|
|
100
|
+
StackName: stackName,
|
|
101
|
+
TemplateStage: templateStage,
|
|
102
|
+
}));
|
|
103
|
+
const templateBody = res.TemplateBody;
|
|
104
|
+
if (!templateBody) {
|
|
105
|
+
throw new Error('TemplateBody is undefined or empty.');
|
|
106
|
+
}
|
|
107
|
+
const originalFormat = (0, utils_1.isJson)(templateBody) ? 'json' : 'yaml';
|
|
108
|
+
if (originalFormat === convertTo) {
|
|
109
|
+
return templateBody;
|
|
110
|
+
}
|
|
111
|
+
if (convertTo === 'json') {
|
|
112
|
+
const jsonObj = (0, utils_1.parseCfnYamlTemplate)(templateBody);
|
|
113
|
+
return JSON.stringify(jsonObj, null, 2);
|
|
114
|
+
}
|
|
115
|
+
const jsonObj = JSON.parse(templateBody);
|
|
116
|
+
return js_yaml_1.default.dump(jsonObj);
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
getResourcesWithDependencies(stackName) {
|
|
120
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
121
|
+
const [resources, templateJson] = yield Promise.all([
|
|
122
|
+
this.describeStackResources(stackName),
|
|
123
|
+
this.getTemplate({ stackName, convertTo: 'json' }),
|
|
124
|
+
]);
|
|
125
|
+
const template = (0, utils_1.parseCfnJsonTemplate)(templateJson);
|
|
126
|
+
const dependenciesByLogicalId = (0, utils_1.extractResourceDependencies)(template);
|
|
127
|
+
return resources.map((resource) => {
|
|
128
|
+
const dependsOn = dependenciesByLogicalId[resource.logicalId];
|
|
129
|
+
return dependsOn ? Object.assign(Object.assign({}, resource), { dependsOn }) : resource;
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
}
|
|
133
|
+
getInfomationSchemas() {
|
|
134
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
135
|
+
if (!this.conRes) {
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
138
|
+
const dbDatabase = new resource_1.AwsDatabase('CloudFormation', types_1.AwsServiceType.CloudFormation);
|
|
139
|
+
try {
|
|
140
|
+
const stacks = (yield this.listStacks()).filter((it) => this.acceptResource(it.StackName));
|
|
141
|
+
for (const stack of stacks) {
|
|
142
|
+
const resources = yield this.describeStackResources(stack.StackName);
|
|
143
|
+
dbDatabase.addChild(new resource_1.DbCfnStack(stack.StackName, {
|
|
144
|
+
stackStatus: stack.StackStatus,
|
|
145
|
+
creationTime: stack.CreationTime,
|
|
146
|
+
resources,
|
|
147
|
+
}));
|
|
148
|
+
}
|
|
149
|
+
dbDatabase.comment = `${dbDatabase.children.length} stacks`;
|
|
150
|
+
}
|
|
151
|
+
catch (e) {
|
|
152
|
+
console.error(e);
|
|
153
|
+
}
|
|
154
|
+
return dbDatabase;
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
scan(params) {
|
|
158
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
159
|
+
const { statusFilter, nameContains, limit } = params;
|
|
160
|
+
let stacks = yield this.listStacks({ filterType: statusFilter, limit });
|
|
161
|
+
if (nameContains) {
|
|
162
|
+
stacks = stacks.filter((it) => { var _a; return (_a = it.StackName) === null || _a === void 0 ? void 0 : _a.includes(nameContains); });
|
|
163
|
+
}
|
|
164
|
+
const rdb = new rdh_1.ResultSetDataBuilder([
|
|
165
|
+
(0, rdh_1.createRdhKey)({ name: 'StackName', type: rdh_1.GeneralColumnType.TEXT }),
|
|
166
|
+
(0, rdh_1.createRdhKey)({ name: 'StackStatus', type: rdh_1.GeneralColumnType.TEXT }),
|
|
167
|
+
(0, rdh_1.createRdhKey)({
|
|
168
|
+
name: 'CreationTime',
|
|
169
|
+
type: rdh_1.GeneralColumnType.TIMESTAMP,
|
|
170
|
+
}),
|
|
171
|
+
(0, rdh_1.createRdhKey)({
|
|
172
|
+
name: 'TemplateDescription',
|
|
173
|
+
type: rdh_1.GeneralColumnType.TEXT,
|
|
174
|
+
}),
|
|
175
|
+
]);
|
|
176
|
+
stacks.forEach((stack) => {
|
|
177
|
+
rdb.addRow({
|
|
178
|
+
StackName: stack.StackName,
|
|
179
|
+
StackStatus: stack.StackStatus,
|
|
180
|
+
CreationTime: stack.CreationTime,
|
|
181
|
+
TemplateDescription: stack.TemplateDescription,
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
return rdb.build();
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
closeSub() {
|
|
188
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
189
|
+
yield this.cfnClient.destroy();
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
getServiceName() {
|
|
193
|
+
return 'CloudFormation';
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
exports.AwsCloudFormationServiceClient = AwsCloudFormationServiceClient;
|
|
197
|
+
//# sourceMappingURL=AwsCloudFormationServiceClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AwsCloudFormationServiceClient.js","sourceRoot":"","sources":["../../../../src/drivers/aws/AwsCloudFormationServiceClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,6 @@ const pluralize_1 = require("pluralize");
|
|
|
8
8
|
const resource_1 = require("../../resource");
|
|
9
9
|
const types_1 = require("../../types");
|
|
10
10
|
const AwsServiceClient_1 = require("./AwsServiceClient");
|
|
11
|
-
const utils_1 = require("../../utils");
|
|
12
11
|
class AwsCloudwatchServiceClient extends AwsServiceClient_1.AwsServiceClient {
|
|
13
12
|
constructor(conRes, config, awsDriver) {
|
|
14
13
|
super(conRes, config, awsDriver);
|
|
@@ -279,9 +278,7 @@ class AwsCloudwatchServiceClient extends AwsServiceClient_1.AwsServiceClient {
|
|
|
279
278
|
const result = yield this.logClient.send(new client_cloudwatch_logs_1.DescribeLogGroupsCommand({ limit: 50, nextToken }));
|
|
280
279
|
if (result.logGroups) {
|
|
281
280
|
for (const logGroup of result.logGroups) {
|
|
282
|
-
|
|
283
|
-
if ((resourceFilter === null || resourceFilter === void 0 ? void 0 : resourceFilter.group) &&
|
|
284
|
-
!(0, utils_1.acceptResourceFilter)(logGroup.logGroupName, resourceFilter.group)) {
|
|
281
|
+
if (!this.acceptResource(logGroup.logGroupName)) {
|
|
285
282
|
continue;
|
|
286
283
|
}
|
|
287
284
|
const res = new resource_1.DbLogGroup(logGroup.logGroupName, logGroup);
|