@webda/aws 1.6.0-beta.3 → 2.0.0-beta.2

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.
Files changed (82) hide show
  1. package/lib/deployers/cloudformation.d.ts +8 -7
  2. package/lib/deployers/cloudformation.js +85 -75
  3. package/lib/deployers/cloudformation.js.map +1 -1
  4. package/lib/deployers/cloudformation.spec.d.ts +1 -0
  5. package/lib/deployers/cloudformation.spec.js +547 -0
  6. package/lib/deployers/cloudformation.spec.js.map +1 -0
  7. package/lib/deployers/index.d.ts +8 -7
  8. package/lib/deployers/index.js +99 -94
  9. package/lib/deployers/index.js.map +1 -1
  10. package/lib/deployers/index.spec.d.ts +8 -0
  11. package/lib/deployers/index.spec.js +628 -0
  12. package/lib/deployers/index.spec.js.map +1 -0
  13. package/lib/deployers/lambdapackager.d.ts +1 -0
  14. package/lib/deployers/lambdapackager.js +25 -1
  15. package/lib/deployers/lambdapackager.js.map +1 -1
  16. package/lib/deployers/lambdapackager.spec.d.ts +1 -0
  17. package/lib/deployers/lambdapackager.spec.js +76 -0
  18. package/lib/deployers/lambdapackager.spec.js.map +1 -0
  19. package/lib/index.js +5 -1
  20. package/lib/index.js.map +1 -1
  21. package/lib/index.spec.d.ts +10 -0
  22. package/lib/index.spec.js +86 -0
  23. package/lib/index.spec.js.map +1 -0
  24. package/lib/services/aws-mixin.d.ts +22 -1
  25. package/lib/services/aws-mixin.js +18 -20
  26. package/lib/services/aws-mixin.js.map +1 -1
  27. package/lib/services/cloudwatchlogger.d.ts +19 -8
  28. package/lib/services/cloudwatchlogger.js +39 -29
  29. package/lib/services/cloudwatchlogger.js.map +1 -1
  30. package/lib/services/cloudwatchlogger.spec.d.ts +1 -0
  31. package/lib/services/cloudwatchlogger.spec.js +147 -0
  32. package/lib/services/cloudwatchlogger.spec.js.map +1 -0
  33. package/lib/services/dynamodb.d.ts +49 -17
  34. package/lib/services/dynamodb.js +221 -80
  35. package/lib/services/dynamodb.js.map +1 -1
  36. package/lib/services/dynamodb.spec.d.ts +23 -0
  37. package/lib/services/dynamodb.spec.js +410 -0
  38. package/lib/services/dynamodb.spec.js.map +1 -0
  39. package/lib/services/index.d.ts +1 -1
  40. package/lib/services/index.js +6 -2
  41. package/lib/services/index.js.map +1 -1
  42. package/lib/services/lambdacaller.d.ts +26 -10
  43. package/lib/services/lambdacaller.js +10 -18
  44. package/lib/services/lambdacaller.js.map +1 -1
  45. package/lib/services/lambdacaller.spec.d.ts +1 -0
  46. package/lib/services/lambdacaller.spec.js +104 -0
  47. package/lib/services/lambdacaller.spec.js.map +1 -0
  48. package/lib/services/lambdaserver.d.ts +11 -4
  49. package/lib/services/lambdaserver.js +52 -46
  50. package/lib/services/lambdaserver.js.map +1 -1
  51. package/lib/services/lambdaserver.spec.d.ts +1 -0
  52. package/lib/services/lambdaserver.spec.js +449 -0
  53. package/lib/services/lambdaserver.spec.js.map +1 -0
  54. package/lib/services/route53.d.ts +4 -4
  55. package/lib/services/route53.js +34 -44
  56. package/lib/services/route53.js.map +1 -1
  57. package/lib/services/route53.spec.d.ts +1 -0
  58. package/lib/services/route53.spec.js +109 -0
  59. package/lib/services/route53.spec.js.map +1 -0
  60. package/lib/services/s3binary.d.ts +33 -53
  61. package/lib/services/s3binary.js +115 -242
  62. package/lib/services/s3binary.js.map +1 -1
  63. package/lib/services/s3binary.spec.d.ts +1 -0
  64. package/lib/services/s3binary.spec.js +336 -0
  65. package/lib/services/s3binary.spec.js.map +1 -0
  66. package/lib/services/secretsmanager.d.ts +23 -10
  67. package/lib/services/secretsmanager.js +13 -27
  68. package/lib/services/secretsmanager.js.map +1 -1
  69. package/lib/services/secretsmanager.spec.d.ts +1 -0
  70. package/lib/services/secretsmanager.spec.js +109 -0
  71. package/lib/services/secretsmanager.spec.js.map +1 -0
  72. package/lib/services/sqsqueue.d.ts +22 -7
  73. package/lib/services/sqsqueue.js +23 -36
  74. package/lib/services/sqsqueue.js.map +1 -1
  75. package/lib/services/sqsqueue.spec.d.ts +1 -0
  76. package/lib/services/sqsqueue.spec.js +206 -0
  77. package/lib/services/sqsqueue.spec.js.map +1 -0
  78. package/lib/shell.d.ts +1 -1
  79. package/lib/shell.js +4 -1
  80. package/lib/shell.js.map +1 -1
  81. package/package.json +27 -14
  82. package/webda.module.json +285 -12
