@pwrdrvr/microapps-cdk 0.0.29 → 0.2.6
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/.jsii +3108 -1362
- package/API.md +240 -53
- package/README.md +236 -135
- package/lib/MicroApps.d.ts +86 -50
- package/lib/MicroApps.js +30 -16
- package/lib/MicroAppsAPIGwy.d.ts +42 -37
- package/lib/MicroAppsAPIGwy.js +19 -18
- package/lib/MicroAppsCF.d.ts +115 -57
- package/lib/MicroAppsCF.js +31 -21
- package/lib/MicroAppsS3.d.ts +51 -46
- package/lib/MicroAppsS3.js +23 -22
- package/lib/MicroAppsSvcs.d.ts +123 -44
- package/lib/MicroAppsSvcs.js +112 -42
- package/lib/microapps-deployer/index.js +93 -89
- package/lib/microapps-deployer/index.js.map +3 -3
- package/lib/microapps-router/index.js.map +2 -2
- package/package.json +15 -36
- package/patches/@aws-cdk+aws-apigatewayv2-alpha+2.8.0-alpha.0.patch +39 -0
package/API.md
CHANGED
|
@@ -6,7 +6,17 @@
|
|
|
6
6
|
|
|
7
7
|
- *Implements:* [`@pwrdrvr/microapps-cdk.IMicroApps`](#@pwrdrvr/microapps-cdk.IMicroApps)
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Create a new MicroApps "turnkey" construct for simple deployments and for initial evaulation of the MicroApps framework.
|
|
10
|
+
|
|
11
|
+
Use this construct to create a working entire stack.
|
|
12
|
+
|
|
13
|
+
Do not use this construct when adding MicroApps to an existing
|
|
14
|
+
CloudFront, API Gateway, S3 Bucket, etc. or where access
|
|
15
|
+
to all features of the AWS Resources are needed (e.g. to
|
|
16
|
+
add additional Behaviors to the CloudFront distribution, set authorizors
|
|
17
|
+
on API Gateway, etc.).
|
|
18
|
+
|
|
19
|
+
> {@link https://github.com/pwrdrvr/microapps-core/blob/main/packages/cdk/lib/MicroApps.ts | example usage in a CDK Stack }
|
|
10
20
|
|
|
11
21
|
#### Initializer <a name="@pwrdrvr/microapps-cdk.MicroApps.Initializer"></a>
|
|
12
22
|
|
|
@@ -18,7 +28,7 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
|
|
|
18
28
|
|
|
19
29
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.scope"></a>
|
|
20
30
|
|
|
21
|
-
- *Type:* [
|
|
31
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
22
32
|
|
|
23
33
|
---
|
|
24
34
|
|
|
@@ -42,24 +52,32 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
|
|
|
42
52
|
|
|
43
53
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
|
|
44
54
|
|
|
55
|
+
{@inheritdoc IMicroAppsAPIGwy}.
|
|
56
|
+
|
|
45
57
|
---
|
|
46
58
|
|
|
47
59
|
##### `cf`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.cf"></a>
|
|
48
60
|
|
|
49
61
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
|
|
50
62
|
|
|
63
|
+
{@inheritdoc IMicroAppsCF}.
|
|
64
|
+
|
|
51
65
|
---
|
|
52
66
|
|
|
53
67
|
##### `s3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.s3"></a>
|
|
54
68
|
|
|
55
69
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
|
|
56
70
|
|
|
71
|
+
{@inheritdoc IMicroAppsS3}.
|
|
72
|
+
|
|
57
73
|
---
|
|
58
74
|
|
|
59
75
|
##### `svcs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.svcs"></a>
|
|
60
76
|
|
|
61
77
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
|
|
62
78
|
|
|
79
|
+
{@inheritdoc IMicroAppsSvcs}.
|
|
80
|
+
|
|
63
81
|
---
|
|
64
82
|
|
|
65
83
|
|
|
@@ -67,6 +85,8 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
|
|
|
67
85
|
|
|
68
86
|
- *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
|
|
69
87
|
|
|
88
|
+
Create a new MicroApps API Gateway HTTP API endpoint.
|
|
89
|
+
|
|
70
90
|
#### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.Initializer"></a>
|
|
71
91
|
|
|
72
92
|
```typescript
|
|
@@ -77,7 +97,7 @@ new MicroAppsAPIGwy(scope: Construct, id: string, props?: MicroAppsAPIGwyProps)
|
|
|
77
97
|
|
|
78
98
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.scope"></a>
|
|
79
99
|
|
|
80
|
-
- *Type:* [
|
|
100
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
81
101
|
|
|
82
102
|
---
|
|
83
103
|
|
|
@@ -99,7 +119,7 @@ new MicroAppsAPIGwy(scope: Construct, id: string, props?: MicroAppsAPIGwyProps)
|
|
|
99
119
|
|
|
100
120
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.httpApi"></a>
|
|
101
121
|
|
|
102
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
122
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
103
123
|
|
|
104
124
|
API Gateway.
|
|
105
125
|
|
|
@@ -107,7 +127,7 @@ API Gateway.
|
|
|
107
127
|
|
|
108
128
|
##### `dnAppsOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.dnAppsOrigin"></a>
|
|
109
129
|
|
|
110
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.IDomainName`](#@aws-cdk/aws-apigatewayv2.IDomainName)
|
|
130
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.IDomainName`](#@aws-cdk/aws-apigatewayv2-alpha.IDomainName)
|
|
111
131
|
|
|
112
132
|
Domain Name applied to API Gateway origin.
|
|
113
133
|
|
|
@@ -118,6 +138,8 @@ Domain Name applied to API Gateway origin.
|
|
|
118
138
|
|
|
119
139
|
- *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
|
|
120
140
|
|
|
141
|
+
Create a new MicroApps CloudFront Distribution.
|
|
142
|
+
|
|
121
143
|
#### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer"></a>
|
|
122
144
|
|
|
123
145
|
```typescript
|
|
@@ -128,7 +150,7 @@ new MicroAppsCF(scope: Construct, id: string, props: MicroAppsCFProps)
|
|
|
128
150
|
|
|
129
151
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.scope"></a>
|
|
130
152
|
|
|
131
|
-
- *Type:* [
|
|
153
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
132
154
|
|
|
133
155
|
---
|
|
134
156
|
|
|
@@ -157,7 +179,7 @@ MicroAppsCF.addRoutes(_scope: Construct, props: AddRoutesOptions)
|
|
|
157
179
|
|
|
158
180
|
###### `_scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF._scope"></a>
|
|
159
181
|
|
|
160
|
-
- *Type:* [
|
|
182
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
161
183
|
|
|
162
184
|
---
|
|
163
185
|
|
|
@@ -177,7 +199,7 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
|
|
|
177
199
|
|
|
178
200
|
###### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.scope"></a>
|
|
179
201
|
|
|
180
|
-
- *Type:* [
|
|
202
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
181
203
|
|
|
182
204
|
---
|
|
183
205
|
|
|
@@ -191,7 +213,7 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
|
|
|
191
213
|
|
|
192
214
|
##### `cloudFrontDistro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.cloudFrontDistro"></a>
|
|
193
215
|
|
|
194
|
-
- *Type:* [
|
|
216
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
|
|
195
217
|
|
|
196
218
|
---
|
|
197
219
|
|
|
@@ -200,6 +222,8 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
|
|
|
200
222
|
|
|
201
223
|
- *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
|
|
202
224
|
|
|
225
|
+
Create a new MicroApps S3 Bucket.
|
|
226
|
+
|
|
203
227
|
#### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer"></a>
|
|
204
228
|
|
|
205
229
|
```typescript
|
|
@@ -210,7 +234,7 @@ new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
|
|
|
210
234
|
|
|
211
235
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.scope"></a>
|
|
212
236
|
|
|
213
|
-
- *Type:* [
|
|
237
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
214
238
|
|
|
215
239
|
---
|
|
216
240
|
|
|
@@ -232,7 +256,7 @@ new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
|
|
|
232
256
|
|
|
233
257
|
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketApps"></a>
|
|
234
258
|
|
|
235
|
-
- *Type:* [
|
|
259
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
236
260
|
|
|
237
261
|
S3 bucket for deployed applications.
|
|
238
262
|
|
|
@@ -240,7 +264,7 @@ S3 bucket for deployed applications.
|
|
|
240
264
|
|
|
241
265
|
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOAI"></a>
|
|
242
266
|
|
|
243
|
-
- *Type:* [
|
|
267
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
|
|
244
268
|
|
|
245
269
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
246
270
|
|
|
@@ -248,7 +272,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
|
|
|
248
272
|
|
|
249
273
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOrigin"></a>
|
|
250
274
|
|
|
251
|
-
- *Type:* [
|
|
275
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
252
276
|
|
|
253
277
|
CloudFront Origin for the deployed applications bucket.
|
|
254
278
|
|
|
@@ -256,7 +280,7 @@ CloudFront Origin for the deployed applications bucket.
|
|
|
256
280
|
|
|
257
281
|
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsStaging"></a>
|
|
258
282
|
|
|
259
|
-
- *Type:* [
|
|
283
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
260
284
|
|
|
261
285
|
S3 bucket for staged applications (prior to deploy).
|
|
262
286
|
|
|
@@ -264,7 +288,7 @@ S3 bucket for staged applications (prior to deploy).
|
|
|
264
288
|
|
|
265
289
|
##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketLogs"></a>
|
|
266
290
|
|
|
267
|
-
- *Type:* [
|
|
291
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
268
292
|
|
|
269
293
|
S3 bucket for CloudFront logs.
|
|
270
294
|
|
|
@@ -275,6 +299,8 @@ S3 bucket for CloudFront logs.
|
|
|
275
299
|
|
|
276
300
|
- *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
|
|
277
301
|
|
|
302
|
+
Create a new MicroApps Services construct, including the Deployer and Router Lambda Functions, and the DynamoDB Table used by both.
|
|
303
|
+
|
|
278
304
|
#### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer"></a>
|
|
279
305
|
|
|
280
306
|
```typescript
|
|
@@ -285,7 +311,7 @@ new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
|
|
|
285
311
|
|
|
286
312
|
##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.scope"></a>
|
|
287
313
|
|
|
288
|
-
- *Type:* [
|
|
314
|
+
- *Type:* [`constructs.Construct`](#constructs.Construct)
|
|
289
315
|
|
|
290
316
|
---
|
|
291
317
|
|
|
@@ -307,15 +333,23 @@ new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
|
|
|
307
333
|
|
|
308
334
|
##### `deployerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.deployerFunc"></a>
|
|
309
335
|
|
|
310
|
-
- *Type:* [
|
|
336
|
+
- *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
|
|
311
337
|
|
|
312
338
|
Lambda function for the Deployer.
|
|
313
339
|
|
|
314
340
|
---
|
|
315
341
|
|
|
342
|
+
##### `routerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.routerFunc"></a>
|
|
343
|
+
|
|
344
|
+
- *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
|
|
345
|
+
|
|
346
|
+
Lambda function for the Router.
|
|
347
|
+
|
|
348
|
+
---
|
|
349
|
+
|
|
316
350
|
##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.table"></a>
|
|
317
351
|
|
|
318
|
-
- *Type:* [
|
|
352
|
+
- *Type:* [`aws-cdk-lib.aws_dynamodb.ITable`](#aws-cdk-lib.aws_dynamodb.ITable)
|
|
319
353
|
|
|
320
354
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
321
355
|
|
|
@@ -326,6 +360,8 @@ DynamoDB table used by Router, Deployer, and Release console app.
|
|
|
326
360
|
|
|
327
361
|
### AddRoutesOptions <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions"></a>
|
|
328
362
|
|
|
363
|
+
Options for `AddRoutes`.
|
|
364
|
+
|
|
329
365
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
330
366
|
|
|
331
367
|
```typescript
|
|
@@ -336,25 +372,47 @@ const addRoutesOptions: AddRoutesOptions = { ... }
|
|
|
336
372
|
|
|
337
373
|
##### `apiGwyOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.apiGwyOrigin"></a>
|
|
338
374
|
|
|
339
|
-
- *Type:* [
|
|
375
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.IOrigin`](#aws-cdk-lib.aws_cloudfront.IOrigin)
|
|
376
|
+
|
|
377
|
+
API Gateway CloudFront Origin for API calls.
|
|
340
378
|
|
|
341
379
|
---
|
|
342
380
|
|
|
343
381
|
##### `apigwyOriginRequestPolicy`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.apigwyOriginRequestPolicy"></a>
|
|
344
382
|
|
|
345
|
-
- *Type:* [
|
|
383
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy`](#aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy)
|
|
384
|
+
|
|
385
|
+
Origin Request policy for API Gateway Origin.
|
|
346
386
|
|
|
347
387
|
---
|
|
348
388
|
|
|
349
389
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.bucketAppsOrigin"></a>
|
|
350
390
|
|
|
351
|
-
- *Type:* [
|
|
391
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
392
|
+
|
|
393
|
+
S3 Bucket CloudFront Origin for static assets.
|
|
352
394
|
|
|
353
395
|
---
|
|
354
396
|
|
|
355
397
|
##### `distro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.distro"></a>
|
|
356
398
|
|
|
357
|
-
- *Type:* [
|
|
399
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
|
|
400
|
+
|
|
401
|
+
CloudFront Distribution to add the Behaviors (Routes) to.
|
|
402
|
+
|
|
403
|
+
---
|
|
404
|
+
|
|
405
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.createAPIPathRoute"></a>
|
|
406
|
+
|
|
407
|
+
- *Type:* `boolean`
|
|
408
|
+
- *Default:* true
|
|
409
|
+
|
|
410
|
+
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
411
|
+
|
|
412
|
+
When false API routes with a period in the path will get routed to S3.
|
|
413
|
+
|
|
414
|
+
When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
415
|
+
even if they have a period in the path.
|
|
358
416
|
|
|
359
417
|
---
|
|
360
418
|
|
|
@@ -362,10 +420,14 @@ const addRoutesOptions: AddRoutesOptions = { ... }
|
|
|
362
420
|
|
|
363
421
|
- *Type:* `string`
|
|
364
422
|
|
|
423
|
+
Path prefix on the root of the CloudFront distribution.
|
|
424
|
+
|
|
365
425
|
---
|
|
366
426
|
|
|
367
427
|
### CreateAPIOriginPolicyOptions <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions"></a>
|
|
368
428
|
|
|
429
|
+
Options for the `CreateAPIOriginPolicy`.
|
|
430
|
+
|
|
369
431
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
370
432
|
|
|
371
433
|
```typescript
|
|
@@ -377,12 +439,18 @@ const createAPIOriginPolicyOptions: CreateAPIOriginPolicyOptions = { ... }
|
|
|
377
439
|
##### `assetNameRoot`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.assetNameRoot"></a>
|
|
378
440
|
|
|
379
441
|
- *Type:* `string`
|
|
442
|
+
- *Default:* resource names auto assigned
|
|
443
|
+
|
|
444
|
+
Optional asset name root.
|
|
380
445
|
|
|
381
446
|
---
|
|
382
447
|
|
|
383
448
|
##### `assetNameSuffix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.assetNameSuffix"></a>
|
|
384
449
|
|
|
385
450
|
- *Type:* `string`
|
|
451
|
+
- *Default:* none
|
|
452
|
+
|
|
453
|
+
Optional asset name suffix.
|
|
386
454
|
|
|
387
455
|
---
|
|
388
456
|
|
|
@@ -396,6 +464,8 @@ Edge domain name used by CloudFront - If set a custom OriginRequestPolicy will b
|
|
|
396
464
|
|
|
397
465
|
### MicroAppsAPIGwyProps <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps"></a>
|
|
398
466
|
|
|
467
|
+
Properties to initialize an instance of `MicroAppsAPIGwy`.
|
|
468
|
+
|
|
399
469
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
400
470
|
|
|
401
471
|
```typescript
|
|
@@ -424,7 +494,7 @@ Optional asset name suffix.
|
|
|
424
494
|
|
|
425
495
|
##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.certOrigin"></a>
|
|
426
496
|
|
|
427
|
-
- *Type:* [
|
|
497
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
428
498
|
- *Default:* none
|
|
429
499
|
|
|
430
500
|
Optional local region ACM certificate to use for API Gateway Note: required when using a custom domain.
|
|
@@ -451,7 +521,7 @@ API Gateway origin domain name.
|
|
|
451
521
|
|
|
452
522
|
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.r53Zone"></a>
|
|
453
523
|
|
|
454
|
-
- *Type:* [
|
|
524
|
+
- *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
|
|
455
525
|
|
|
456
526
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
457
527
|
|
|
@@ -459,7 +529,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
|
|
|
459
529
|
|
|
460
530
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.removalPolicy"></a>
|
|
461
531
|
|
|
462
|
-
- *Type:* [
|
|
532
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
463
533
|
- *Default:* per resource default
|
|
464
534
|
|
|
465
535
|
RemovalPolicy override for child resources.
|
|
@@ -479,6 +549,8 @@ Path prefix on the root of the API Gateway Stage.
|
|
|
479
549
|
|
|
480
550
|
### MicroAppsCFProps <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps"></a>
|
|
481
551
|
|
|
552
|
+
Properties to initialize an instance of `MicroAppsCF`.
|
|
553
|
+
|
|
482
554
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
483
555
|
|
|
484
556
|
```typescript
|
|
@@ -489,7 +561,7 @@ const microAppsCFProps: MicroAppsCFProps = { ... }
|
|
|
489
561
|
|
|
490
562
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketAppsOrigin"></a>
|
|
491
563
|
|
|
492
|
-
- *Type:* [
|
|
564
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
493
565
|
|
|
494
566
|
S3 bucket origin for deployed applications.
|
|
495
567
|
|
|
@@ -497,7 +569,7 @@ S3 bucket origin for deployed applications.
|
|
|
497
569
|
|
|
498
570
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.httpApi"></a>
|
|
499
571
|
|
|
500
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
572
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
501
573
|
|
|
502
574
|
API Gateway v2 HTTP API for apps.
|
|
503
575
|
|
|
@@ -523,7 +595,7 @@ Optional asset name suffix.
|
|
|
523
595
|
|
|
524
596
|
##### `bucketLogs`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketLogs"></a>
|
|
525
597
|
|
|
526
|
-
- *Type:* [
|
|
598
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
527
599
|
|
|
528
600
|
S3 bucket for CloudFront logs.
|
|
529
601
|
|
|
@@ -531,12 +603,26 @@ S3 bucket for CloudFront logs.
|
|
|
531
603
|
|
|
532
604
|
##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.certEdge"></a>
|
|
533
605
|
|
|
534
|
-
- *Type:* [
|
|
606
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
535
607
|
|
|
536
608
|
ACM Certificate that covers `domainNameEdge` name.
|
|
537
609
|
|
|
538
610
|
---
|
|
539
611
|
|
|
612
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.createAPIPathRoute"></a>
|
|
613
|
+
|
|
614
|
+
- *Type:* `boolean`
|
|
615
|
+
- *Default:* true
|
|
616
|
+
|
|
617
|
+
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
618
|
+
|
|
619
|
+
When false API routes with a period in the path will get routed to S3.
|
|
620
|
+
|
|
621
|
+
When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
622
|
+
even if they have a period in the path.
|
|
623
|
+
|
|
624
|
+
---
|
|
625
|
+
|
|
540
626
|
##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.domainNameEdge"></a>
|
|
541
627
|
|
|
542
628
|
- *Type:* `string`
|
|
@@ -557,7 +643,7 @@ API Gateway custom origin domain name.
|
|
|
557
643
|
|
|
558
644
|
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.r53Zone"></a>
|
|
559
645
|
|
|
560
|
-
- *Type:* [
|
|
646
|
+
- *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
|
|
561
647
|
|
|
562
648
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
563
649
|
|
|
@@ -565,7 +651,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
|
|
|
565
651
|
|
|
566
652
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.removalPolicy"></a>
|
|
567
653
|
|
|
568
|
-
- *Type:* [
|
|
654
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
569
655
|
- *Default:* per resource default
|
|
570
656
|
|
|
571
657
|
RemovalPolicy override for child resources.
|
|
@@ -584,7 +670,7 @@ Path prefix on the root of the CloudFront distribution.
|
|
|
584
670
|
|
|
585
671
|
### MicroAppsProps <a name="@pwrdrvr/microapps-cdk.MicroAppsProps"></a>
|
|
586
672
|
|
|
587
|
-
|
|
673
|
+
Properties to initialize an instance of `MicroApps`.
|
|
588
674
|
|
|
589
675
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
590
676
|
|
|
@@ -623,7 +709,7 @@ Optional asset name suffix.
|
|
|
623
709
|
|
|
624
710
|
##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certEdge"></a>
|
|
625
711
|
|
|
626
|
-
- *Type:* [
|
|
712
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
627
713
|
|
|
628
714
|
Certificate in US-East-1 for the CloudFront distribution.
|
|
629
715
|
|
|
@@ -631,12 +717,26 @@ Certificate in US-East-1 for the CloudFront distribution.
|
|
|
631
717
|
|
|
632
718
|
##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certOrigin"></a>
|
|
633
719
|
|
|
634
|
-
- *Type:* [
|
|
720
|
+
- *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
|
|
635
721
|
|
|
636
722
|
Certificate in deployed region for the API Gateway.
|
|
637
723
|
|
|
638
724
|
---
|
|
639
725
|
|
|
726
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.createAPIPathRoute"></a>
|
|
727
|
+
|
|
728
|
+
- *Type:* `boolean`
|
|
729
|
+
- *Default:* true
|
|
730
|
+
|
|
731
|
+
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
732
|
+
|
|
733
|
+
When false API routes with a period in the path will get routed to S3.
|
|
734
|
+
|
|
735
|
+
When true API routes that contain /api/ in the path will get routed to API Gateway
|
|
736
|
+
even if they have a period in the path.
|
|
737
|
+
|
|
738
|
+
---
|
|
739
|
+
|
|
640
740
|
##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.domainNameEdge"></a>
|
|
641
741
|
|
|
642
742
|
- *Type:* `string`
|
|
@@ -657,7 +757,7 @@ Optional custom domain name for the API Gateway HTTPv2 API.
|
|
|
657
757
|
|
|
658
758
|
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.r53Zone"></a>
|
|
659
759
|
|
|
660
|
-
- *Type:* [
|
|
760
|
+
- *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
|
|
661
761
|
|
|
662
762
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
663
763
|
|
|
@@ -665,7 +765,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
|
|
|
665
765
|
|
|
666
766
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.removalPolicy"></a>
|
|
667
767
|
|
|
668
|
-
- *Type:* [
|
|
768
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
669
769
|
- *Default:* per resource default
|
|
670
770
|
|
|
671
771
|
RemovalPolicy override for child resources.
|
|
@@ -757,6 +857,8 @@ fully trusted.
|
|
|
757
857
|
|
|
758
858
|
### MicroAppsS3Props <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props"></a>
|
|
759
859
|
|
|
860
|
+
Properties to initialize an instance of `MicroAppsS3`.
|
|
861
|
+
|
|
760
862
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
761
863
|
|
|
762
864
|
```typescript
|
|
@@ -812,17 +914,19 @@ S3 logs bucket name.
|
|
|
812
914
|
|
|
813
915
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.removalPolicy"></a>
|
|
814
916
|
|
|
815
|
-
- *Type:* [
|
|
917
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
816
918
|
- *Default:* per resource default
|
|
817
919
|
|
|
818
920
|
RemovalPolicy override for child resources.
|
|
819
921
|
|
|
820
|
-
Note: if set to DESTROY the S3
|
|
922
|
+
Note: if set to DESTROY the S3 buckets will have `autoDeleteObjects` set to `true`
|
|
821
923
|
|
|
822
924
|
---
|
|
823
925
|
|
|
824
926
|
### MicroAppsSvcsProps <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps"></a>
|
|
825
927
|
|
|
928
|
+
Properties to initialize an instance of `MicroAppsSvcs`.
|
|
929
|
+
|
|
826
930
|
#### Initializer <a name="[object Object].Initializer"></a>
|
|
827
931
|
|
|
828
932
|
```typescript
|
|
@@ -835,11 +939,13 @@ const microAppsSvcsProps: MicroAppsSvcsProps = { ... }
|
|
|
835
939
|
|
|
836
940
|
- *Type:* `string`
|
|
837
941
|
|
|
942
|
+
Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions.
|
|
943
|
+
|
|
838
944
|
---
|
|
839
945
|
|
|
840
946
|
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketApps"></a>
|
|
841
947
|
|
|
842
|
-
- *Type:* [
|
|
948
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
843
949
|
|
|
844
950
|
S3 bucket for deployed applications.
|
|
845
951
|
|
|
@@ -847,7 +953,7 @@ S3 bucket for deployed applications.
|
|
|
847
953
|
|
|
848
954
|
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsOAI"></a>
|
|
849
955
|
|
|
850
|
-
- *Type:* [
|
|
956
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
|
|
851
957
|
|
|
852
958
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
853
959
|
|
|
@@ -855,7 +961,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
|
|
|
855
961
|
|
|
856
962
|
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsStaging"></a>
|
|
857
963
|
|
|
858
|
-
- *Type:* [
|
|
964
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
859
965
|
|
|
860
966
|
S3 bucket for staged applications (prior to deploy).
|
|
861
967
|
|
|
@@ -863,7 +969,7 @@ S3 bucket for staged applications (prior to deploy).
|
|
|
863
969
|
|
|
864
970
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.httpApi"></a>
|
|
865
971
|
|
|
866
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
972
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
867
973
|
|
|
868
974
|
API Gateway v2 HTTP for Router and app.
|
|
869
975
|
|
|
@@ -889,7 +995,7 @@ Optional asset name suffix.
|
|
|
889
995
|
|
|
890
996
|
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.removalPolicy"></a>
|
|
891
997
|
|
|
892
|
-
- *Type:* [
|
|
998
|
+
- *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
|
|
893
999
|
- *Default:* per resource default
|
|
894
1000
|
|
|
895
1001
|
RemovalPolicy override for child resources.
|
|
@@ -911,17 +1017,72 @@ Path prefix on the root of the deployment.
|
|
|
911
1017
|
|
|
912
1018
|
- *Type:* `string`[]
|
|
913
1019
|
|
|
1020
|
+
Applies when using s3StrictBucketPolicy = true.
|
|
1021
|
+
|
|
1022
|
+
AROAs of the IAM Role to exclude from the DENY rules on the S3 Bucket Policy.
|
|
1023
|
+
This allows sessions that assume the IAM Role to be excluded from the
|
|
1024
|
+
DENY rules on the S3 Bucket Policy.
|
|
1025
|
+
|
|
1026
|
+
Typically any admin roles / users that need to view or manage the S3 Bucket
|
|
1027
|
+
would be added to this list.
|
|
1028
|
+
|
|
1029
|
+
Roles / users that are used directly, not assumed, can be added to `s3PolicyBypassRoleNames` instead.
|
|
1030
|
+
|
|
1031
|
+
Note: This AROA must be specified to prevent this policy from locking
|
|
1032
|
+
out non-root sessions that have assumed the admin role.
|
|
1033
|
+
|
|
1034
|
+
The notPrincipals will only match the role name exactly and will not match
|
|
1035
|
+
any session that has assumed the role since notPrincipals does not allow
|
|
1036
|
+
wildcard matches and does not do wildcard matches implicitly either.
|
|
1037
|
+
|
|
1038
|
+
The AROA must be used because there are only 3 Principal variables available:
|
|
1039
|
+
https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html#principaltable
|
|
1040
|
+
aws:username, aws:userid, aws:PrincipalTag
|
|
1041
|
+
|
|
1042
|
+
For an assumed role, aws:username is blank, aws:userid is:
|
|
1043
|
+
[unique id AKA AROA for Role]:[session name]
|
|
1044
|
+
|
|
1045
|
+
Table of unique ID prefixes such as AROA:
|
|
1046
|
+
https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-prefixes
|
|
1047
|
+
|
|
1048
|
+
The name of the role is simply not available for an assumed role and, if it was,
|
|
1049
|
+
a complicated comparison would be requierd to prevent exclusion
|
|
1050
|
+
of applying the Deny Rule to roles from other accounts.
|
|
1051
|
+
|
|
1052
|
+
To get the AROA with the AWS CLI:
|
|
1053
|
+
aws iam get-role --role-name ROLE-NAME
|
|
1054
|
+
aws iam get-user -–user-name USER-NAME
|
|
1055
|
+
|
|
1056
|
+
> s3StrictBucketPolicy
|
|
1057
|
+
|
|
914
1058
|
---
|
|
915
1059
|
|
|
916
1060
|
##### `s3PolicyBypassPrincipalARNs`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.s3PolicyBypassPrincipalARNs"></a>
|
|
917
1061
|
|
|
918
1062
|
- *Type:* `string`[]
|
|
919
1063
|
|
|
1064
|
+
Applies when using s3StrictBucketPolicy = true.
|
|
1065
|
+
|
|
1066
|
+
IAM Role or IAM User names to exclude from the DENY rules on the S3 Bucket Policy.
|
|
1067
|
+
|
|
1068
|
+
Roles that are Assumed must instead have their AROA added to `s3PolicyBypassAROAs`.
|
|
1069
|
+
|
|
1070
|
+
Typically any admin roles / users that need to view or manage the S3 Bucket
|
|
1071
|
+
would be added to this list.
|
|
1072
|
+
|
|
1073
|
+
> s3PolicyBypassAROAs
|
|
1074
|
+
|
|
920
1075
|
---
|
|
921
1076
|
|
|
922
1077
|
##### `s3StrictBucketPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.s3StrictBucketPolicy"></a>
|
|
923
1078
|
|
|
924
1079
|
- *Type:* `boolean`
|
|
1080
|
+
- *Default:* false
|
|
1081
|
+
|
|
1082
|
+
Use a strict S3 Bucket Policy that prevents applications from reading/writing/modifying/deleting files in the S3 Bucket outside of the path that is specific to their app/version.
|
|
1083
|
+
|
|
1084
|
+
This setting should be used when applications are less than
|
|
1085
|
+
fully trusted.
|
|
925
1086
|
|
|
926
1087
|
---
|
|
927
1088
|
|
|
@@ -932,6 +1093,8 @@ Path prefix on the root of the deployment.
|
|
|
932
1093
|
|
|
933
1094
|
- *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroApps`](#@pwrdrvr/microapps-cdk.MicroApps), [`@pwrdrvr/microapps-cdk.IMicroApps`](#@pwrdrvr/microapps-cdk.IMicroApps)
|
|
934
1095
|
|
|
1096
|
+
Represents a MicroApps.
|
|
1097
|
+
|
|
935
1098
|
|
|
936
1099
|
#### Properties <a name="Properties"></a>
|
|
937
1100
|
|
|
@@ -939,36 +1102,46 @@ Path prefix on the root of the deployment.
|
|
|
939
1102
|
|
|
940
1103
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
|
|
941
1104
|
|
|
1105
|
+
{@inheritdoc IMicroAppsAPIGwy}.
|
|
1106
|
+
|
|
942
1107
|
---
|
|
943
1108
|
|
|
944
1109
|
##### `cf`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.cf"></a>
|
|
945
1110
|
|
|
946
1111
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
|
|
947
1112
|
|
|
1113
|
+
{@inheritdoc IMicroAppsCF}.
|
|
1114
|
+
|
|
948
1115
|
---
|
|
949
1116
|
|
|
950
1117
|
##### `s3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.s3"></a>
|
|
951
1118
|
|
|
952
1119
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
|
|
953
1120
|
|
|
1121
|
+
{@inheritdoc IMicroAppsS3}.
|
|
1122
|
+
|
|
954
1123
|
---
|
|
955
1124
|
|
|
956
1125
|
##### `svcs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.svcs"></a>
|
|
957
1126
|
|
|
958
1127
|
- *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
|
|
959
1128
|
|
|
1129
|
+
{@inheritdoc IMicroAppsSvcs}.
|
|
1130
|
+
|
|
960
1131
|
---
|
|
961
1132
|
|
|
962
1133
|
### IMicroAppsAPIGwy <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy"></a>
|
|
963
1134
|
|
|
964
1135
|
- *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.MicroAppsAPIGwy), [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
|
|
965
1136
|
|
|
1137
|
+
Represents a MicroApps API Gateway.
|
|
1138
|
+
|
|
966
1139
|
|
|
967
1140
|
#### Properties <a name="Properties"></a>
|
|
968
1141
|
|
|
969
1142
|
##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy.httpApi"></a>
|
|
970
1143
|
|
|
971
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
|
|
1144
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
|
|
972
1145
|
|
|
973
1146
|
API Gateway.
|
|
974
1147
|
|
|
@@ -976,7 +1149,7 @@ API Gateway.
|
|
|
976
1149
|
|
|
977
1150
|
##### `dnAppsOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy.dnAppsOrigin"></a>
|
|
978
1151
|
|
|
979
|
-
- *Type:* [`@aws-cdk/aws-apigatewayv2.IDomainName`](#@aws-cdk/aws-apigatewayv2.IDomainName)
|
|
1152
|
+
- *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.IDomainName`](#@aws-cdk/aws-apigatewayv2-alpha.IDomainName)
|
|
980
1153
|
|
|
981
1154
|
Domain Name applied to API Gateway origin.
|
|
982
1155
|
|
|
@@ -986,12 +1159,14 @@ Domain Name applied to API Gateway origin.
|
|
|
986
1159
|
|
|
987
1160
|
- *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsCF`](#@pwrdrvr/microapps-cdk.MicroAppsCF), [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
|
|
988
1161
|
|
|
1162
|
+
Represents a MicroApps CloudFront.
|
|
1163
|
+
|
|
989
1164
|
|
|
990
1165
|
#### Properties <a name="Properties"></a>
|
|
991
1166
|
|
|
992
1167
|
##### `cloudFrontDistro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsCF.cloudFrontDistro"></a>
|
|
993
1168
|
|
|
994
|
-
- *Type:* [
|
|
1169
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
|
|
995
1170
|
|
|
996
1171
|
---
|
|
997
1172
|
|
|
@@ -999,12 +1174,14 @@ Domain Name applied to API Gateway origin.
|
|
|
999
1174
|
|
|
1000
1175
|
- *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsS3`](#@pwrdrvr/microapps-cdk.MicroAppsS3), [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
|
|
1001
1176
|
|
|
1177
|
+
Represents a MicroApps S3.
|
|
1178
|
+
|
|
1002
1179
|
|
|
1003
1180
|
#### Properties <a name="Properties"></a>
|
|
1004
1181
|
|
|
1005
1182
|
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketApps"></a>
|
|
1006
1183
|
|
|
1007
|
-
- *Type:* [
|
|
1184
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
1008
1185
|
|
|
1009
1186
|
S3 bucket for deployed applications.
|
|
1010
1187
|
|
|
@@ -1012,7 +1189,7 @@ S3 bucket for deployed applications.
|
|
|
1012
1189
|
|
|
1013
1190
|
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOAI"></a>
|
|
1014
1191
|
|
|
1015
|
-
- *Type:* [
|
|
1192
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
|
|
1016
1193
|
|
|
1017
1194
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
1018
1195
|
|
|
@@ -1020,7 +1197,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
|
|
|
1020
1197
|
|
|
1021
1198
|
##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOrigin"></a>
|
|
1022
1199
|
|
|
1023
|
-
- *Type:* [
|
|
1200
|
+
- *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
|
|
1024
1201
|
|
|
1025
1202
|
CloudFront Origin for the deployed applications bucket.
|
|
1026
1203
|
|
|
@@ -1028,7 +1205,7 @@ CloudFront Origin for the deployed applications bucket.
|
|
|
1028
1205
|
|
|
1029
1206
|
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsStaging"></a>
|
|
1030
1207
|
|
|
1031
|
-
- *Type:* [
|
|
1208
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
1032
1209
|
|
|
1033
1210
|
S3 bucket for staged applications (prior to deploy).
|
|
1034
1211
|
|
|
@@ -1036,7 +1213,7 @@ S3 bucket for staged applications (prior to deploy).
|
|
|
1036
1213
|
|
|
1037
1214
|
##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketLogs"></a>
|
|
1038
1215
|
|
|
1039
|
-
- *Type:* [
|
|
1216
|
+
- *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
|
|
1040
1217
|
|
|
1041
1218
|
S3 bucket for CloudFront logs.
|
|
1042
1219
|
|
|
@@ -1046,20 +1223,30 @@ S3 bucket for CloudFront logs.
|
|
|
1046
1223
|
|
|
1047
1224
|
- *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsSvcs`](#@pwrdrvr/microapps-cdk.MicroAppsSvcs), [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
|
|
1048
1225
|
|
|
1226
|
+
Represents a MicroApps Services.
|
|
1227
|
+
|
|
1049
1228
|
|
|
1050
1229
|
#### Properties <a name="Properties"></a>
|
|
1051
1230
|
|
|
1052
1231
|
##### `deployerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.deployerFunc"></a>
|
|
1053
1232
|
|
|
1054
|
-
- *Type:* [
|
|
1233
|
+
- *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
|
|
1055
1234
|
|
|
1056
1235
|
Lambda function for the Deployer.
|
|
1057
1236
|
|
|
1058
1237
|
---
|
|
1059
1238
|
|
|
1239
|
+
##### `routerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.routerFunc"></a>
|
|
1240
|
+
|
|
1241
|
+
- *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
|
|
1242
|
+
|
|
1243
|
+
Lambda function for the Router.
|
|
1244
|
+
|
|
1245
|
+
---
|
|
1246
|
+
|
|
1060
1247
|
##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.table"></a>
|
|
1061
1248
|
|
|
1062
|
-
- *Type:* [
|
|
1249
|
+
- *Type:* [`aws-cdk-lib.aws_dynamodb.ITable`](#aws-cdk-lib.aws_dynamodb.ITable)
|
|
1063
1250
|
|
|
1064
1251
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
1065
1252
|
|