@gugananuvem/aws-local-simulator 1.0.11 → 1.0.14
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/README.md +349 -72
- package/package.json +12 -2
- package/src/config/config-loader.js +2 -0
- package/src/config/default-config.js +3 -0
- package/src/index.js +18 -2
- package/src/server.js +37 -31
- package/src/services/apigateway/index.js +10 -3
- package/src/services/apigateway/server.js +73 -0
- package/src/services/apigateway/simulator.js +13 -3
- package/src/services/athena/index.js +75 -0
- package/src/services/athena/server.js +101 -0
- package/src/services/athena/simulador.js +998 -0
- package/src/services/athena/simulator.js +346 -0
- package/src/services/cloudformation/index.js +106 -0
- package/src/services/cloudformation/server.js +417 -0
- package/src/services/cloudformation/simulador.js +1045 -0
- package/src/services/cloudtrail/index.js +84 -0
- package/src/services/cloudtrail/server.js +235 -0
- package/src/services/cloudtrail/simulador.js +719 -0
- package/src/services/cloudwatch/index.js +84 -0
- package/src/services/cloudwatch/server.js +366 -0
- package/src/services/cloudwatch/simulador.js +1173 -0
- package/src/services/cognito/index.js +5 -0
- package/src/services/cognito/server.js +54 -3
- package/src/services/cognito/simulator.js +273 -2
- package/src/services/config/index.js +96 -0
- package/src/services/config/server.js +215 -0
- package/src/services/config/simulador.js +1260 -0
- package/src/services/dynamodb/index.js +7 -3
- package/src/services/dynamodb/server.js +4 -2
- package/src/services/dynamodb/simulator.js +39 -29
- package/src/services/eventbridge/index.js +55 -51
- package/src/services/eventbridge/server.js +209 -0
- package/src/services/eventbridge/simulator.js +684 -0
- package/src/services/index.js +30 -4
- package/src/services/kms/index.js +75 -0
- package/src/services/kms/server.js +67 -0
- package/src/services/kms/simulator.js +324 -0
- package/src/services/lambda/handler-loader.js +13 -2
- package/src/services/lambda/index.js +7 -1
- package/src/services/lambda/server.js +32 -39
- package/src/services/lambda/simulator.js +78 -181
- package/src/services/parameter-store/index.js +80 -0
- package/src/services/parameter-store/server.js +50 -0
- package/src/services/parameter-store/simulator.js +201 -0
- package/src/services/s3/index.js +7 -3
- package/src/services/s3/server.js +20 -13
- package/src/services/s3/simulator.js +163 -407
- package/src/services/secret-manager/index.js +80 -0
- package/src/services/secret-manager/server.js +50 -0
- package/src/services/secret-manager/simulator.js +171 -0
- package/src/services/sns/index.js +55 -42
- package/src/services/sns/server.js +580 -0
- package/src/services/sns/simulator.js +1482 -0
- package/src/services/sqs/index.js +2 -4
- package/src/services/sqs/server.js +92 -18
- package/src/services/sqs/simulator.js +79 -298
- package/src/services/sts/index.js +37 -0
- package/src/services/sts/server.js +142 -0
- package/src/services/sts/simulator.js +69 -0
- package/src/services/xray/index.js +83 -0
- package/src/services/xray/server.js +308 -0
- package/src/services/xray/simulador.js +994 -0
- package/src/utils/cloudtrail-audit.js +129 -0
- package/src/utils/local-store.js +18 -2
package/src/services/s3/index.js
CHANGED
|
@@ -20,10 +20,9 @@ class S3Service {
|
|
|
20
20
|
const logger = require('../../utils/logger');
|
|
21
21
|
logger.debug(`Inicializando S3 Service na porta ${this.port}...`);
|
|
22
22
|
|
|
23
|
-
// Cria o simulador
|
|
24
23
|
this.simulator = new S3Simulator(this.config);
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
await this.simulator.initialize();
|
|
25
|
+
|
|
27
26
|
this.server = new S3Server(this.port, this.config);
|
|
28
27
|
this.server.simulator = this.simulator;
|
|
29
28
|
|
|
@@ -32,6 +31,11 @@ class S3Service {
|
|
|
32
31
|
logger.debug('S3 Service inicializado');
|
|
33
32
|
}
|
|
34
33
|
|
|
34
|
+
injectDependencies(server) {
|
|
35
|
+
const ct = server.getService('cloudtrail');
|
|
36
|
+
if (ct?.simulator) this.simulator.audit.setTrail(ct.simulator);
|
|
37
|
+
}
|
|
38
|
+
|
|
35
39
|
async start() {
|
|
36
40
|
if (this.isRunning) return;
|
|
37
41
|
await this.server.start();
|
|
@@ -17,8 +17,8 @@ class S3Server {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
setupMiddlewares() {
|
|
20
|
-
|
|
21
|
-
this.app.use(express.raw({ type:
|
|
20
|
+
// Captura raw body como Buffer para qualquer content-type
|
|
21
|
+
this.app.use(express.raw({ type: () => true, limit: '100mb' }));
|
|
22
22
|
this.app.use(express.text({ limit: '100mb' }));
|
|
23
23
|
|
|
24
24
|
// Logging de requisições
|
|
@@ -35,8 +35,10 @@ class S3Server {
|
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
async initialize() {
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
if (!this.simulator) {
|
|
39
|
+
this.simulator = new S3Simulator(this.config);
|
|
40
|
+
await this.simulator.initialize();
|
|
41
|
+
}
|
|
40
42
|
this.setupRoutes();
|
|
41
43
|
}
|
|
42
44
|
|
|
@@ -80,15 +82,20 @@ class S3Server {
|
|
|
80
82
|
|
|
81
83
|
// Upload object
|
|
82
84
|
this.app.put('/:bucket/*', (req, res) => {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
85
|
+
try {
|
|
86
|
+
const bucket = req.params.bucket;
|
|
87
|
+
const key = req.params[0];
|
|
88
|
+
const result = this.simulator.putObject(bucket, key, req.body, req.headers);
|
|
89
|
+
|
|
90
|
+
if (result.error) {
|
|
91
|
+
res.status(result.status).send(this.simulator.generateErrorResponse(result.error.code, result.error.message));
|
|
92
|
+
} else {
|
|
93
|
+
res.set('ETag', `"${result.etag}"`);
|
|
94
|
+
res.status(200).send();
|
|
95
|
+
}
|
|
96
|
+
} catch (err) {
|
|
97
|
+
logger.error('S3 putObject error:', err);
|
|
98
|
+
res.status(500).send(this.simulator.generateErrorResponse('InternalError', err.message));
|
|
92
99
|
}
|
|
93
100
|
});
|
|
94
101
|
|