@@ -0,0 +1,336 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || function (mod) {
25
+ if (mod && mod.__esModule) return mod;
26
+ var result = {};
27
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
+ __setModuleDefault(result, mod);
29
+ return result;
30
+ };
31
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
32
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
33
+ return new (P || (P = Promise))(function (resolve, reject) {
34
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
35
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
36
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
37
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
38
+ });
39
+ };
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ const client_s3_1 = require("@aws-sdk/client-s3");
42
+ const mocha_1 = require("@testdeck/mocha");
43
+ const core_1 = require("@webda/core");
44
+ const binary_spec_1 = require("@webda/core/lib/services/binary.spec");
45
+ const assert = __importStar(require("assert"));
46
+ const aws_sdk_client_mock_1 = require("aws-sdk-client-mock");
47
+ const path = __importStar(require("path"));
48
+ const sinon = __importStar(require("sinon"));
49
+ const index_spec_1 = require("../index.spec");
50
+ const dynamodb_spec_1 = require("./dynamodb.spec");
51
+ const s3binary_1 = require("./s3binary");
52
+ let S3BinaryTest = class S3BinaryTest extends binary_spec_1.BinaryTest {
53
+ before() {
54
+ const _super = Object.create(null, {
55
+ before: { get: () => super.before }
56
+ });
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ process.env.AWS_ACCESS_KEY_ID = index_spec_1.defaultCreds.accessKeyId;
59
+ process.env.AWS_SECRET_ACCESS_KEY = index_spec_1.defaultCreds.secretAccessKey;
60
+ yield (0, index_spec_1.checkLocalStack)();
61
+ this.buildWebda();
62
+ yield this.install();
63
+ yield this.cleanData();
64
+ yield dynamodb_spec_1.DynamoDBTest.install("webda-test-idents");
65
+ yield dynamodb_spec_1.DynamoDBTest.install("webda-test-users");
66
+ yield _super.before.call(this);
67
+ });
68
+ }
69
+ tweakApp(app) {
70
+ const _super = Object.create(null, {
71
+ tweakApp: { get: () => super.tweakApp }
72
+ });
73
+ return __awaiter(this, void 0, void 0, function* () {
74
+ _super.tweakApp.call(this, app);
75
+ app.addService("test/awsevents", (yield Promise.resolve().then(() => __importStar(require(path.join(__dirname, ..."../../test/moddas/awsevents.js".split("/")))))).default);
76
+ });
77
+ }
78
+ // Override getNotFound as exception is raised after
79
+ getNotFound() {
80
+ return __awaiter(this, void 0, void 0, function* () { });
81
+ }
82
+ cleanData() {
83
+ return __awaiter(this, void 0, void 0, function* () {
84
+ try {
85
+ var s3 = new client_s3_1.S3({
86
+ endpoint: "http://localhost:4566",
87
+ credentials: index_spec_1.defaultCreds,
88
+ forcePathStyle: true,
89
+ region: "us-east-1"
90
+ });
91
+ const Bucket = "webda-test";
92
+ // For test we do not have more than 1k objects
93
+ let data = yield s3.listObjectsV2({
94
+ Bucket
95
+ });
96
+ var params = {
97
+ Bucket,
98
+ Delete: {
99
+ Objects: []
100
+ }
101
+ };
102
+ for (var i in data.Contents) {
103
+ params.Delete.Objects.push({
104
+ Key: data.Contents[i].Key
105
+ });
106
+ }
107
+ if (params.Delete.Objects.length === 0) {
108
+ return;
109
+ }
110
+ yield s3.deleteObjects(params);
111
+ }
112
+ catch (err) {
113
+ // Ignore error for now
114
+ }
115
+ });
116
+ }
117
+ install() {
118
+ return __awaiter(this, void 0, void 0, function* () {
119
+ var s3 = new client_s3_1.S3({
120
+ endpoint: "http://localhost:4566",
121
+ forcePathStyle: true,
122
+ credentials: index_spec_1.defaultCreds,
123
+ region: "us-east-1"
124
+ });
125
+ const Bucket = "webda-test";
126
+ try {
127
+ yield s3.headBucket({
128
+ Bucket
129
+ });
130
+ }
131
+ catch (err) {
132
+ if (err.name === "Forbidden") {
133
+ this.webda.log("ERROR", "S3 bucket already exists in another account");
134
+ }
135
+ else if (err.name === "NotFound") {
136
+ this.webda.log("INFO", "Creating S3 Bucket", Bucket);
137
+ return s3.createBucket({
138
+ Bucket
139
+ });
140
+ }
141
+ }
142
+ });
143
+ }
144
+ getARN() {
145
+ let policies = this.getBinary().getARNPolicy("plop");
146
+ assert.strictEqual(policies.Resource[0], "arn:aws:s3:::webda-test");
147
+ assert.strictEqual(policies.Resource[1], "arn:aws:s3:::webda-test/*");
148
+ this.getBinary().getParameters().CloudFormationSkip = true;
149
+ assert.deepStrictEqual(this.getBinary().getCloudFormation(undefined), {});
150
+ }
151
+ forEachFile() {
152
+ return __awaiter(this, void 0, void 0, function* () {
153
+ let keys = [];
154
+ const spyChanges = sinon.stub().callsFake((p, c) => __awaiter(this, void 0, void 0, function* () {
155
+ if (spyChanges.callCount === 1) {
156
+ return {
157
+ Contents: [
158
+ { Key: "test/test.txt" },
159
+ { Key: "test/test.json" },
160
+ { Key: "test2/test.txt" },
161
+ { Key: "loop.txt" }
162
+ ].filter(i => {
163
+ return i.Key.startsWith(p.Prefix);
164
+ }),
165
+ NextContinuationToken: "2"
166
+ };
167
+ }
168
+ return { Contents: [] };
169
+ }));
170
+ const mock = (0, aws_sdk_client_mock_1.mockClient)(client_s3_1.S3).on(client_s3_1.ListObjectsV2Command).callsFake(spyChanges);
171
+ try {
172
+ yield this.getBinary().forEachFile("myBucket", (Key) => __awaiter(this, void 0, void 0, function* () {
173
+ keys.push(Key);
174
+ }), undefined, /.*\.txt/);
175
+ assert.deepStrictEqual(keys, ["test/test.txt", "test2/test.txt", "loop.txt"]);
176
+ keys = [];
177
+ spyChanges.resetHistory();
178
+ yield this.getBinary().forEachFile("myBucket", (Key) => __awaiter(this, void 0, void 0, function* () {
179
+ keys.push(Key);
180
+ }), "test/");
181
+ assert.deepStrictEqual(keys, ["test/test.txt", "test/test.json"]);
182
+ }
183
+ finally {
184
+ mock.restore();
185
+ }
186
+ });
187
+ }
188
+ params() {
189
+ assert.throws(() => new s3binary_1.S3BinaryParameters({}, this.getBinary()), /Need to define a bucket at least/);
190
+ }
191
+ signedUrl() {
192
+ return __awaiter(this, void 0, void 0, function* () {
193
+ let urls = [
194
+ this.getBinary().getSignedUrl("plop/test", "putObject", { Bucket: "myBuck" }),
195
+ this.getBinary().getSignedUrl("plop/test")
196
+ ];
197
+ (yield Promise.all(urls)).forEach(url => {
198
+ assert.ok(url.match(/http:\/\/localhost:\d+\/(myBuck|webda-test)\/plop\/test\?.*Signature=.*/), `'${url}' does not match expected`);
199
+ });
200
+ });
201
+ }
202
+ exists() {
203
+ return __awaiter(this, void 0, void 0, function* () {
204
+ assert.ok(!(yield this.getBinary()._exists("bouzouf")));
205
+ yield this.getBinary().putObject(this.getBinary()._getKey("bouzouf"), "plop");
206
+ assert.ok(yield this.getBinary()._exists("bouzouf"));
207
+ assert.strictEqual((yield core_1.Binary.streamToBuffer(yield this.getBinary().getObject(this.getBinary()._getKey("bouzouf")))).toString("utf8"), "plop");
208
+ assert.notStrictEqual(yield this.getBinary().exists(this.getBinary()._getKey("bouzouf")), null);
209
+ assert.strictEqual(yield this.getBinary().exists(this.getBinary()._getKey("bouzouf2")), null);
210
+ });
211
+ }
212
+ cleanHash() {
213
+ return __awaiter(this, void 0, void 0, function* () {
214
+ let key1 = this.getBinary()._getKey("bouzouf", "one");
215
+ let key2 = this.getBinary()._getKey("bouzouf", "two");
216
+ yield this.getBinary().putObject(key1, "plop");
217
+ yield this.getBinary().putObject(key2, "plop");
218
+ yield this.getBinary()._cleanHash("bouzouf");
219
+ // TO CONTINUE (localstack might not handle V2)
220
+ });
221
+ }
222
+ getKey() {
223
+ let key = this.getBinary()._getKey("bouzouf", "two");
224
+ assert.strictEqual(key, "bouzouf/two");
225
+ this.getBinary().getParameters().prefix = "plop";
226
+ key = this.getBinary()._getKey("bouzouf", "two");
227
+ assert.strictEqual(key, "plop/bouzouf/two");
228
+ }
229
+ cascadeDelete() {
230
+ return __awaiter(this, void 0, void 0, function* () {
231
+ let stubDelete = sinon.stub(this.getBinary()._s3, "deleteObject").callsFake(() => {
232
+ throw new Error();
233
+ });
234
+ try {
235
+ // @ts-ignore
236
+ yield this.getBinary().cascadeDelete({ hash: "pp" }, "pp");
237
+ }
238
+ finally {
239
+ stubDelete.restore();
240
+ }
241
+ });
242
+ }
243
+ redirectUrl() {
244
+ return __awaiter(this, void 0, void 0, function* () {
245
+ let { user1, ctx } = yield this.setupDefault();
246
+ // Making sure we are redirected on GET
247
+ let executor = this.getExecutor(ctx, "test.webda.io", "GET", `/binary/users/${user1.getUuid()}/images/0`, {});
248
+ yield executor.execute(ctx);
249
+ assert.ok(ctx.getResponseHeaders().Location !== undefined);
250
+ });
251
+ }
252
+ redirectUrlInfo() {
253
+ return __awaiter(this, void 0, void 0, function* () {
254
+ let { user1, ctx } = yield this.setupDefault();
255
+ // Making sure we are redirected on GET
256
+ let executor = this.getExecutor(ctx, "test.webda.io", "GET", `/binary/users/${user1.getUuid()}/images/0/url`, {});
257
+ yield executor.execute(ctx);
258
+ assert.ok(ctx.getResponseHeaders().Location === undefined);
259
+ assert.notStrictEqual(JSON.parse(ctx.getResponseBody()).Location, undefined);
260
+ });
261
+ }
262
+ httpGetError() {
263
+ return __awaiter(this, void 0, void 0, function* () {
264
+ // GET is not through classic binary
265
+ // Skip it
266
+ });
267
+ }
268
+ challenge() {
269
+ return __awaiter(this, void 0, void 0, function* () {
270
+ yield this.testChallenge(false);
271
+ });
272
+ }
273
+ badErrors() {
274
+ return __awaiter(this, void 0, void 0, function* () {
275
+ const mock = (0, aws_sdk_client_mock_1.mockClient)(client_s3_1.S3)
276
+ .on(client_s3_1.HeadObjectCommand)
277
+ .callsFake(() => {
278
+ throw new Error("Fake");
279
+ });
280
+ try {
281
+ yield assert.rejects(() => this.getBinary()._getS3("plop"));
282
+ yield assert.rejects(() => this.getBinary()._exists("plop"));
283
+ yield assert.rejects(() => this.getBinary().exists("plop"));
284
+ }
285
+ finally {
286
+ mock.restore();
287
+ }
288
+ });
289
+ }
290
+ };
291
+ __decorate([
292
+ mocha_1.test
293
+ ], S3BinaryTest.prototype, "getNotFound", null);
294
+ __decorate([
295
+ mocha_1.test
296
+ ], S3BinaryTest.prototype, "getARN", null);
297
+ __decorate([
298
+ mocha_1.test
299
+ ], S3BinaryTest.prototype, "forEachFile", null);
300
+ __decorate([
301
+ mocha_1.test
302
+ ], S3BinaryTest.prototype, "params", null);
303
+ __decorate([
304
+ mocha_1.test
305
+ ], S3BinaryTest.prototype, "signedUrl", null);
306
+ __decorate([
307
+ mocha_1.test
308
+ ], S3BinaryTest.prototype, "exists", null);
309
+ __decorate([
310
+ mocha_1.test
311
+ ], S3BinaryTest.prototype, "cleanHash", null);
312
+ __decorate([
313
+ mocha_1.test
314
+ ], S3BinaryTest.prototype, "getKey", null);
315
+ __decorate([
316
+ mocha_1.test
317
+ ], S3BinaryTest.prototype, "cascadeDelete", null);
318
+ __decorate([
319
+ mocha_1.test
320
+ ], S3BinaryTest.prototype, "redirectUrl", null);
321
+ __decorate([
322
+ mocha_1.test
323
+ ], S3BinaryTest.prototype, "redirectUrlInfo", null);
324
+ __decorate([
325
+ mocha_1.test
326
+ ], S3BinaryTest.prototype, "httpGetError", null);
327
+ __decorate([
328
+ mocha_1.test
329
+ ], S3BinaryTest.prototype, "challenge", null);
330
+ __decorate([
331
+ mocha_1.test
332
+ ], S3BinaryTest.prototype, "badErrors", null);
333
+ S3BinaryTest = __decorate([
334
+ mocha_1.suite
335
+ ], S3BinaryTest);
336
+ //# sourceMappingURL=s3binary.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3binary.spec.js","sourceRoot":"","sources":["../../src/services/s3binary.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA4G;AAC5G,2CAA8C;AAC9C,sCAAqC;AACrC,sEAAkE;AAElE,+CAAiC;AACjC,6DAAiD;AACjD,2CAA6B;AAC7B,6CAA+B;AAC/B,8CAA8D;AAC9D,mDAA+C;AAC/C,yCAA0D;AAG1D,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,wBAAoB;IACvC,MAAM;;;;;YACV,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,yBAAY,CAAC,WAAW,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,yBAAY,CAAC,eAAe,CAAC;YACjE,MAAM,IAAA,4BAAe,GAAE,CAAC;YACxB,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,4BAAY,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YAChD,MAAM,4BAAY,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;YAC/C,MAAM,OAAM,MAAM,WAAE,CAAC;QACvB,CAAC;KAAA;IAEK,QAAQ,CAAC,GAAoB;;;;;YACjC,OAAM,QAAQ,YAAC,GAAG,EAAE;YACpB,GAAG,CAAC,UAAU,CACZ,gBAAgB,EAChB,CAAC,wDAAa,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,gCAAgC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAC,CAAC,CAAC,OAAO,CAC7F,CAAC;QACJ,CAAC;KAAA;IAED,oDAAoD;IAE9C,WAAW;8DAAI,CAAC;KAAA;IAEhB,SAAS;;YACb,IAAI;gBACF,IAAI,EAAE,GAAG,IAAI,cAAE,CAAC;oBACd,QAAQ,EAAE,uBAAuB;oBACjC,WAAW,EAAE,yBAAY;oBACzB,cAAc,EAAE,IAAI;oBACpB,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,YAAY,CAAC;gBAC5B,+CAA+C;gBAC/C,IAAI,IAAI,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC;oBAChC,MAAM;iBACP,CAAC,CAAC;gBACH,IAAI,MAAM,GAA8B;oBACtC,MAAM;oBACN,MAAM,EAAE;wBACN,OAAO,EAAE,EAAE;qBACZ;iBACF,CAAC;gBACF,KAAK,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;oBAC3B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;wBACzB,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG;qBAC1B,CAAC,CAAC;iBACJ;gBACD,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;oBACtC,OAAO;iBACR;gBAED,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;aAChC;YAAC,OAAO,GAAG,EAAE;gBACZ,uBAAuB;aACxB;QACH,CAAC;KAAA;IAEK,OAAO;;YACX,IAAI,EAAE,GAAG,IAAI,cAAE,CAAC;gBACd,QAAQ,EAAE,uBAAuB;gBACjC,cAAc,EAAE,IAAI;gBACpB,WAAW,EAAE,yBAAY;gBACzB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAC;YACH,MAAM,MAAM,GAAG,YAAY,CAAC;YAC5B,IAAI;gBACF,MAAM,EAAE,CAAC,UAAU,CAAC;oBAClB,MAAM;iBACP,CAAC,CAAC;aACJ;YAAC,OAAO,GAAG,EAAE;gBACZ,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE;oBAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,6CAA6C,CAAC,CAAC;iBACxE;qBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE;oBAClC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,oBAAoB,EAAE,MAAM,CAAC,CAAC;oBACrD,OAAO,EAAE,CAAC,YAAY,CAAC;wBACrB,MAAM;qBACP,CAAC,CAAC;iBACJ;aACF;QACH,CAAC;KAAA;IAGD,MAAM;QACJ,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAErD,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,yBAAyB,CAAC,CAAC;QACpE,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC;QAEtE,IAAI,CAAC,SAAS,EAAE,CAAC,aAAa,EAAE,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC3D,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC;IAGK,WAAW;;YACf,IAAI,IAAI,GAAG,EAAE,CAAC;YAEd,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,CAAO,CAAC,EAAE,CAAC,EAAE,EAAE;gBACvD,IAAI,UAAU,CAAC,SAAS,KAAK,CAAC,EAAE;oBAC9B,OAAO;wBACL,QAAQ,EAAE;4BACR,EAAE,GAAG,EAAE,eAAe,EAAE;4BACxB,EAAE,GAAG,EAAE,gBAAgB,EAAE;4BACzB,EAAE,GAAG,EAAE,gBAAgB,EAAE;4BACzB,EAAE,GAAG,EAAE,UAAU,EAAE;yBACpB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;4BACX,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;wBACpC,CAAC,CAAC;wBACF,qBAAqB,EAAE,GAAG;qBAC3B,CAAC;iBACH;gBACD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAC1B,CAAC,CAAA,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,IAAA,gCAAU,EAAC,cAAE,CAAC,CAAC,EAAE,CAAC,gCAAoB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAC3E,IAAI;gBACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,WAAW,CAChC,UAAU,EACV,CAAO,GAAW,EAAE,EAAE;oBACpB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,CAAC,CAAA,EACD,SAAS,EACT,SAAS,CACV,CAAC;gBACF,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,eAAe,EAAE,gBAAgB,EAAE,UAAU,CAAC,CAAC,CAAC;gBAC9E,IAAI,GAAG,EAAE,CAAC;gBACV,UAAU,CAAC,YAAY,EAAE,CAAC;gBAC1B,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,WAAW,CAChC,UAAU,EACV,CAAO,GAAW,EAAE,EAAE;oBACpB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjB,CAAC,CAAA,EACD,OAAO,CACR,CAAC;gBACF,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC;aACnE;oBAAS;gBACR,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;QACH,CAAC;KAAA;IAGD,MAAM;QACJ,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,6BAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,kCAAkC,CAAC,CAAC;IACxG,CAAC;IAGK,SAAS;;YACb,IAAI,IAAI,GAAG;gBACT,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;gBAC7E,IAAI,CAAC,SAAS,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC;aAC3C,CAAC;YACF,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACtC,MAAM,CAAC,EAAE,CACP,GAAG,CAAC,KAAK,CAAC,yEAAyE,CAAC,EACpF,IAAI,GAAG,2BAA2B,CACnC,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAGK,MAAM;;YACV,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACxD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;YAC9E,MAAM,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;YACrD,MAAM,CAAC,WAAW,CAChB,CAAC,MAAM,aAAM,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAC3G,MAAM,CACP,EACD,MAAM,CACP,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;YAChG,MAAM,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAChG,CAAC;KAAA;IAGK,SAAS;;YACb,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACtD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC7C,+CAA+C;QACjD,CAAC;KAAA;IAGD,MAAM;QACJ,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACrD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,EAAE,CAAC,aAAa,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC;QACjD,GAAG,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACjD,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC9C,CAAC;IAGK,aAAa;;YACjB,IAAI,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;gBAC/E,MAAM,IAAI,KAAK,EAAE,CAAC;YACpB,CAAC,CAAC,CAAC;YACH,IAAI;gBACF,aAAa;gBACb,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;aAC5D;oBAAS;gBACR,UAAU,CAAC,OAAO,EAAE,CAAC;aACtB;QACH,CAAC;KAAA;IAGK,WAAW;;YACf,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/C,uCAAuC;YACvC,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,iBAAiB,KAAK,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;YAC9G,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;QAC7D,CAAC;KAAA;IAGK,eAAe;;YACnB,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/C,uCAAuC;YACvC,IAAI,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,EAAE,iBAAiB,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;YAClH,MAAM,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;YAC3D,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC/E,CAAC;KAAA;IAGK,YAAY;;YAChB,oCAAoC;YACpC,UAAU;QACZ,CAAC;KAAA;IAGK,SAAS;;YACb,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;KAAA;IAGK,SAAS;;YACb,MAAM,IAAI,GAAG,IAAA,gCAAU,EAAC,cAAE,CAAC;iBACxB,EAAE,CAAC,6BAAiB,CAAC;iBACrB,SAAS,CAAC,GAAG,EAAE;gBACd,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;YAC1B,CAAC,CAAC,CAAC;YACL,IAAI;gBACF,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC5D,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC7D,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;aAC7D;oBAAS;gBACR,IAAI,CAAC,OAAO,EAAE,CAAC;aAChB;QACH,CAAC;KAAA;CACF,CAAA;AApOC;IADC,YAAI;+CACiB;AA6DtB;IADC,YAAI;0CASJ;AAGD;IADC,YAAI;+CA4CJ;AAGD;IADC,YAAI;0CAGJ;AAGD;IADC,YAAI;6CAYJ;AAGD;IADC,YAAI;0CAaJ;AAGD;IADC,YAAI;6CAQJ;AAGD;IADC,YAAI;0CAOJ;AAGD;IADC,YAAI;iDAWJ;AAGD;IADC,YAAI;+CAOJ;AAGD;IADC,YAAI;mDAQJ;AAGD;IADC,YAAI;gDAIJ;AAGD;IADC,YAAI;6CAGJ;AAGD;IADC,YAAI;6CAcJ;AA1PG,YAAY;IADjB,aAAK;GACA,YAAY,CA2PjB"}
@@ -1,10 +1,27 @@
1
- import { ConfigurationProvider, ModdaDefinition, Service, ServiceParameters } from "@webda/core";
2
- export declare class AWSSecretsManagerParameters extends ServiceParameters {
3
- endpoint: string;
4
- region: string;
1
+ import { SecretsManager } from "@aws-sdk/client-secrets-manager";
2
+ import { ConfigurationProvider, Service, ServiceParameters } from "@webda/core";
3
+ declare const AWSSecretsManagerParameters_base: {
4
+ new (...args: any[]): {
5
+ /**
6
+ * @inheritdoc
7
+ */
8
+ endpoint?: string;
9
+ credentials?: {
10
+ accessKeyId: string;
11
+ secretAccessKey: string;
12
+ sessionToken?: string;
13
+ };
14
+ region?: string;
15
+ type: string;
16
+ };
17
+ } & typeof ServiceParameters;
18
+ export declare class AWSSecretsManagerParameters extends AWSSecretsManagerParameters_base {
5
19
  }
20
+ /**
21
+ * @WebdaModda
22
+ */
6
23
  export default class AWSSecretsManager<T extends AWSSecretsManagerParameters = AWSSecretsManagerParameters> extends Service<T> implements ConfigurationProvider {
7
- _client: AWS.SecretsManager;
24
+ _client: SecretsManager;
8
25
  /**
9
26
  * @inheritdoc
10
27
  */
@@ -16,7 +33,7 @@ export default class AWSSecretsManager<T extends AWSSecretsManagerParameters = A
16
33
  /**
17
34
  * @inheritdoc
18
35
  */
19
- canTriggerConfiguration(id: string, callback: () => void): boolean;
36
+ canTriggerConfiguration(_id: string, _callback: () => void): boolean;
20
37
  /**
21
38
  * @inheritdoc
22
39
  */
@@ -60,9 +77,5 @@ export default class AWSSecretsManager<T extends AWSSecretsManagerParameters = A
60
77
  Action: string[];
61
78
  Resource: string[];
62
79
  };
63
- /**
64
- * @inheritdoc
65
- */
66
- static getModda(): ModdaDefinition;
67
80
  }
68
81
  export { AWSSecretsManager };
@@ -10,11 +10,15 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.AWSSecretsManager = exports.AWSSecretsManagerParameters = void 0;
13
+ const client_secrets_manager_1 = require("@aws-sdk/client-secrets-manager");
13
14
  const core_1 = require("@webda/core");
14
15
  const aws_mixin_1 = require("./aws-mixin");
15
- class AWSSecretsManagerParameters extends core_1.ServiceParameters {
16
+ class AWSSecretsManagerParameters extends (0, aws_mixin_1.AWSServiceParameters)(core_1.ServiceParameters) {
16
17
  }
17
18
  exports.AWSSecretsManagerParameters = AWSSecretsManagerParameters;
19
+ /**
20
+ * @WebdaModda
21
+ */
18
22
  class AWSSecretsManager extends core_1.Service {
19
23
  /**
20
24
  * @inheritdoc
@@ -26,14 +30,12 @@ class AWSSecretsManager extends core_1.Service {
26
30
  * @inheritdoc
27
31
  */
28
32
  computeParameters() {
29
- this._client = new ((0, aws_mixin_1.GetAWS)(this.parameters).SecretsManager)({
30
- endpoint: this.parameters.endpoint
31
- });
33
+ this._client = new client_secrets_manager_1.SecretsManager(this.parameters);
32
34
  }
33
35
  /**
34
36
  * @inheritdoc
35
37
  */
36
- canTriggerConfiguration(id, callback) {
38
+ canTriggerConfiguration(_id, _callback) {
37
39
  return false;
38
40
  }
39
41
  /**
@@ -55,7 +57,7 @@ class AWSSecretsManager extends core_1.Service {
55
57
  return __awaiter(this, void 0, void 0, function* () {
56
58
  params.Name = id;
57
59
  params.SecretString = JSON.stringify(values);
58
- yield this._client.createSecret(params).promise();
60
+ yield this._client.createSecret(params);
59
61
  });
60
62
  }
61
63
  /**
@@ -77,7 +79,7 @@ class AWSSecretsManager extends core_1.Service {
77
79
  ForceDeleteWithoutRecovery
78
80
  };
79
81
  }
80
- yield this._client.deleteSecret(params).promise();
82
+ yield this._client.deleteSecret(params);
81
83
  });
82
84
  }
83
85
  /**
@@ -88,12 +90,10 @@ class AWSSecretsManager extends core_1.Service {
88
90
  */
89
91
  put(SecretId, value) {
90
92
  return __awaiter(this, void 0, void 0, function* () {
91
- yield this._client
92
- .putSecretValue({
93
+ yield this._client.putSecretValue({
93
94
  SecretId,
94
95
  SecretString: JSON.stringify(value)
95
- })
96
- .promise();
96
+ });
97
97
  });
98
98
  }
99
99
  /**
@@ -104,11 +104,9 @@ class AWSSecretsManager extends core_1.Service {
104
104
  */
105
105
  get(SecretId) {
106
106
  return __awaiter(this, void 0, void 0, function* () {
107
- let res = yield this._client
108
- .getSecretValue({
107
+ let res = yield this._client.getSecretValue({
109
108
  SecretId
110
- })
111
- .promise();
109
+ });
112
110
  return JSON.parse(res.SecretString);
113
111
  });
114
112
  }
@@ -124,18 +122,6 @@ class AWSSecretsManager extends core_1.Service {
124
122
  Resource: ["arn:aws:secretsmanager:" + region + ":" + accountId + ":secret:*"]
125
123
  };
126
124
  }
127
- /**
128
- * @inheritdoc
129
- */
130
- static getModda() {
131
- return {
132
- uuid: "Webda/AWSSecretsManager",
133
- label: "AWSSecretsManager",
134
- description: "Implements AWS SecretsManager",
135
- documentation: "https://raw.githubusercontent.com/loopingz/webda/master/readmes/Binary.md",
136
- logo: "images/icons/s3.png"
137
- };
138
- }
139
125
  }
140
126
  exports.default = AWSSecretsManager;
141
127
  exports.AWSSecretsManager = AWSSecretsManager;
@@ -1 +1 @@
1
- {"version":3,"file":"secretsmanager.js","sourceRoot":"","sources":["../../src/services/secretsmanager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sCAAiG;AACjG,2CAAqC;AAErC,MAAa,2BAA4B,SAAQ,wBAAiB;CAGjE;AAHD,kEAGC;AACD,MAAqB,iBACnB,SAAQ,cAAU;IAKlB;;OAEG;IACH,cAAc,CAAC,MAAW;QACxB,OAAO,IAAI,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,IAAA,kBAAM,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC;YAC1D,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,QAAQ;SACnC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,EAAU,EAAE,QAAoB;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACG,gBAAgB,CAAC,EAAU;;YAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;KAAA;IAED;;;;;;OAMG;IACG,MAAM,CAAC,EAAU,EAAE,SAAc,EAAE,EAAE,SAAc,EAAE;;YACzD,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACjB,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;KAAA;IAED;;;;;;OAMG;IACG,MAAM,CAAC,QAAgB,EAAE,uBAA+B,CAAC,EAAE,6BAAsC,KAAK;;YAC1G,IAAI,MAAM,GAA2C;gBACnD,oBAAoB;gBACpB,QAAQ;aACT,CAAC;YACF,IAAI,0BAA0B,EAAE;gBAC9B,MAAM,GAAG;oBACP,QAAQ;oBACR,0BAA0B;iBAC3B,CAAC;aACH;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;KAAA;IAED;;;;;OAKG;IACG,GAAG,CAAC,QAAgB,EAAE,KAAU;;YACpC,MAAM,IAAI,CAAC,OAAO;iBACf,cAAc,CAAC;gBACd,QAAQ;gBACR,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aACpC,CAAC;iBACD,OAAO,EAAE,CAAC;QACf,CAAC;KAAA;IAED;;;;;OAKG;IACG,GAAG,CAAC,QAAgB;;YACxB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO;iBACzB,cAAc,CAAC;gBACd,QAAQ;aACT,CAAC;iBACD,OAAO,EAAE,CAAC;YACb,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;KAAA;IAED;;OAEG;IACH,YAAY,CAAC,SAAS;QACpB,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC;QACnD,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK;YACvC,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,CAAC,kBAAkB,CAAC;YAC5B,QAAQ,EAAE,CAAC,yBAAyB,GAAG,MAAM,GAAG,GAAG,GAAG,SAAS,GAAG,WAAW,CAAC;SAC/E,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ;QACb,OAAO;YACL,IAAI,EAAE,yBAAyB;YAC/B,KAAK,EAAE,mBAAmB;YAC1B,WAAW,EAAE,+BAA+B;YAC5C,aAAa,EAAE,2EAA2E;YAC1F,IAAI,EAAE,qBAAqB;SAC5B,CAAC;IACJ,CAAC;CACF;AA7HD,oCA6HC;AAEQ,8CAAiB"}
1
+ {"version":3,"file":"secretsmanager.js","sourceRoot":"","sources":["../../src/services/secretsmanager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4EAAsF;AACtF,sCAAgF;AAChF,2CAAmD;AAEnD,MAAa,2BAA4B,SAAQ,IAAA,gCAAoB,EAAC,wBAAiB,CAAC;CAAG;AAA3F,kEAA2F;AAE3F;;GAEG;AACH,MAAqB,iBACnB,SAAQ,cAAU;IAKlB;;OAEG;IACH,cAAc,CAAC,MAAW;QACxB,OAAO,IAAI,2BAA2B,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,IAAI,CAAC,OAAO,GAAG,IAAI,uCAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,uBAAuB,CAAC,GAAW,EAAE,SAAqB;QACxD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACG,gBAAgB,CAAC,EAAU;;YAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;KAAA;IAED;;;;;;OAMG;IACG,MAAM,CAAC,EAAU,EAAE,SAAc,EAAE,EAAE,SAAc,EAAE;;YACzD,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;YACjB,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC7C,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;KAAA;IAED;;;;;;OAMG;IACG,MAAM,CAAC,QAAgB,EAAE,uBAA+B,CAAC,EAAE,6BAAsC,KAAK;;YAC1G,IAAI,MAAM,GAAwB;gBAChC,oBAAoB;gBACpB,QAAQ;aACT,CAAC;YACF,IAAI,0BAA0B,EAAE;gBAC9B,MAAM,GAAG;oBACP,QAAQ;oBACR,0BAA0B;iBAC3B,CAAC;aACH;YACD,MAAM,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;KAAA;IAED;;;;;OAKG;IACG,GAAG,CAAC,QAAgB,EAAE,KAAU;;YACpC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;gBAChC,QAAQ;gBACR,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;aACpC,CAAC,CAAC;QACL,CAAC;KAAA;IAED;;;;;OAKG;IACG,GAAG,CAAC,QAAgB;;YACxB,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;gBAC1C,QAAQ;aACT,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACtC,CAAC;KAAA;IAED;;OAEG;IACH,YAAY,CAAC,SAAS;QACpB,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,WAAW,CAAC;QACnD,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK;YACvC,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,CAAC,kBAAkB,CAAC;YAC5B,QAAQ,EAAE,CAAC,yBAAyB,GAAG,MAAM,GAAG,GAAG,GAAG,SAAS,GAAG,WAAW,CAAC;SAC/E,CAAC;IACJ,CAAC;CACF;AA1GD,oCA0GC;AAEQ,8CAAiB"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
19
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
23
+ };
24
+ var __importStar = (this && this.__importStar) || function (mod) {
25
+ if (mod && mod.__esModule) return mod;
26
+ var result = {};
27
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
+ __setModuleDefault(result, mod);
29
+ return result;
30
+ };
31
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
32
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
33
+ return new (P || (P = Promise))(function (resolve, reject) {
34
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
35
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
36
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
37
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
38
+ });
39
+ };
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ const mocha_1 = require("@testdeck/mocha");
42
+ const assert = __importStar(require("assert"));
43
+ const index_spec_1 = require("../index.spec");
44
+ let SecretsManagerTest = class SecretsManagerTest extends index_spec_1.WebdaAwsTest {
45
+ before() {
46
+ const _super = Object.create(null, {
47
+ before: { get: () => super.before }
48
+ });
49
+ return __awaiter(this, void 0, void 0, function* () {
50
+ yield _super.before.call(this);
51
+ this.service = this.getService("AWSSecretsManager");
52
+ assert.notStrictEqual(this.service, undefined);
53
+ try {
54
+ yield this.service.delete("webda-test-unit-test", 7, true);
55
+ }
56
+ catch (err) {
57
+ // Skip bad delete
58
+ }
59
+ try {
60
+ yield this.service.create("webda-test-manual", {
61
+ "webda-test-1": "Test1",
62
+ "webda-test-2": "Test2"
63
+ });
64
+ }
65
+ catch (err) {
66
+ // Skip as it will fail if it already exists
67
+ }
68
+ });
69
+ }
70
+ after() {
71
+ return __awaiter(this, void 0, void 0, function* () {
72
+ yield this.service.delete("webda-test-unit-test", 7, true);
73
+ });
74
+ }
75
+ basic() {
76
+ return __awaiter(this, void 0, void 0, function* () {
77
+ let result = yield this.service.get("webda-test-manual");
78
+ assert.strictEqual(result["webda-test-1"], "Test1");
79
+ assert.strictEqual(result["webda-test-2"], "Test2");
80
+ let config = yield this.service.getConfiguration("webda-test-manual");
81
+ assert.strictEqual(config["webda-test-1"], result["webda-test-1"]);
82
+ assert.strictEqual(config["webda-test-2"], result["webda-test-2"]);
83
+ yield this.service.create("webda-test-unit-test", {
84
+ "Authentication.providers.email.text": "Bouzouf"
85
+ });
86
+ result = yield this.service.get("webda-test-unit-test");
87
+ assert.strictEqual(result["Authentication.providers.email.text"], "Bouzouf");
88
+ yield this.service.put("webda-test-unit-test", {
89
+ "Authentication.providers.email.text": "Bouzouf2"
90
+ });
91
+ result = yield this.service.get("webda-test-unit-test");
92
+ assert.strictEqual(result["Authentication.providers.email.text"], "Bouzouf2");
93
+ assert.ok(!this.service.canTriggerConfiguration(undefined, undefined));
94
+ assert.deepStrictEqual(this.service.getARNPolicy("plop"), {
95
+ Action: ["secretsmanager:*"],
96
+ Effect: "Allow",
97
+ Resource: ["arn:aws:secretsmanager:us-east-1:plop:secret:*"],
98
+ Sid: "AWSSecretsManagerAWSSecretsManager"
99
+ });
100
+ });
101
+ }
102
+ };
103
+ __decorate([
104
+ mocha_1.test
105
+ ], SecretsManagerTest.prototype, "basic", null);
106
+ SecretsManagerTest = __decorate([
107
+ mocha_1.suite
108
+ ], SecretsManagerTest);
109
+ //# sourceMappingURL=secretsmanager.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"secretsmanager.spec.js","sourceRoot":"","sources":["../../src/services/secretsmanager.spec.ts"],"names":[],"mappings":"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"}