@pwrdrvr/microapps-cdk 1.0.3 → 1.1.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.
- package/.jsii +400 -18
- package/API.md +2011 -415
- package/lib/MicroApps.js +1 -1
- package/lib/MicroAppsCF.js +1 -1
- package/lib/MicroAppsChildDeployer.js +3 -3
- package/lib/MicroAppsEdgeToOrigin.js +4 -4
- package/lib/MicroAppsS3.js +1 -1
- package/lib/MicroAppsSvcs.js +3 -3
- package/lib/MicroAppsTable.js +1 -1
- package/lib/microapps-deployer/index.js +54 -69
- package/lib/microapps-deployer/index.js.map +2 -2
- package/lib/microapps-edge-to-origin/index.js +40 -55
- package/lib/microapps-edge-to-origin/index.js.map +2 -2
- package/lib/microapps-router/index.js +36 -36
- package/lib/microapps-router/index.js.map +2 -2
- package/lib/utils/ReverseDomain.js +2 -3
- package/package.json +17 -16
- package/.gitattributes +0 -21
package/API.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# API Reference <a name="API Reference"></a>
|
|
1
|
+
# API Reference <a name="API Reference" id="api-reference"></a>
|
|
2
2
|
|
|
3
|
-
## Constructs <a name="Constructs"></a>
|
|
3
|
+
## Constructs <a name="Constructs" id="Constructs"></a>
|
|
4
4
|
|
|
5
|
-
### MicroApps <a name="@pwrdrvr/microapps-cdk.MicroApps"></a>
|
|
5
|
+
### MicroApps <a name="MicroApps" id="@pwrdrvr/microapps-cdk.MicroApps"></a>
|
|
6
6
|
|
|
7
|
-
- *Implements:*
|
|
7
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroApps">IMicroApps</a>
|
|
8
8
|
|
|
9
9
|
Create a new MicroApps "turnkey" construct for simple deployments and for initial evaulation of the MicroApps framework.
|
|
10
10
|
|
|
@@ -16,9 +16,9 @@ to all features of the AWS Resources are needed (e.g. to
|
|
|
16
16
|
add additional Behaviors to the CloudFront distribution, set authorizors
|
|
17
17
|
on API Gateway, etc.).
|
|
18
18
|
|
|
19
|
-
> {@link https://github.com/pwrdrvr/microapps-core/blob/main/packages/cdk/lib/MicroApps.ts example usage in a CDK Stack }
|
|
19
|
+
> [{@link https://github.com/pwrdrvr/microapps-core/blob/main/packages/cdk/lib/MicroApps.ts example usage in a CDK Stack }]({@link https://github.com/pwrdrvr/microapps-core/blob/main/packages/cdk/lib/MicroApps.ts example usage in a CDK Stack })
|
|
20
20
|
|
|
21
|
-
####
|
|
21
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroApps.Initializer"></a>
|
|
22
22
|
|
|
23
23
|
```typescript
|
|
24
24
|
import { MicroApps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -26,68 +26,168 @@ import { MicroApps } from '@pwrdrvr/microapps-cdk'
|
|
|
26
26
|
new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
|
|
27
27
|
```
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
| **Name** | **Type** | **Description** |
|
|
30
|
+
| --- | --- | --- |
|
|
31
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
32
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
33
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps">MicroAppsProps</a></code> | *No description.* |
|
|
30
34
|
|
|
31
|
-
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroApps.Initializer.parameter.scope"></a>
|
|
38
|
+
|
|
39
|
+
- *Type:* constructs.Construct
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroApps.Initializer.parameter.id"></a>
|
|
44
|
+
|
|
45
|
+
- *Type:* string
|
|
32
46
|
|
|
33
47
|
---
|
|
34
48
|
|
|
35
|
-
##### `
|
|
49
|
+
##### `props`<sup>Optional</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroApps.Initializer.parameter.props"></a>
|
|
50
|
+
|
|
51
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsProps">MicroAppsProps</a>
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
56
|
+
|
|
57
|
+
| **Name** | **Description** |
|
|
58
|
+
| --- | --- |
|
|
59
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroApps.toString"></a>
|
|
64
|
+
|
|
65
|
+
```typescript
|
|
66
|
+
public toString(): string
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Returns a string representation of this construct.
|
|
70
|
+
|
|
71
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
72
|
+
|
|
73
|
+
| **Name** | **Description** |
|
|
74
|
+
| --- | --- |
|
|
75
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroApps.isConstruct"></a>
|
|
80
|
+
|
|
81
|
+
```typescript
|
|
82
|
+
import { MicroApps } from '@pwrdrvr/microapps-cdk'
|
|
83
|
+
|
|
84
|
+
MicroApps.isConstruct(x: any)
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Checks if `x` is a construct.
|
|
88
|
+
|
|
89
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
90
|
+
instances, even when the construct library is symlinked.
|
|
91
|
+
|
|
92
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
93
|
+
disk are seen as independent, completely different libraries. As a
|
|
94
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
95
|
+
is seen as a different class, and an instance of one class will not test as
|
|
96
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
97
|
+
like this, but users may manually symlink construct libraries together or
|
|
98
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
99
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
100
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
101
|
+
this type-testing method instead.
|
|
36
102
|
|
|
37
|
-
|
|
103
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroApps.isConstruct.parameter.x"></a>
|
|
104
|
+
|
|
105
|
+
- *Type:* any
|
|
106
|
+
|
|
107
|
+
Any object.
|
|
38
108
|
|
|
39
109
|
---
|
|
40
110
|
|
|
41
|
-
|
|
111
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
42
112
|
|
|
43
|
-
|
|
113
|
+
| **Name** | **Type** | **Description** |
|
|
114
|
+
| --- | --- | --- |
|
|
115
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
116
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.property.cf">cf</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF">IMicroAppsCF</a></code> | {@inheritdoc IMicroAppsCF}. |
|
|
117
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.property.s3">s3</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3">IMicroAppsS3</a></code> | {@inheritdoc IMicroAppsS3}. |
|
|
118
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.property.svcs">svcs</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs">IMicroAppsSvcs</a></code> | {@inheritdoc IMicroAppsSvcs}. |
|
|
119
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroApps.property.edgeToOrigin">edgeToOrigin</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin">IMicroAppsEdgeToOrigin</a></code> | {@inheritdoc IMicroAppsEdgeToOrigin}. |
|
|
44
120
|
|
|
45
121
|
---
|
|
46
122
|
|
|
123
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroApps.property.node"></a>
|
|
124
|
+
|
|
125
|
+
```typescript
|
|
126
|
+
public readonly node: Node;
|
|
127
|
+
```
|
|
47
128
|
|
|
129
|
+
- *Type:* constructs.Node
|
|
48
130
|
|
|
49
|
-
|
|
131
|
+
The tree node.
|
|
50
132
|
|
|
51
|
-
|
|
133
|
+
---
|
|
52
134
|
|
|
53
|
-
|
|
135
|
+
##### `cf`<sup>Required</sup> <a name="cf" id="@pwrdrvr/microapps-cdk.MicroApps.property.cf"></a>
|
|
136
|
+
|
|
137
|
+
```typescript
|
|
138
|
+
public readonly cf: IMicroAppsCF;
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF">IMicroAppsCF</a>
|
|
54
142
|
|
|
55
143
|
{@inheritdoc IMicroAppsCF}.
|
|
56
144
|
|
|
57
145
|
---
|
|
58
146
|
|
|
59
|
-
##### `s3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.s3"></a>
|
|
147
|
+
##### `s3`<sup>Required</sup> <a name="s3" id="@pwrdrvr/microapps-cdk.MicroApps.property.s3"></a>
|
|
148
|
+
|
|
149
|
+
```typescript
|
|
150
|
+
public readonly s3: IMicroAppsS3;
|
|
151
|
+
```
|
|
60
152
|
|
|
61
|
-
- *Type:*
|
|
153
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3">IMicroAppsS3</a>
|
|
62
154
|
|
|
63
155
|
{@inheritdoc IMicroAppsS3}.
|
|
64
156
|
|
|
65
157
|
---
|
|
66
158
|
|
|
67
|
-
##### `svcs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.svcs"></a>
|
|
159
|
+
##### `svcs`<sup>Required</sup> <a name="svcs" id="@pwrdrvr/microapps-cdk.MicroApps.property.svcs"></a>
|
|
160
|
+
|
|
161
|
+
```typescript
|
|
162
|
+
public readonly svcs: IMicroAppsSvcs;
|
|
163
|
+
```
|
|
68
164
|
|
|
69
|
-
- *Type:*
|
|
165
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs">IMicroAppsSvcs</a>
|
|
70
166
|
|
|
71
167
|
{@inheritdoc IMicroAppsSvcs}.
|
|
72
168
|
|
|
73
169
|
---
|
|
74
170
|
|
|
75
|
-
##### `edgeToOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.edgeToOrigin"></a>
|
|
171
|
+
##### `edgeToOrigin`<sup>Optional</sup> <a name="edgeToOrigin" id="@pwrdrvr/microapps-cdk.MicroApps.property.edgeToOrigin"></a>
|
|
172
|
+
|
|
173
|
+
```typescript
|
|
174
|
+
public readonly edgeToOrigin: IMicroAppsEdgeToOrigin;
|
|
175
|
+
```
|
|
76
176
|
|
|
77
|
-
- *Type:*
|
|
177
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin">IMicroAppsEdgeToOrigin</a>
|
|
78
178
|
|
|
79
179
|
{@inheritdoc IMicroAppsEdgeToOrigin}.
|
|
80
180
|
|
|
81
181
|
---
|
|
82
182
|
|
|
83
183
|
|
|
84
|
-
### MicroAppsCF <a name="@pwrdrvr/microapps-cdk.MicroAppsCF"></a>
|
|
184
|
+
### MicroAppsCF <a name="MicroAppsCF" id="@pwrdrvr/microapps-cdk.MicroAppsCF"></a>
|
|
85
185
|
|
|
86
|
-
- *Implements:*
|
|
186
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF">IMicroAppsCF</a>
|
|
87
187
|
|
|
88
188
|
Create a new MicroApps CloudFront Distribution.
|
|
89
189
|
|
|
90
|
-
####
|
|
190
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer"></a>
|
|
91
191
|
|
|
92
192
|
```typescript
|
|
93
193
|
import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
@@ -95,28 +195,91 @@ import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
|
95
195
|
new MicroAppsCF(scope: Construct, id: string, props: MicroAppsCFProps)
|
|
96
196
|
```
|
|
97
197
|
|
|
98
|
-
|
|
198
|
+
| **Name** | **Type** | **Description** |
|
|
199
|
+
| --- | --- | --- |
|
|
200
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
201
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
202
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps">MicroAppsCFProps</a></code> | *No description.* |
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer.parameter.scope"></a>
|
|
99
207
|
|
|
100
|
-
- *Type:*
|
|
208
|
+
- *Type:* constructs.Construct
|
|
101
209
|
|
|
102
210
|
---
|
|
103
211
|
|
|
104
|
-
##### `id`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.id"></a>
|
|
212
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer.parameter.id"></a>
|
|
105
213
|
|
|
106
|
-
- *Type:*
|
|
214
|
+
- *Type:* string
|
|
107
215
|
|
|
108
216
|
---
|
|
109
217
|
|
|
110
|
-
##### `props`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.props"></a>
|
|
218
|
+
##### `props`<sup>Required</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer.parameter.props"></a>
|
|
111
219
|
|
|
112
|
-
- *Type:*
|
|
220
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps">MicroAppsCFProps</a>
|
|
113
221
|
|
|
114
222
|
---
|
|
115
223
|
|
|
224
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
225
|
+
|
|
226
|
+
| **Name** | **Description** |
|
|
227
|
+
| --- | --- |
|
|
228
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
229
|
+
|
|
230
|
+
---
|
|
231
|
+
|
|
232
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroAppsCF.toString"></a>
|
|
233
|
+
|
|
234
|
+
```typescript
|
|
235
|
+
public toString(): string
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
Returns a string representation of this construct.
|
|
239
|
+
|
|
240
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
241
|
+
|
|
242
|
+
| **Name** | **Description** |
|
|
243
|
+
| --- | --- |
|
|
244
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
245
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.addRoutes">addRoutes</a></code> | Add API Gateway and S3 routes to an existing CloudFront Distribution. |
|
|
246
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.createAPIOriginPolicy">createAPIOriginPolicy</a></code> | Create or get the origin request policy. |
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroAppsCF.isConstruct"></a>
|
|
251
|
+
|
|
252
|
+
```typescript
|
|
253
|
+
import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
254
|
+
|
|
255
|
+
MicroAppsCF.isConstruct(x: any)
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
Checks if `x` is a construct.
|
|
259
|
+
|
|
260
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
261
|
+
instances, even when the construct library is symlinked.
|
|
262
|
+
|
|
263
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
264
|
+
disk are seen as independent, completely different libraries. As a
|
|
265
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
266
|
+
is seen as a different class, and an instance of one class will not test as
|
|
267
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
268
|
+
like this, but users may manually symlink construct libraries together or
|
|
269
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
270
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
271
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
272
|
+
this type-testing method instead.
|
|
116
273
|
|
|
117
|
-
|
|
274
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroAppsCF.isConstruct.parameter.x"></a>
|
|
118
275
|
|
|
119
|
-
|
|
276
|
+
- *Type:* any
|
|
277
|
+
|
|
278
|
+
Any object.
|
|
279
|
+
|
|
280
|
+
---
|
|
281
|
+
|
|
282
|
+
##### `addRoutes` <a name="addRoutes" id="@pwrdrvr/microapps-cdk.MicroAppsCF.addRoutes"></a>
|
|
120
283
|
|
|
121
284
|
```typescript
|
|
122
285
|
import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
@@ -124,19 +287,21 @@ import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
|
124
287
|
MicroAppsCF.addRoutes(_scope: Construct, props: AddRoutesOptions)
|
|
125
288
|
```
|
|
126
289
|
|
|
127
|
-
|
|
290
|
+
Add API Gateway and S3 routes to an existing CloudFront Distribution.
|
|
128
291
|
|
|
129
|
-
|
|
292
|
+
###### `_scope`<sup>Required</sup> <a name="_scope" id="@pwrdrvr/microapps-cdk.MicroAppsCF.addRoutes.parameter._scope"></a>
|
|
293
|
+
|
|
294
|
+
- *Type:* constructs.Construct
|
|
130
295
|
|
|
131
296
|
---
|
|
132
297
|
|
|
133
|
-
###### `props`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.props"></a>
|
|
298
|
+
###### `props`<sup>Required</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsCF.addRoutes.parameter.props"></a>
|
|
134
299
|
|
|
135
|
-
- *Type:*
|
|
300
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions">AddRoutesOptions</a>
|
|
136
301
|
|
|
137
302
|
---
|
|
138
303
|
|
|
139
|
-
##### `createAPIOriginPolicy` <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.createAPIOriginPolicy"></a>
|
|
304
|
+
##### `createAPIOriginPolicy` <a name="createAPIOriginPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsCF.createAPIOriginPolicy"></a>
|
|
140
305
|
|
|
141
306
|
```typescript
|
|
142
307
|
import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
@@ -144,36 +309,68 @@ import { MicroAppsCF } from '@pwrdrvr/microapps-cdk'
|
|
|
144
309
|
MicroAppsCF.createAPIOriginPolicy(_scope: Construct, _props: CreateAPIOriginPolicyOptions)
|
|
145
310
|
```
|
|
146
311
|
|
|
147
|
-
|
|
312
|
+
Create or get the origin request policy.
|
|
313
|
+
|
|
314
|
+
If a custom domain name is NOT used for the origin then a policy
|
|
315
|
+
will be created.
|
|
316
|
+
|
|
317
|
+
If a custom domain name IS used for the origin then the ALL_VIEWER
|
|
318
|
+
policy will be returned. This policy passes the Host header to the
|
|
319
|
+
origin, which is fine when using a custom domain name on the origin.
|
|
148
320
|
|
|
149
|
-
|
|
321
|
+
###### `_scope`<sup>Required</sup> <a name="_scope" id="@pwrdrvr/microapps-cdk.MicroAppsCF.createAPIOriginPolicy.parameter._scope"></a>
|
|
322
|
+
|
|
323
|
+
- *Type:* constructs.Construct
|
|
150
324
|
|
|
151
325
|
---
|
|
152
326
|
|
|
153
|
-
###### `_props`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF._props"></a>
|
|
327
|
+
###### `_props`<sup>Required</sup> <a name="_props" id="@pwrdrvr/microapps-cdk.MicroAppsCF.createAPIOriginPolicy.parameter._props"></a>
|
|
154
328
|
|
|
155
|
-
- *Type:*
|
|
329
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions">CreateAPIOriginPolicyOptions</a>
|
|
156
330
|
|
|
157
331
|
---
|
|
158
332
|
|
|
159
|
-
#### Properties <a name="Properties"></a>
|
|
333
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
334
|
+
|
|
335
|
+
| **Name** | **Type** | **Description** |
|
|
336
|
+
| --- | --- | --- |
|
|
337
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
338
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCF.property.cloudFrontDistro">cloudFrontDistro</a></code> | <code>aws-cdk-lib.aws_cloudfront.Distribution</code> | The CloudFront distribution. |
|
|
339
|
+
|
|
340
|
+
---
|
|
160
341
|
|
|
161
|
-
##### `
|
|
342
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroAppsCF.property.node"></a>
|
|
162
343
|
|
|
163
|
-
|
|
344
|
+
```typescript
|
|
345
|
+
public readonly node: Node;
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
- *Type:* constructs.Node
|
|
349
|
+
|
|
350
|
+
The tree node.
|
|
351
|
+
|
|
352
|
+
---
|
|
353
|
+
|
|
354
|
+
##### `cloudFrontDistro`<sup>Required</sup> <a name="cloudFrontDistro" id="@pwrdrvr/microapps-cdk.MicroAppsCF.property.cloudFrontDistro"></a>
|
|
355
|
+
|
|
356
|
+
```typescript
|
|
357
|
+
public readonly cloudFrontDistro: Distribution;
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.Distribution
|
|
164
361
|
|
|
165
362
|
The CloudFront distribution.
|
|
166
363
|
|
|
167
364
|
---
|
|
168
365
|
|
|
169
366
|
|
|
170
|
-
### MicroAppsChildDeployer <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer"></a>
|
|
367
|
+
### MicroAppsChildDeployer <a name="MicroAppsChildDeployer" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer"></a>
|
|
171
368
|
|
|
172
|
-
- *Implements:*
|
|
369
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsChildDeployer">IMicroAppsChildDeployer</a>
|
|
173
370
|
|
|
174
371
|
Create a new MicroApps Child Deployer construct.
|
|
175
372
|
|
|
176
|
-
####
|
|
373
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer"></a>
|
|
177
374
|
|
|
178
375
|
```typescript
|
|
179
376
|
import { MicroAppsChildDeployer } from '@pwrdrvr/microapps-cdk'
|
|
@@ -181,44 +378,129 @@ import { MicroAppsChildDeployer } from '@pwrdrvr/microapps-cdk'
|
|
|
181
378
|
new MicroAppsChildDeployer(scope: Construct, id: string, props?: MicroAppsChildDeployerProps)
|
|
182
379
|
```
|
|
183
380
|
|
|
184
|
-
|
|
381
|
+
| **Name** | **Type** | **Description** |
|
|
382
|
+
| --- | --- | --- |
|
|
383
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
384
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
385
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps">MicroAppsChildDeployerProps</a></code> | *No description.* |
|
|
386
|
+
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer.parameter.scope"></a>
|
|
185
390
|
|
|
186
|
-
- *Type:*
|
|
391
|
+
- *Type:* constructs.Construct
|
|
187
392
|
|
|
188
393
|
---
|
|
189
394
|
|
|
190
|
-
##### `id`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.id"></a>
|
|
395
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer.parameter.id"></a>
|
|
191
396
|
|
|
192
|
-
- *Type:*
|
|
397
|
+
- *Type:* string
|
|
193
398
|
|
|
194
399
|
---
|
|
195
400
|
|
|
196
|
-
##### `props`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.props"></a>
|
|
401
|
+
##### `props`<sup>Optional</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.Initializer.parameter.props"></a>
|
|
197
402
|
|
|
198
|
-
- *Type:*
|
|
403
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps">MicroAppsChildDeployerProps</a>
|
|
199
404
|
|
|
200
405
|
---
|
|
201
406
|
|
|
407
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
202
408
|
|
|
409
|
+
| **Name** | **Description** |
|
|
410
|
+
| --- | --- |
|
|
411
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
203
412
|
|
|
204
|
-
|
|
413
|
+
---
|
|
414
|
+
|
|
415
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.toString"></a>
|
|
416
|
+
|
|
417
|
+
```typescript
|
|
418
|
+
public toString(): string
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
Returns a string representation of this construct.
|
|
422
|
+
|
|
423
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
424
|
+
|
|
425
|
+
| **Name** | **Description** |
|
|
426
|
+
| --- | --- |
|
|
427
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
428
|
+
|
|
429
|
+
---
|
|
430
|
+
|
|
431
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.isConstruct"></a>
|
|
432
|
+
|
|
433
|
+
```typescript
|
|
434
|
+
import { MicroAppsChildDeployer } from '@pwrdrvr/microapps-cdk'
|
|
435
|
+
|
|
436
|
+
MicroAppsChildDeployer.isConstruct(x: any)
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
Checks if `x` is a construct.
|
|
440
|
+
|
|
441
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
442
|
+
instances, even when the construct library is symlinked.
|
|
443
|
+
|
|
444
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
445
|
+
disk are seen as independent, completely different libraries. As a
|
|
446
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
447
|
+
is seen as a different class, and an instance of one class will not test as
|
|
448
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
449
|
+
like this, but users may manually symlink construct libraries together or
|
|
450
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
451
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
452
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
453
|
+
this type-testing method instead.
|
|
454
|
+
|
|
455
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.isConstruct.parameter.x"></a>
|
|
456
|
+
|
|
457
|
+
- *Type:* any
|
|
458
|
+
|
|
459
|
+
Any object.
|
|
460
|
+
|
|
461
|
+
---
|
|
462
|
+
|
|
463
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
205
464
|
|
|
206
|
-
|
|
465
|
+
| **Name** | **Type** | **Description** |
|
|
466
|
+
| --- | --- | --- |
|
|
467
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
468
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.property.deployerFunc">deployerFunc</a></code> | <code>aws-cdk-lib.aws_lambda.IFunction</code> | Lambda function for the Deployer. |
|
|
207
469
|
|
|
208
|
-
|
|
470
|
+
---
|
|
471
|
+
|
|
472
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.property.node"></a>
|
|
473
|
+
|
|
474
|
+
```typescript
|
|
475
|
+
public readonly node: Node;
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
- *Type:* constructs.Node
|
|
479
|
+
|
|
480
|
+
The tree node.
|
|
481
|
+
|
|
482
|
+
---
|
|
483
|
+
|
|
484
|
+
##### `deployerFunc`<sup>Required</sup> <a name="deployerFunc" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployer.property.deployerFunc"></a>
|
|
485
|
+
|
|
486
|
+
```typescript
|
|
487
|
+
public readonly deployerFunc: IFunction;
|
|
488
|
+
```
|
|
489
|
+
|
|
490
|
+
- *Type:* aws-cdk-lib.aws_lambda.IFunction
|
|
209
491
|
|
|
210
492
|
Lambda function for the Deployer.
|
|
211
493
|
|
|
212
494
|
---
|
|
213
495
|
|
|
214
496
|
|
|
215
|
-
### MicroAppsEdgeToOrigin <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin"></a>
|
|
497
|
+
### MicroAppsEdgeToOrigin <a name="MicroAppsEdgeToOrigin" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin"></a>
|
|
216
498
|
|
|
217
|
-
- *Implements:*
|
|
499
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin">IMicroAppsEdgeToOrigin</a>
|
|
218
500
|
|
|
219
501
|
Create a new MicroApps Edge to Origin Function w/ `config.yml`.
|
|
220
502
|
|
|
221
|
-
####
|
|
503
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer"></a>
|
|
222
504
|
|
|
223
505
|
```typescript
|
|
224
506
|
import { MicroAppsEdgeToOrigin } from '@pwrdrvr/microapps-cdk'
|
|
@@ -226,28 +508,90 @@ import { MicroAppsEdgeToOrigin } from '@pwrdrvr/microapps-cdk'
|
|
|
226
508
|
new MicroAppsEdgeToOrigin(scope: Construct, id: string, props: MicroAppsEdgeToOriginProps)
|
|
227
509
|
```
|
|
228
510
|
|
|
229
|
-
|
|
511
|
+
| **Name** | **Type** | **Description** |
|
|
512
|
+
| --- | --- | --- |
|
|
513
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
514
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
515
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps">MicroAppsEdgeToOriginProps</a></code> | *No description.* |
|
|
516
|
+
|
|
517
|
+
---
|
|
518
|
+
|
|
519
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer.parameter.scope"></a>
|
|
230
520
|
|
|
231
|
-
- *Type:*
|
|
521
|
+
- *Type:* constructs.Construct
|
|
232
522
|
|
|
233
523
|
---
|
|
234
524
|
|
|
235
|
-
##### `id`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.id"></a>
|
|
525
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer.parameter.id"></a>
|
|
236
526
|
|
|
237
|
-
- *Type:*
|
|
527
|
+
- *Type:* string
|
|
238
528
|
|
|
239
529
|
---
|
|
240
530
|
|
|
241
|
-
##### `props`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.props"></a>
|
|
531
|
+
##### `props`<sup>Required</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.Initializer.parameter.props"></a>
|
|
242
532
|
|
|
243
|
-
- *Type:*
|
|
533
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps">MicroAppsEdgeToOriginProps</a>
|
|
244
534
|
|
|
245
535
|
---
|
|
246
536
|
|
|
537
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
538
|
+
|
|
539
|
+
| **Name** | **Description** |
|
|
540
|
+
| --- | --- |
|
|
541
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
247
542
|
|
|
248
|
-
|
|
543
|
+
---
|
|
249
544
|
|
|
250
|
-
##### `
|
|
545
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.toString"></a>
|
|
546
|
+
|
|
547
|
+
```typescript
|
|
548
|
+
public toString(): string
|
|
549
|
+
```
|
|
550
|
+
|
|
551
|
+
Returns a string representation of this construct.
|
|
552
|
+
|
|
553
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
554
|
+
|
|
555
|
+
| **Name** | **Description** |
|
|
556
|
+
| --- | --- |
|
|
557
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
558
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.generateEdgeToOriginConfig">generateEdgeToOriginConfig</a></code> | Generate the yaml config for the edge lambda. |
|
|
559
|
+
|
|
560
|
+
---
|
|
561
|
+
|
|
562
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.isConstruct"></a>
|
|
563
|
+
|
|
564
|
+
```typescript
|
|
565
|
+
import { MicroAppsEdgeToOrigin } from '@pwrdrvr/microapps-cdk'
|
|
566
|
+
|
|
567
|
+
MicroAppsEdgeToOrigin.isConstruct(x: any)
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
Checks if `x` is a construct.
|
|
571
|
+
|
|
572
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
573
|
+
instances, even when the construct library is symlinked.
|
|
574
|
+
|
|
575
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
576
|
+
disk are seen as independent, completely different libraries. As a
|
|
577
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
578
|
+
is seen as a different class, and an instance of one class will not test as
|
|
579
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
580
|
+
like this, but users may manually symlink construct libraries together or
|
|
581
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
582
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
583
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
584
|
+
this type-testing method instead.
|
|
585
|
+
|
|
586
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.isConstruct.parameter.x"></a>
|
|
587
|
+
|
|
588
|
+
- *Type:* any
|
|
589
|
+
|
|
590
|
+
Any object.
|
|
591
|
+
|
|
592
|
+
---
|
|
593
|
+
|
|
594
|
+
##### `generateEdgeToOriginConfig` <a name="generateEdgeToOriginConfig" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.generateEdgeToOriginConfig"></a>
|
|
251
595
|
|
|
252
596
|
```typescript
|
|
253
597
|
import { MicroAppsEdgeToOrigin } from '@pwrdrvr/microapps-cdk'
|
|
@@ -255,17 +599,44 @@ import { MicroAppsEdgeToOrigin } from '@pwrdrvr/microapps-cdk'
|
|
|
255
599
|
MicroAppsEdgeToOrigin.generateEdgeToOriginConfig(props: GenerateEdgeToOriginConfigOptions)
|
|
256
600
|
```
|
|
257
601
|
|
|
258
|
-
|
|
602
|
+
Generate the yaml config for the edge lambda.
|
|
603
|
+
|
|
604
|
+
###### `props`<sup>Required</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.generateEdgeToOriginConfig.parameter.props"></a>
|
|
605
|
+
|
|
606
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions">GenerateEdgeToOriginConfigOptions</a>
|
|
259
607
|
|
|
260
|
-
|
|
608
|
+
---
|
|
609
|
+
|
|
610
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
611
|
+
|
|
612
|
+
| **Name** | **Type** | **Description** |
|
|
613
|
+
| --- | --- | --- |
|
|
614
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
615
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.edgeToOriginFunction">edgeToOriginFunction</a></code> | <code>aws-cdk-lib.aws_lambda.Function \| aws-cdk-lib.aws_cloudfront.experimental.EdgeFunction</code> | The edge to origin function for API Gateway Request Origin Edge Lambda. |
|
|
616
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.edgeToOriginLambdas">edgeToOriginLambdas</a></code> | <code>aws-cdk-lib.aws_cloudfront.EdgeLambda[]</code> | Configuration of the edge to origin lambda functions. |
|
|
617
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.edgeToOriginRole">edgeToOriginRole</a></code> | <code>aws-cdk-lib.aws_iam.Role</code> | The IAM Role for the edge to origin function. |
|
|
261
618
|
|
|
262
619
|
---
|
|
263
620
|
|
|
264
|
-
|
|
621
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.node"></a>
|
|
622
|
+
|
|
623
|
+
```typescript
|
|
624
|
+
public readonly node: Node;
|
|
625
|
+
```
|
|
265
626
|
|
|
266
|
-
|
|
627
|
+
- *Type:* constructs.Node
|
|
267
628
|
|
|
268
|
-
|
|
629
|
+
The tree node.
|
|
630
|
+
|
|
631
|
+
---
|
|
632
|
+
|
|
633
|
+
##### `edgeToOriginFunction`<sup>Required</sup> <a name="edgeToOriginFunction" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.edgeToOriginFunction"></a>
|
|
634
|
+
|
|
635
|
+
```typescript
|
|
636
|
+
public readonly edgeToOriginFunction: Function | EdgeFunction;
|
|
637
|
+
```
|
|
638
|
+
|
|
639
|
+
- *Type:* aws-cdk-lib.aws_lambda.Function | aws-cdk-lib.aws_cloudfront.experimental.EdgeFunction
|
|
269
640
|
|
|
270
641
|
The edge to origin function for API Gateway Request Origin Edge Lambda.
|
|
271
642
|
|
|
@@ -273,33 +644,41 @@ The generated `config.yml` is included in the Lambda's code.
|
|
|
273
644
|
|
|
274
645
|
---
|
|
275
646
|
|
|
276
|
-
##### `edgeToOriginLambdas`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.edgeToOriginLambdas"></a>
|
|
647
|
+
##### `edgeToOriginLambdas`<sup>Required</sup> <a name="edgeToOriginLambdas" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.edgeToOriginLambdas"></a>
|
|
648
|
+
|
|
649
|
+
```typescript
|
|
650
|
+
public readonly edgeToOriginLambdas: EdgeLambda[];
|
|
651
|
+
```
|
|
277
652
|
|
|
278
|
-
- *Type:*
|
|
653
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.EdgeLambda[]
|
|
279
654
|
|
|
280
655
|
Configuration of the edge to origin lambda functions.
|
|
281
656
|
|
|
282
657
|
---
|
|
283
658
|
|
|
284
|
-
##### `edgeToOriginRole`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.edgeToOriginRole"></a>
|
|
659
|
+
##### `edgeToOriginRole`<sup>Required</sup> <a name="edgeToOriginRole" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin.property.edgeToOriginRole"></a>
|
|
660
|
+
|
|
661
|
+
```typescript
|
|
662
|
+
public readonly edgeToOriginRole: Role;
|
|
663
|
+
```
|
|
285
664
|
|
|
286
|
-
- *Type:*
|
|
665
|
+
- *Type:* aws-cdk-lib.aws_iam.Role
|
|
287
666
|
|
|
288
667
|
The IAM Role for the edge to origin function.
|
|
289
668
|
|
|
290
669
|
---
|
|
291
670
|
|
|
292
671
|
|
|
293
|
-
### MicroAppsS3 <a name="@pwrdrvr/microapps-cdk.MicroAppsS3"></a>
|
|
672
|
+
### MicroAppsS3 <a name="MicroAppsS3" id="@pwrdrvr/microapps-cdk.MicroAppsS3"></a>
|
|
294
673
|
|
|
295
|
-
- *Implements:*
|
|
674
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3">IMicroAppsS3</a>
|
|
296
675
|
|
|
297
676
|
Create the durable MicroApps S3 Buckets.
|
|
298
677
|
|
|
299
678
|
These should be created in a stack that will not be deleted if
|
|
300
679
|
there are breaking changes to MicroApps in the future.
|
|
301
680
|
|
|
302
|
-
####
|
|
681
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer"></a>
|
|
303
682
|
|
|
304
683
|
```typescript
|
|
305
684
|
import { MicroAppsS3 } from '@pwrdrvr/microapps-cdk'
|
|
@@ -307,84 +686,194 @@ import { MicroAppsS3 } from '@pwrdrvr/microapps-cdk'
|
|
|
307
686
|
new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
|
|
308
687
|
```
|
|
309
688
|
|
|
310
|
-
|
|
689
|
+
| **Name** | **Type** | **Description** |
|
|
690
|
+
| --- | --- | --- |
|
|
691
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
692
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
693
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props">MicroAppsS3Props</a></code> | *No description.* |
|
|
694
|
+
|
|
695
|
+
---
|
|
696
|
+
|
|
697
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer.parameter.scope"></a>
|
|
698
|
+
|
|
699
|
+
- *Type:* constructs.Construct
|
|
700
|
+
|
|
701
|
+
---
|
|
702
|
+
|
|
703
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer.parameter.id"></a>
|
|
704
|
+
|
|
705
|
+
- *Type:* string
|
|
706
|
+
|
|
707
|
+
---
|
|
708
|
+
|
|
709
|
+
##### `props`<sup>Optional</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer.parameter.props"></a>
|
|
710
|
+
|
|
711
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props">MicroAppsS3Props</a>
|
|
712
|
+
|
|
713
|
+
---
|
|
714
|
+
|
|
715
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
716
|
+
|
|
717
|
+
| **Name** | **Description** |
|
|
718
|
+
| --- | --- |
|
|
719
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
720
|
+
|
|
721
|
+
---
|
|
722
|
+
|
|
723
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroAppsS3.toString"></a>
|
|
724
|
+
|
|
725
|
+
```typescript
|
|
726
|
+
public toString(): string
|
|
727
|
+
```
|
|
728
|
+
|
|
729
|
+
Returns a string representation of this construct.
|
|
730
|
+
|
|
731
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
311
732
|
|
|
312
|
-
|
|
733
|
+
| **Name** | **Description** |
|
|
734
|
+
| --- | --- |
|
|
735
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
313
736
|
|
|
314
737
|
---
|
|
315
738
|
|
|
316
|
-
##### `
|
|
739
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroAppsS3.isConstruct"></a>
|
|
317
740
|
|
|
318
|
-
|
|
741
|
+
```typescript
|
|
742
|
+
import { MicroAppsS3 } from '@pwrdrvr/microapps-cdk'
|
|
743
|
+
|
|
744
|
+
MicroAppsS3.isConstruct(x: any)
|
|
745
|
+
```
|
|
746
|
+
|
|
747
|
+
Checks if `x` is a construct.
|
|
748
|
+
|
|
749
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
750
|
+
instances, even when the construct library is symlinked.
|
|
751
|
+
|
|
752
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
753
|
+
disk are seen as independent, completely different libraries. As a
|
|
754
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
755
|
+
is seen as a different class, and an instance of one class will not test as
|
|
756
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
757
|
+
like this, but users may manually symlink construct libraries together or
|
|
758
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
759
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
760
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
761
|
+
this type-testing method instead.
|
|
762
|
+
|
|
763
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroAppsS3.isConstruct.parameter.x"></a>
|
|
764
|
+
|
|
765
|
+
- *Type:* any
|
|
766
|
+
|
|
767
|
+
Any object.
|
|
319
768
|
|
|
320
769
|
---
|
|
321
770
|
|
|
322
|
-
|
|
771
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
323
772
|
|
|
324
|
-
|
|
773
|
+
| **Name** | **Type** | **Description** |
|
|
774
|
+
| --- | --- | --- |
|
|
775
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
776
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketApps">bucketApps</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for deployed applications. |
|
|
777
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsOAI">bucketAppsOAI</a></code> | <code>aws-cdk-lib.aws_cloudfront.OriginAccessIdentity</code> | CloudFront Origin Access Identity for the deployed applications bucket. |
|
|
778
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsOriginApp">bucketAppsOriginApp</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.S3Origin</code> | CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: app` so the OriginRequest function knows to send the request to the application origin first, if configured for a particular application. |
|
|
779
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsOriginS3">bucketAppsOriginS3</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.S3Origin</code> | CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: s3` so the OriginRequest function knows to NOT send the request to the application origin and instead let it fall through to the S3 bucket. |
|
|
780
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsStaging">bucketAppsStaging</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for staged applications (prior to deploy). |
|
|
781
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketLogs">bucketLogs</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for CloudFront logs. |
|
|
325
782
|
|
|
326
783
|
---
|
|
327
784
|
|
|
785
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.node"></a>
|
|
786
|
+
|
|
787
|
+
```typescript
|
|
788
|
+
public readonly node: Node;
|
|
789
|
+
```
|
|
790
|
+
|
|
791
|
+
- *Type:* constructs.Node
|
|
328
792
|
|
|
793
|
+
The tree node.
|
|
329
794
|
|
|
330
|
-
|
|
795
|
+
---
|
|
331
796
|
|
|
332
|
-
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketApps"></a>
|
|
797
|
+
##### `bucketApps`<sup>Required</sup> <a name="bucketApps" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketApps"></a>
|
|
333
798
|
|
|
334
|
-
|
|
799
|
+
```typescript
|
|
800
|
+
public readonly bucketApps: IBucket;
|
|
801
|
+
```
|
|
802
|
+
|
|
803
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
335
804
|
|
|
336
805
|
S3 bucket for deployed applications.
|
|
337
806
|
|
|
338
807
|
---
|
|
339
808
|
|
|
340
|
-
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOAI"></a>
|
|
809
|
+
##### `bucketAppsOAI`<sup>Required</sup> <a name="bucketAppsOAI" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsOAI"></a>
|
|
341
810
|
|
|
342
|
-
|
|
811
|
+
```typescript
|
|
812
|
+
public readonly bucketAppsOAI: OriginAccessIdentity;
|
|
813
|
+
```
|
|
814
|
+
|
|
815
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.OriginAccessIdentity
|
|
343
816
|
|
|
344
817
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
345
818
|
|
|
346
819
|
---
|
|
347
820
|
|
|
348
|
-
##### `bucketAppsOriginApp`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOriginApp"></a>
|
|
821
|
+
##### `bucketAppsOriginApp`<sup>Required</sup> <a name="bucketAppsOriginApp" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsOriginApp"></a>
|
|
822
|
+
|
|
823
|
+
```typescript
|
|
824
|
+
public readonly bucketAppsOriginApp: S3Origin;
|
|
825
|
+
```
|
|
349
826
|
|
|
350
|
-
- *Type:*
|
|
827
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.S3Origin
|
|
351
828
|
|
|
352
829
|
CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: app` so the OriginRequest function knows to send the request to the application origin first, if configured for a particular application.
|
|
353
830
|
|
|
354
831
|
---
|
|
355
832
|
|
|
356
|
-
##### `bucketAppsOriginS3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOriginS3"></a>
|
|
833
|
+
##### `bucketAppsOriginS3`<sup>Required</sup> <a name="bucketAppsOriginS3" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsOriginS3"></a>
|
|
357
834
|
|
|
358
|
-
|
|
835
|
+
```typescript
|
|
836
|
+
public readonly bucketAppsOriginS3: S3Origin;
|
|
837
|
+
```
|
|
838
|
+
|
|
839
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.S3Origin
|
|
359
840
|
|
|
360
841
|
CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: s3` so the OriginRequest function knows to NOT send the request to the application origin and instead let it fall through to the S3 bucket.
|
|
361
842
|
|
|
362
843
|
---
|
|
363
844
|
|
|
364
|
-
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsStaging"></a>
|
|
845
|
+
##### `bucketAppsStaging`<sup>Required</sup> <a name="bucketAppsStaging" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketAppsStaging"></a>
|
|
846
|
+
|
|
847
|
+
```typescript
|
|
848
|
+
public readonly bucketAppsStaging: IBucket;
|
|
849
|
+
```
|
|
365
850
|
|
|
366
|
-
- *Type:*
|
|
851
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
367
852
|
|
|
368
853
|
S3 bucket for staged applications (prior to deploy).
|
|
369
854
|
|
|
370
855
|
---
|
|
371
856
|
|
|
372
|
-
##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketLogs"></a>
|
|
857
|
+
##### `bucketLogs`<sup>Required</sup> <a name="bucketLogs" id="@pwrdrvr/microapps-cdk.MicroAppsS3.property.bucketLogs"></a>
|
|
858
|
+
|
|
859
|
+
```typescript
|
|
860
|
+
public readonly bucketLogs: IBucket;
|
|
861
|
+
```
|
|
373
862
|
|
|
374
|
-
- *Type:*
|
|
863
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
375
864
|
|
|
376
865
|
S3 bucket for CloudFront logs.
|
|
377
866
|
|
|
378
867
|
---
|
|
379
868
|
|
|
380
869
|
|
|
381
|
-
### MicroAppsSvcs <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs"></a>
|
|
870
|
+
### MicroAppsSvcs <a name="MicroAppsSvcs" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs"></a>
|
|
382
871
|
|
|
383
|
-
- *Implements:*
|
|
872
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs">IMicroAppsSvcs</a>
|
|
384
873
|
|
|
385
874
|
Create a new MicroApps Services construct, including the Deployer and Router Lambda Functions, and the DynamoDB Table used by both.
|
|
386
875
|
|
|
387
|
-
####
|
|
876
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer"></a>
|
|
388
877
|
|
|
389
878
|
```typescript
|
|
390
879
|
import { MicroAppsSvcs } from '@pwrdrvr/microapps-cdk'
|
|
@@ -392,60 +881,155 @@ import { MicroAppsSvcs } from '@pwrdrvr/microapps-cdk'
|
|
|
392
881
|
new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
|
|
393
882
|
```
|
|
394
883
|
|
|
395
|
-
|
|
884
|
+
| **Name** | **Type** | **Description** |
|
|
885
|
+
| --- | --- | --- |
|
|
886
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
887
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
888
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps">MicroAppsSvcsProps</a></code> | *No description.* |
|
|
889
|
+
|
|
890
|
+
---
|
|
891
|
+
|
|
892
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer.parameter.scope"></a>
|
|
893
|
+
|
|
894
|
+
- *Type:* constructs.Construct
|
|
895
|
+
|
|
896
|
+
---
|
|
897
|
+
|
|
898
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer.parameter.id"></a>
|
|
899
|
+
|
|
900
|
+
- *Type:* string
|
|
901
|
+
|
|
902
|
+
---
|
|
903
|
+
|
|
904
|
+
##### `props`<sup>Optional</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer.parameter.props"></a>
|
|
905
|
+
|
|
906
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps">MicroAppsSvcsProps</a>
|
|
907
|
+
|
|
908
|
+
---
|
|
909
|
+
|
|
910
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
911
|
+
|
|
912
|
+
| **Name** | **Description** |
|
|
913
|
+
| --- | --- |
|
|
914
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
915
|
+
|
|
916
|
+
---
|
|
917
|
+
|
|
918
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.toString"></a>
|
|
919
|
+
|
|
920
|
+
```typescript
|
|
921
|
+
public toString(): string
|
|
922
|
+
```
|
|
923
|
+
|
|
924
|
+
Returns a string representation of this construct.
|
|
396
925
|
|
|
397
|
-
|
|
926
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
927
|
+
|
|
928
|
+
| **Name** | **Description** |
|
|
929
|
+
| --- | --- |
|
|
930
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
398
931
|
|
|
399
932
|
---
|
|
400
933
|
|
|
401
|
-
##### `
|
|
934
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.isConstruct"></a>
|
|
935
|
+
|
|
936
|
+
```typescript
|
|
937
|
+
import { MicroAppsSvcs } from '@pwrdrvr/microapps-cdk'
|
|
938
|
+
|
|
939
|
+
MicroAppsSvcs.isConstruct(x: any)
|
|
940
|
+
```
|
|
941
|
+
|
|
942
|
+
Checks if `x` is a construct.
|
|
943
|
+
|
|
944
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
945
|
+
instances, even when the construct library is symlinked.
|
|
946
|
+
|
|
947
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
948
|
+
disk are seen as independent, completely different libraries. As a
|
|
949
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
950
|
+
is seen as a different class, and an instance of one class will not test as
|
|
951
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
952
|
+
like this, but users may manually symlink construct libraries together or
|
|
953
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
954
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
955
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
956
|
+
this type-testing method instead.
|
|
957
|
+
|
|
958
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.isConstruct.parameter.x"></a>
|
|
402
959
|
|
|
403
|
-
- *Type:*
|
|
960
|
+
- *Type:* any
|
|
961
|
+
|
|
962
|
+
Any object.
|
|
404
963
|
|
|
405
964
|
---
|
|
406
965
|
|
|
407
|
-
|
|
966
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
408
967
|
|
|
409
|
-
|
|
968
|
+
| **Name** | **Type** | **Description** |
|
|
969
|
+
| --- | --- | --- |
|
|
970
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
971
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.deployerFunc">deployerFunc</a></code> | <code>aws-cdk-lib.aws_lambda.Function</code> | Lambda function for the Deployer. |
|
|
972
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.table">table</a></code> | <code>aws-cdk-lib.aws_dynamodb.ITable</code> | DynamoDB table used by Router, Deployer, and Release console app. |
|
|
973
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.routerFunc">routerFunc</a></code> | <code>aws-cdk-lib.aws_lambda.Function</code> | Lambda function for the Router. |
|
|
410
974
|
|
|
411
975
|
---
|
|
412
976
|
|
|
977
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.node"></a>
|
|
413
978
|
|
|
979
|
+
```typescript
|
|
980
|
+
public readonly node: Node;
|
|
981
|
+
```
|
|
414
982
|
|
|
415
|
-
|
|
983
|
+
- *Type:* constructs.Node
|
|
416
984
|
|
|
417
|
-
|
|
985
|
+
The tree node.
|
|
986
|
+
|
|
987
|
+
---
|
|
988
|
+
|
|
989
|
+
##### `deployerFunc`<sup>Required</sup> <a name="deployerFunc" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.deployerFunc"></a>
|
|
990
|
+
|
|
991
|
+
```typescript
|
|
992
|
+
public readonly deployerFunc: Function;
|
|
993
|
+
```
|
|
418
994
|
|
|
419
|
-
- *Type:*
|
|
995
|
+
- *Type:* aws-cdk-lib.aws_lambda.Function
|
|
420
996
|
|
|
421
997
|
Lambda function for the Deployer.
|
|
422
998
|
|
|
423
999
|
---
|
|
424
1000
|
|
|
425
|
-
##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.table"></a>
|
|
1001
|
+
##### `table`<sup>Required</sup> <a name="table" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.table"></a>
|
|
426
1002
|
|
|
427
|
-
|
|
1003
|
+
```typescript
|
|
1004
|
+
public readonly table: ITable;
|
|
1005
|
+
```
|
|
1006
|
+
|
|
1007
|
+
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
|
|
428
1008
|
|
|
429
1009
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
430
1010
|
|
|
431
1011
|
---
|
|
432
1012
|
|
|
433
|
-
##### `routerFunc`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.routerFunc"></a>
|
|
1013
|
+
##### `routerFunc`<sup>Optional</sup> <a name="routerFunc" id="@pwrdrvr/microapps-cdk.MicroAppsSvcs.property.routerFunc"></a>
|
|
1014
|
+
|
|
1015
|
+
```typescript
|
|
1016
|
+
public readonly routerFunc: Function;
|
|
1017
|
+
```
|
|
434
1018
|
|
|
435
|
-
- *Type:*
|
|
1019
|
+
- *Type:* aws-cdk-lib.aws_lambda.Function
|
|
436
1020
|
|
|
437
1021
|
Lambda function for the Router.
|
|
438
1022
|
|
|
439
1023
|
---
|
|
440
1024
|
|
|
441
1025
|
|
|
442
|
-
### MicroAppsTable <a name="@pwrdrvr/microapps-cdk.MicroAppsTable"></a>
|
|
1026
|
+
### MicroAppsTable <a name="MicroAppsTable" id="@pwrdrvr/microapps-cdk.MicroAppsTable"></a>
|
|
443
1027
|
|
|
444
|
-
- *Implements:*
|
|
1028
|
+
- *Implements:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsTable">IMicroAppsTable</a>
|
|
445
1029
|
|
|
446
1030
|
Create a new MicroApps Table for apps / versions / rules.
|
|
447
1031
|
|
|
448
|
-
####
|
|
1032
|
+
#### Initializers <a name="Initializers" id="@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer"></a>
|
|
449
1033
|
|
|
450
1034
|
```typescript
|
|
451
1035
|
import { MicroAppsTable } from '@pwrdrvr/microapps-cdk'
|
|
@@ -453,44 +1037,129 @@ import { MicroAppsTable } from '@pwrdrvr/microapps-cdk'
|
|
|
453
1037
|
new MicroAppsTable(scope: Construct, id: string, props?: MicroAppsTableProps)
|
|
454
1038
|
```
|
|
455
1039
|
|
|
456
|
-
|
|
1040
|
+
| **Name** | **Type** | **Description** |
|
|
1041
|
+
| --- | --- | --- |
|
|
1042
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
1043
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
1044
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer.parameter.props">props</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTableProps">MicroAppsTableProps</a></code> | *No description.* |
|
|
457
1045
|
|
|
458
|
-
|
|
1046
|
+
---
|
|
1047
|
+
|
|
1048
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer.parameter.scope"></a>
|
|
1049
|
+
|
|
1050
|
+
- *Type:* constructs.Construct
|
|
459
1051
|
|
|
460
1052
|
---
|
|
461
1053
|
|
|
462
|
-
##### `id`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsTable.id"></a>
|
|
1054
|
+
##### `id`<sup>Required</sup> <a name="id" id="@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer.parameter.id"></a>
|
|
463
1055
|
|
|
464
|
-
- *Type:*
|
|
1056
|
+
- *Type:* string
|
|
465
1057
|
|
|
466
1058
|
---
|
|
467
1059
|
|
|
468
|
-
##### `props`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsTable.props"></a>
|
|
1060
|
+
##### `props`<sup>Optional</sup> <a name="props" id="@pwrdrvr/microapps-cdk.MicroAppsTable.Initializer.parameter.props"></a>
|
|
469
1061
|
|
|
470
|
-
- *Type:*
|
|
1062
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsTableProps">MicroAppsTableProps</a>
|
|
471
1063
|
|
|
472
1064
|
---
|
|
473
1065
|
|
|
1066
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
474
1067
|
|
|
1068
|
+
| **Name** | **Description** |
|
|
1069
|
+
| --- | --- |
|
|
1070
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
475
1071
|
|
|
476
|
-
|
|
1072
|
+
---
|
|
477
1073
|
|
|
478
|
-
##### `
|
|
1074
|
+
##### `toString` <a name="toString" id="@pwrdrvr/microapps-cdk.MicroAppsTable.toString"></a>
|
|
479
1075
|
|
|
480
|
-
|
|
1076
|
+
```typescript
|
|
1077
|
+
public toString(): string
|
|
1078
|
+
```
|
|
1079
|
+
|
|
1080
|
+
Returns a string representation of this construct.
|
|
1081
|
+
|
|
1082
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
1083
|
+
|
|
1084
|
+
| **Name** | **Description** |
|
|
1085
|
+
| --- | --- |
|
|
1086
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
1087
|
+
|
|
1088
|
+
---
|
|
1089
|
+
|
|
1090
|
+
##### `isConstruct` <a name="isConstruct" id="@pwrdrvr/microapps-cdk.MicroAppsTable.isConstruct"></a>
|
|
1091
|
+
|
|
1092
|
+
```typescript
|
|
1093
|
+
import { MicroAppsTable } from '@pwrdrvr/microapps-cdk'
|
|
1094
|
+
|
|
1095
|
+
MicroAppsTable.isConstruct(x: any)
|
|
1096
|
+
```
|
|
1097
|
+
|
|
1098
|
+
Checks if `x` is a construct.
|
|
1099
|
+
|
|
1100
|
+
Use this method instead of `instanceof` to properly detect `Construct`
|
|
1101
|
+
instances, even when the construct library is symlinked.
|
|
1102
|
+
|
|
1103
|
+
Explanation: in JavaScript, multiple copies of the `constructs` library on
|
|
1104
|
+
disk are seen as independent, completely different libraries. As a
|
|
1105
|
+
consequence, the class `Construct` in each copy of the `constructs` library
|
|
1106
|
+
is seen as a different class, and an instance of one class will not test as
|
|
1107
|
+
`instanceof` the other class. `npm install` will not create installations
|
|
1108
|
+
like this, but users may manually symlink construct libraries together or
|
|
1109
|
+
use a monorepo tool: in those cases, multiple copies of the `constructs`
|
|
1110
|
+
library can be accidentally installed, and `instanceof` will behave
|
|
1111
|
+
unpredictably. It is safest to avoid using `instanceof`, and using
|
|
1112
|
+
this type-testing method instead.
|
|
1113
|
+
|
|
1114
|
+
###### `x`<sup>Required</sup> <a name="x" id="@pwrdrvr/microapps-cdk.MicroAppsTable.isConstruct.parameter.x"></a>
|
|
1115
|
+
|
|
1116
|
+
- *Type:* any
|
|
1117
|
+
|
|
1118
|
+
Any object.
|
|
1119
|
+
|
|
1120
|
+
---
|
|
1121
|
+
|
|
1122
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1123
|
+
|
|
1124
|
+
| **Name** | **Type** | **Description** |
|
|
1125
|
+
| --- | --- | --- |
|
|
1126
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
1127
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTable.property.table">table</a></code> | <code>aws-cdk-lib.aws_dynamodb.Table</code> | DynamoDB table used by Router, Deployer, and Release console app. |
|
|
1128
|
+
|
|
1129
|
+
---
|
|
1130
|
+
|
|
1131
|
+
##### `node`<sup>Required</sup> <a name="node" id="@pwrdrvr/microapps-cdk.MicroAppsTable.property.node"></a>
|
|
1132
|
+
|
|
1133
|
+
```typescript
|
|
1134
|
+
public readonly node: Node;
|
|
1135
|
+
```
|
|
1136
|
+
|
|
1137
|
+
- *Type:* constructs.Node
|
|
1138
|
+
|
|
1139
|
+
The tree node.
|
|
1140
|
+
|
|
1141
|
+
---
|
|
1142
|
+
|
|
1143
|
+
##### `table`<sup>Required</sup> <a name="table" id="@pwrdrvr/microapps-cdk.MicroAppsTable.property.table"></a>
|
|
1144
|
+
|
|
1145
|
+
```typescript
|
|
1146
|
+
public readonly table: Table;
|
|
1147
|
+
```
|
|
1148
|
+
|
|
1149
|
+
- *Type:* aws-cdk-lib.aws_dynamodb.Table
|
|
481
1150
|
|
|
482
1151
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
483
1152
|
|
|
484
1153
|
---
|
|
485
1154
|
|
|
486
1155
|
|
|
487
|
-
## Structs <a name="Structs"></a>
|
|
1156
|
+
## Structs <a name="Structs" id="Structs"></a>
|
|
488
1157
|
|
|
489
|
-
### AddRoutesOptions <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions"></a>
|
|
1158
|
+
### AddRoutesOptions <a name="AddRoutesOptions" id="@pwrdrvr/microapps-cdk.AddRoutesOptions"></a>
|
|
490
1159
|
|
|
491
1160
|
Options for `AddRoutes`.
|
|
492
1161
|
|
|
493
|
-
#### Initializer <a name="
|
|
1162
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.Initializer"></a>
|
|
494
1163
|
|
|
495
1164
|
```typescript
|
|
496
1165
|
import { AddRoutesOptions } from '@pwrdrvr/microapps-cdk'
|
|
@@ -498,9 +1167,26 @@ import { AddRoutesOptions } from '@pwrdrvr/microapps-cdk'
|
|
|
498
1167
|
const addRoutesOptions: AddRoutesOptions = { ... }
|
|
499
1168
|
```
|
|
500
1169
|
|
|
501
|
-
|
|
1170
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1171
|
+
|
|
1172
|
+
| **Name** | **Type** | **Description** |
|
|
1173
|
+
| --- | --- | --- |
|
|
1174
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions.property.appOnlyOrigin">appOnlyOrigin</a></code> | <code>aws-cdk-lib.aws_cloudfront.IOrigin</code> | Application origin. |
|
|
1175
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions.property.appOriginRequestPolicy">appOriginRequestPolicy</a></code> | <code>aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy</code> | Origin Request policy for API Gateway Origin. |
|
|
1176
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions.property.bucketOriginFallbackToApp">bucketOriginFallbackToApp</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.OriginGroup</code> | Origin Group with Primary of S3 bucket with `x-microapps-origin: s3` custom header and Fallback of `appOnlyOrigin`. |
|
|
1177
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions.property.distro">distro</a></code> | <code>aws-cdk-lib.aws_cloudfront.Distribution</code> | CloudFront Distribution to add the Behaviors (Routes) to. |
|
|
1178
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions.property.edgeLambdas">edgeLambdas</a></code> | <code>aws-cdk-lib.aws_cloudfront.EdgeLambda[]</code> | Edge lambdas to associate with the API Gateway routes. |
|
|
1179
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.AddRoutesOptions.property.rootPathPrefix">rootPathPrefix</a></code> | <code>string</code> | Path prefix on the root of the CloudFront distribution. |
|
|
502
1180
|
|
|
503
|
-
|
|
1181
|
+
---
|
|
1182
|
+
|
|
1183
|
+
##### `appOnlyOrigin`<sup>Required</sup> <a name="appOnlyOrigin" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.property.appOnlyOrigin"></a>
|
|
1184
|
+
|
|
1185
|
+
```typescript
|
|
1186
|
+
public readonly appOnlyOrigin: IOrigin;
|
|
1187
|
+
```
|
|
1188
|
+
|
|
1189
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.IOrigin
|
|
504
1190
|
|
|
505
1191
|
Application origin.
|
|
506
1192
|
|
|
@@ -510,51 +1196,78 @@ The request never actually falls through to the S3 bucket.
|
|
|
510
1196
|
|
|
511
1197
|
---
|
|
512
1198
|
|
|
513
|
-
##### `appOriginRequestPolicy`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.appOriginRequestPolicy"></a>
|
|
1199
|
+
##### `appOriginRequestPolicy`<sup>Required</sup> <a name="appOriginRequestPolicy" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.property.appOriginRequestPolicy"></a>
|
|
1200
|
+
|
|
1201
|
+
```typescript
|
|
1202
|
+
public readonly appOriginRequestPolicy: IOriginRequestPolicy;
|
|
1203
|
+
```
|
|
514
1204
|
|
|
515
|
-
- *Type:*
|
|
1205
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy
|
|
516
1206
|
|
|
517
1207
|
Origin Request policy for API Gateway Origin.
|
|
518
1208
|
|
|
519
1209
|
---
|
|
520
1210
|
|
|
521
|
-
##### `bucketOriginFallbackToApp`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.bucketOriginFallbackToApp"></a>
|
|
1211
|
+
##### `bucketOriginFallbackToApp`<sup>Required</sup> <a name="bucketOriginFallbackToApp" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.property.bucketOriginFallbackToApp"></a>
|
|
1212
|
+
|
|
1213
|
+
```typescript
|
|
1214
|
+
public readonly bucketOriginFallbackToApp: OriginGroup;
|
|
1215
|
+
```
|
|
522
1216
|
|
|
523
|
-
- *Type:*
|
|
1217
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.OriginGroup
|
|
524
1218
|
|
|
525
1219
|
Origin Group with Primary of S3 bucket with `x-microapps-origin: s3` custom header and Fallback of `appOnlyOrigin`.
|
|
526
1220
|
|
|
527
1221
|
---
|
|
528
1222
|
|
|
529
|
-
##### `distro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.distro"></a>
|
|
1223
|
+
##### `distro`<sup>Required</sup> <a name="distro" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.property.distro"></a>
|
|
530
1224
|
|
|
531
|
-
|
|
1225
|
+
```typescript
|
|
1226
|
+
public readonly distro: Distribution;
|
|
1227
|
+
```
|
|
1228
|
+
|
|
1229
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.Distribution
|
|
532
1230
|
|
|
533
1231
|
CloudFront Distribution to add the Behaviors (Routes) to.
|
|
534
1232
|
|
|
535
1233
|
---
|
|
536
1234
|
|
|
537
|
-
##### `edgeLambdas`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.edgeLambdas"></a>
|
|
1235
|
+
##### `edgeLambdas`<sup>Optional</sup> <a name="edgeLambdas" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.property.edgeLambdas"></a>
|
|
538
1236
|
|
|
539
|
-
|
|
1237
|
+
```typescript
|
|
1238
|
+
public readonly edgeLambdas: EdgeLambda[];
|
|
1239
|
+
```
|
|
1240
|
+
|
|
1241
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.EdgeLambda[]
|
|
540
1242
|
|
|
541
1243
|
Edge lambdas to associate with the API Gateway routes.
|
|
542
1244
|
|
|
543
1245
|
---
|
|
544
1246
|
|
|
545
|
-
##### `rootPathPrefix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.rootPathPrefix"></a>
|
|
1247
|
+
##### `rootPathPrefix`<sup>Optional</sup> <a name="rootPathPrefix" id="@pwrdrvr/microapps-cdk.AddRoutesOptions.property.rootPathPrefix"></a>
|
|
546
1248
|
|
|
547
|
-
|
|
1249
|
+
```typescript
|
|
1250
|
+
public readonly rootPathPrefix: string;
|
|
1251
|
+
```
|
|
1252
|
+
|
|
1253
|
+
- *Type:* string
|
|
548
1254
|
|
|
549
1255
|
Path prefix on the root of the CloudFront distribution.
|
|
550
1256
|
|
|
551
1257
|
---
|
|
552
1258
|
|
|
553
|
-
|
|
1259
|
+
*Example*
|
|
1260
|
+
|
|
1261
|
+
```typescript
|
|
1262
|
+
dev/
|
|
1263
|
+
```
|
|
1264
|
+
|
|
1265
|
+
|
|
1266
|
+
### CreateAPIOriginPolicyOptions <a name="CreateAPIOriginPolicyOptions" id="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions"></a>
|
|
554
1267
|
|
|
555
1268
|
Options for the `CreateAPIOriginPolicy`.
|
|
556
1269
|
|
|
557
|
-
#### Initializer <a name="
|
|
1270
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.Initializer"></a>
|
|
558
1271
|
|
|
559
1272
|
```typescript
|
|
560
1273
|
import { CreateAPIOriginPolicyOptions } from '@pwrdrvr/microapps-cdk'
|
|
@@ -562,35 +1275,71 @@ import { CreateAPIOriginPolicyOptions } from '@pwrdrvr/microapps-cdk'
|
|
|
562
1275
|
const createAPIOriginPolicyOptions: CreateAPIOriginPolicyOptions = { ... }
|
|
563
1276
|
```
|
|
564
1277
|
|
|
565
|
-
|
|
1278
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
566
1279
|
|
|
567
|
-
|
|
1280
|
+
| **Name** | **Type** | **Description** |
|
|
1281
|
+
| --- | --- | --- |
|
|
1282
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
1283
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
1284
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.property.domainNameEdge">domainNameEdge</a></code> | <code>string</code> | Edge domain name used by CloudFront - If set a custom OriginRequestPolicy will be created that prevents the Host header from being passed to the origin. |
|
|
1285
|
+
|
|
1286
|
+
---
|
|
1287
|
+
|
|
1288
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.property.assetNameRoot"></a>
|
|
1289
|
+
|
|
1290
|
+
```typescript
|
|
1291
|
+
public readonly assetNameRoot: string;
|
|
1292
|
+
```
|
|
1293
|
+
|
|
1294
|
+
- *Type:* string
|
|
568
1295
|
- *Default:* resource names auto assigned
|
|
569
1296
|
|
|
570
1297
|
Optional asset name root.
|
|
571
1298
|
|
|
572
1299
|
---
|
|
573
1300
|
|
|
574
|
-
|
|
1301
|
+
*Example*
|
|
1302
|
+
|
|
1303
|
+
```typescript
|
|
1304
|
+
microapps
|
|
1305
|
+
```
|
|
1306
|
+
|
|
1307
|
+
|
|
1308
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.property.assetNameSuffix"></a>
|
|
575
1309
|
|
|
576
|
-
|
|
1310
|
+
```typescript
|
|
1311
|
+
public readonly assetNameSuffix: string;
|
|
1312
|
+
```
|
|
1313
|
+
|
|
1314
|
+
- *Type:* string
|
|
577
1315
|
- *Default:* none
|
|
578
1316
|
|
|
579
1317
|
Optional asset name suffix.
|
|
580
1318
|
|
|
581
1319
|
---
|
|
582
1320
|
|
|
583
|
-
|
|
1321
|
+
*Example*
|
|
1322
|
+
|
|
1323
|
+
```typescript
|
|
1324
|
+
-dev-pr-12
|
|
1325
|
+
```
|
|
1326
|
+
|
|
1327
|
+
|
|
1328
|
+
##### `domainNameEdge`<sup>Optional</sup> <a name="domainNameEdge" id="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.property.domainNameEdge"></a>
|
|
1329
|
+
|
|
1330
|
+
```typescript
|
|
1331
|
+
public readonly domainNameEdge: string;
|
|
1332
|
+
```
|
|
584
1333
|
|
|
585
|
-
- *Type:*
|
|
1334
|
+
- *Type:* string
|
|
586
1335
|
|
|
587
1336
|
Edge domain name used by CloudFront - If set a custom OriginRequestPolicy will be created that prevents the Host header from being passed to the origin.
|
|
588
1337
|
|
|
589
1338
|
---
|
|
590
1339
|
|
|
591
|
-
### GenerateEdgeToOriginConfigOptions <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions"></a>
|
|
1340
|
+
### GenerateEdgeToOriginConfigOptions <a name="GenerateEdgeToOriginConfigOptions" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions"></a>
|
|
592
1341
|
|
|
593
|
-
#### Initializer <a name="
|
|
1342
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.Initializer"></a>
|
|
594
1343
|
|
|
595
1344
|
```typescript
|
|
596
1345
|
import { GenerateEdgeToOriginConfigOptions } from '@pwrdrvr/microapps-cdk'
|
|
@@ -598,53 +1347,95 @@ import { GenerateEdgeToOriginConfigOptions } from '@pwrdrvr/microapps-cdk'
|
|
|
598
1347
|
const generateEdgeToOriginConfigOptions: GenerateEdgeToOriginConfigOptions = { ... }
|
|
599
1348
|
```
|
|
600
1349
|
|
|
601
|
-
|
|
1350
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1351
|
+
|
|
1352
|
+
| **Name** | **Type** | **Description** |
|
|
1353
|
+
| --- | --- | --- |
|
|
1354
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.addXForwardedHostHeader">addXForwardedHostHeader</a></code> | <code>boolean</code> | *No description.* |
|
|
1355
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.originRegion">originRegion</a></code> | <code>string</code> | *No description.* |
|
|
1356
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.replaceHostHeader">replaceHostHeader</a></code> | <code>boolean</code> | *No description.* |
|
|
1357
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.signingMode">signingMode</a></code> | <code>string</code> | *No description.* |
|
|
1358
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.locales">locales</a></code> | <code>string[]</code> | *No description.* |
|
|
1359
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.rootPathPrefix">rootPathPrefix</a></code> | <code>string</code> | *No description.* |
|
|
1360
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.tableName">tableName</a></code> | <code>string</code> | *No description.* |
|
|
602
1361
|
|
|
603
|
-
|
|
1362
|
+
---
|
|
1363
|
+
|
|
1364
|
+
##### `addXForwardedHostHeader`<sup>Required</sup> <a name="addXForwardedHostHeader" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.addXForwardedHostHeader"></a>
|
|
1365
|
+
|
|
1366
|
+
```typescript
|
|
1367
|
+
public readonly addXForwardedHostHeader: boolean;
|
|
1368
|
+
```
|
|
1369
|
+
|
|
1370
|
+
- *Type:* boolean
|
|
604
1371
|
|
|
605
1372
|
---
|
|
606
1373
|
|
|
607
|
-
##### `originRegion`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.originRegion"></a>
|
|
1374
|
+
##### `originRegion`<sup>Required</sup> <a name="originRegion" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.originRegion"></a>
|
|
608
1375
|
|
|
609
|
-
|
|
1376
|
+
```typescript
|
|
1377
|
+
public readonly originRegion: string;
|
|
1378
|
+
```
|
|
1379
|
+
|
|
1380
|
+
- *Type:* string
|
|
610
1381
|
|
|
611
1382
|
---
|
|
612
1383
|
|
|
613
|
-
##### `replaceHostHeader`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.replaceHostHeader"></a>
|
|
1384
|
+
##### `replaceHostHeader`<sup>Required</sup> <a name="replaceHostHeader" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.replaceHostHeader"></a>
|
|
1385
|
+
|
|
1386
|
+
```typescript
|
|
1387
|
+
public readonly replaceHostHeader: boolean;
|
|
1388
|
+
```
|
|
614
1389
|
|
|
615
|
-
- *Type:*
|
|
1390
|
+
- *Type:* boolean
|
|
616
1391
|
|
|
617
1392
|
---
|
|
618
1393
|
|
|
619
|
-
##### `signingMode`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.signingMode"></a>
|
|
1394
|
+
##### `signingMode`<sup>Required</sup> <a name="signingMode" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.signingMode"></a>
|
|
620
1395
|
|
|
621
|
-
|
|
1396
|
+
```typescript
|
|
1397
|
+
public readonly signingMode: string;
|
|
1398
|
+
```
|
|
1399
|
+
|
|
1400
|
+
- *Type:* string
|
|
622
1401
|
|
|
623
1402
|
---
|
|
624
1403
|
|
|
625
|
-
##### `locales`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.locales"></a>
|
|
1404
|
+
##### `locales`<sup>Optional</sup> <a name="locales" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.locales"></a>
|
|
1405
|
+
|
|
1406
|
+
```typescript
|
|
1407
|
+
public readonly locales: string[];
|
|
1408
|
+
```
|
|
626
1409
|
|
|
627
|
-
- *Type:*
|
|
1410
|
+
- *Type:* string[]
|
|
628
1411
|
|
|
629
1412
|
---
|
|
630
1413
|
|
|
631
|
-
##### `rootPathPrefix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.rootPathPrefix"></a>
|
|
1414
|
+
##### `rootPathPrefix`<sup>Optional</sup> <a name="rootPathPrefix" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.rootPathPrefix"></a>
|
|
1415
|
+
|
|
1416
|
+
```typescript
|
|
1417
|
+
public readonly rootPathPrefix: string;
|
|
1418
|
+
```
|
|
632
1419
|
|
|
633
|
-
- *Type:*
|
|
1420
|
+
- *Type:* string
|
|
634
1421
|
|
|
635
1422
|
---
|
|
636
1423
|
|
|
637
|
-
##### `tableName`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.tableName"></a>
|
|
1424
|
+
##### `tableName`<sup>Optional</sup> <a name="tableName" id="@pwrdrvr/microapps-cdk.GenerateEdgeToOriginConfigOptions.property.tableName"></a>
|
|
1425
|
+
|
|
1426
|
+
```typescript
|
|
1427
|
+
public readonly tableName: string;
|
|
1428
|
+
```
|
|
638
1429
|
|
|
639
|
-
- *Type:*
|
|
1430
|
+
- *Type:* string
|
|
640
1431
|
|
|
641
1432
|
---
|
|
642
1433
|
|
|
643
|
-
### MicroAppsCFProps <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps"></a>
|
|
1434
|
+
### MicroAppsCFProps <a name="MicroAppsCFProps" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps"></a>
|
|
644
1435
|
|
|
645
1436
|
Properties to initialize an instance of `MicroAppsCF`.
|
|
646
1437
|
|
|
647
|
-
#### Initializer <a name="
|
|
1438
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.Initializer"></a>
|
|
648
1439
|
|
|
649
1440
|
```typescript
|
|
650
1441
|
import { MicroAppsCFProps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -652,59 +1443,123 @@ import { MicroAppsCFProps } from '@pwrdrvr/microapps-cdk'
|
|
|
652
1443
|
const microAppsCFProps: MicroAppsCFProps = { ... }
|
|
653
1444
|
```
|
|
654
1445
|
|
|
655
|
-
|
|
1446
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1447
|
+
|
|
1448
|
+
| **Name** | **Type** | **Description** |
|
|
1449
|
+
| --- | --- | --- |
|
|
1450
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.bucketAppsOriginApp">bucketAppsOriginApp</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.S3Origin</code> | S3 bucket origin for deployed applications Marked with `x-microapps-origin: app`. |
|
|
1451
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.bucketAppsOriginS3">bucketAppsOriginS3</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.S3Origin</code> | S3 bucket origin for deployed applications Marked with `x-microapps-origin: s3`. |
|
|
1452
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
1453
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
1454
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.bucketLogs">bucketLogs</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for CloudFront logs. |
|
|
1455
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.certEdge">certEdge</a></code> | <code>aws-cdk-lib.aws_certificatemanager.ICertificate</code> | ACM Certificate that covers `domainNameEdge` name. |
|
|
1456
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.createAPIPathRoute">createAPIPathRoute</a></code> | <code>boolean</code> | Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them. |
|
|
1457
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.createNextDataPathRoute">createNextDataPathRoute</a></code> | <code>boolean</code> | Create an extra Behavior (Route) for /_next/data/ This route is used by Next.js to load data from the API Gateway on `getServerSideProps` calls. The requests can end in `.json`, which would cause them to be routed to S3 if this route is not created. |
|
|
1458
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.domainNameEdge">domainNameEdge</a></code> | <code>string</code> | CloudFront Distribution domain name. |
|
|
1459
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.domainNameOrigin">domainNameOrigin</a></code> | <code>string</code> | API Gateway custom origin domain name. |
|
|
1460
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.edgeLambdas">edgeLambdas</a></code> | <code>aws-cdk-lib.aws_cloudfront.EdgeLambda[]</code> | Configuration of the edge to origin lambda functions. |
|
|
1461
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.originShieldRegion">originShieldRegion</a></code> | <code>string</code> | Optional Origin Shield Region. |
|
|
1462
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.r53Zone">r53Zone</a></code> | <code>aws-cdk-lib.aws_route53.IHostedZone</code> | Route53 zone in which to create optional `domainNameEdge` record. |
|
|
1463
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
1464
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.rootPathPrefix">rootPathPrefix</a></code> | <code>string</code> | Path prefix on the root of the CloudFront distribution. |
|
|
1465
|
+
|
|
1466
|
+
---
|
|
1467
|
+
|
|
1468
|
+
##### `bucketAppsOriginApp`<sup>Required</sup> <a name="bucketAppsOriginApp" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.bucketAppsOriginApp"></a>
|
|
656
1469
|
|
|
657
|
-
|
|
1470
|
+
```typescript
|
|
1471
|
+
public readonly bucketAppsOriginApp: S3Origin;
|
|
1472
|
+
```
|
|
1473
|
+
|
|
1474
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.S3Origin
|
|
658
1475
|
|
|
659
1476
|
S3 bucket origin for deployed applications Marked with `x-microapps-origin: app`.
|
|
660
1477
|
|
|
661
1478
|
---
|
|
662
1479
|
|
|
663
|
-
##### `bucketAppsOriginS3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketAppsOriginS3"></a>
|
|
1480
|
+
##### `bucketAppsOriginS3`<sup>Required</sup> <a name="bucketAppsOriginS3" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.bucketAppsOriginS3"></a>
|
|
1481
|
+
|
|
1482
|
+
```typescript
|
|
1483
|
+
public readonly bucketAppsOriginS3: S3Origin;
|
|
1484
|
+
```
|
|
664
1485
|
|
|
665
|
-
- *Type:*
|
|
1486
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.S3Origin
|
|
666
1487
|
|
|
667
1488
|
S3 bucket origin for deployed applications Marked with `x-microapps-origin: s3`.
|
|
668
1489
|
|
|
669
1490
|
---
|
|
670
1491
|
|
|
671
|
-
##### `assetNameRoot`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.assetNameRoot"></a>
|
|
1492
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.assetNameRoot"></a>
|
|
1493
|
+
|
|
1494
|
+
```typescript
|
|
1495
|
+
public readonly assetNameRoot: string;
|
|
1496
|
+
```
|
|
672
1497
|
|
|
673
|
-
- *Type:*
|
|
1498
|
+
- *Type:* string
|
|
674
1499
|
- *Default:* resource names auto assigned
|
|
675
1500
|
|
|
676
1501
|
Optional asset name root.
|
|
677
1502
|
|
|
678
1503
|
---
|
|
679
1504
|
|
|
680
|
-
|
|
1505
|
+
*Example*
|
|
1506
|
+
|
|
1507
|
+
```typescript
|
|
1508
|
+
microapps
|
|
1509
|
+
```
|
|
1510
|
+
|
|
1511
|
+
|
|
1512
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.assetNameSuffix"></a>
|
|
1513
|
+
|
|
1514
|
+
```typescript
|
|
1515
|
+
public readonly assetNameSuffix: string;
|
|
1516
|
+
```
|
|
681
1517
|
|
|
682
|
-
- *Type:*
|
|
1518
|
+
- *Type:* string
|
|
683
1519
|
- *Default:* none
|
|
684
1520
|
|
|
685
1521
|
Optional asset name suffix.
|
|
686
1522
|
|
|
687
1523
|
---
|
|
688
1524
|
|
|
689
|
-
|
|
1525
|
+
*Example*
|
|
1526
|
+
|
|
1527
|
+
```typescript
|
|
1528
|
+
-dev-pr-12
|
|
1529
|
+
```
|
|
1530
|
+
|
|
1531
|
+
|
|
1532
|
+
##### `bucketLogs`<sup>Optional</sup> <a name="bucketLogs" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.bucketLogs"></a>
|
|
1533
|
+
|
|
1534
|
+
```typescript
|
|
1535
|
+
public readonly bucketLogs: IBucket;
|
|
1536
|
+
```
|
|
690
1537
|
|
|
691
|
-
- *Type:*
|
|
1538
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
692
1539
|
|
|
693
1540
|
S3 bucket for CloudFront logs.
|
|
694
1541
|
|
|
695
1542
|
---
|
|
696
1543
|
|
|
697
|
-
##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.certEdge"></a>
|
|
1544
|
+
##### `certEdge`<sup>Optional</sup> <a name="certEdge" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.certEdge"></a>
|
|
1545
|
+
|
|
1546
|
+
```typescript
|
|
1547
|
+
public readonly certEdge: ICertificate;
|
|
1548
|
+
```
|
|
698
1549
|
|
|
699
|
-
- *Type:*
|
|
1550
|
+
- *Type:* aws-cdk-lib.aws_certificatemanager.ICertificate
|
|
700
1551
|
|
|
701
1552
|
ACM Certificate that covers `domainNameEdge` name.
|
|
702
1553
|
|
|
703
1554
|
---
|
|
704
1555
|
|
|
705
|
-
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.createAPIPathRoute"></a>
|
|
1556
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="createAPIPathRoute" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.createAPIPathRoute"></a>
|
|
706
1557
|
|
|
707
|
-
|
|
1558
|
+
```typescript
|
|
1559
|
+
public readonly createAPIPathRoute: boolean;
|
|
1560
|
+
```
|
|
1561
|
+
|
|
1562
|
+
- *Type:* boolean
|
|
708
1563
|
- *Default:* true if httpApi is provided
|
|
709
1564
|
|
|
710
1565
|
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
@@ -716,9 +1571,13 @@ even if they have a period in the path.
|
|
|
716
1571
|
|
|
717
1572
|
---
|
|
718
1573
|
|
|
719
|
-
##### `createNextDataPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.createNextDataPathRoute"></a>
|
|
1574
|
+
##### `createNextDataPathRoute`<sup>Optional</sup> <a name="createNextDataPathRoute" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.createNextDataPathRoute"></a>
|
|
1575
|
+
|
|
1576
|
+
```typescript
|
|
1577
|
+
public readonly createNextDataPathRoute: boolean;
|
|
1578
|
+
```
|
|
720
1579
|
|
|
721
|
-
- *Type:*
|
|
1580
|
+
- *Type:* boolean
|
|
722
1581
|
- *Default:* true if httpApi is provided
|
|
723
1582
|
|
|
724
1583
|
Create an extra Behavior (Route) for /_next/data/ This route is used by Next.js to load data from the API Gateway on `getServerSideProps` calls. The requests can end in `.json`, which would cause them to be routed to S3 if this route is not created.
|
|
@@ -730,36 +1589,66 @@ even if they have a period in the path.
|
|
|
730
1589
|
|
|
731
1590
|
---
|
|
732
1591
|
|
|
733
|
-
##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.domainNameEdge"></a>
|
|
1592
|
+
##### `domainNameEdge`<sup>Optional</sup> <a name="domainNameEdge" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.domainNameEdge"></a>
|
|
1593
|
+
|
|
1594
|
+
```typescript
|
|
1595
|
+
public readonly domainNameEdge: string;
|
|
1596
|
+
```
|
|
734
1597
|
|
|
735
|
-
- *Type:*
|
|
1598
|
+
- *Type:* string
|
|
736
1599
|
- *Default:* auto-assigned
|
|
737
1600
|
|
|
738
1601
|
CloudFront Distribution domain name.
|
|
739
1602
|
|
|
740
1603
|
---
|
|
741
1604
|
|
|
742
|
-
|
|
1605
|
+
*Example*
|
|
1606
|
+
|
|
1607
|
+
```typescript
|
|
1608
|
+
apps.pwrdrvr.com
|
|
1609
|
+
```
|
|
1610
|
+
|
|
1611
|
+
|
|
1612
|
+
##### `domainNameOrigin`<sup>Optional</sup> <a name="domainNameOrigin" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.domainNameOrigin"></a>
|
|
1613
|
+
|
|
1614
|
+
```typescript
|
|
1615
|
+
public readonly domainNameOrigin: string;
|
|
1616
|
+
```
|
|
743
1617
|
|
|
744
|
-
- *Type:*
|
|
1618
|
+
- *Type:* string
|
|
745
1619
|
- *Default:* retrieved from httpApi, if possible
|
|
746
1620
|
|
|
747
1621
|
API Gateway custom origin domain name.
|
|
748
1622
|
|
|
749
1623
|
---
|
|
750
1624
|
|
|
751
|
-
|
|
1625
|
+
*Example*
|
|
1626
|
+
|
|
1627
|
+
```typescript
|
|
1628
|
+
apps.pwrdrvr.com
|
|
1629
|
+
```
|
|
1630
|
+
|
|
1631
|
+
|
|
1632
|
+
##### `edgeLambdas`<sup>Optional</sup> <a name="edgeLambdas" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.edgeLambdas"></a>
|
|
1633
|
+
|
|
1634
|
+
```typescript
|
|
1635
|
+
public readonly edgeLambdas: EdgeLambda[];
|
|
1636
|
+
```
|
|
752
1637
|
|
|
753
|
-
- *Type:*
|
|
1638
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.EdgeLambda[]
|
|
754
1639
|
- *Default:* no edge to API Gateway origin functions added
|
|
755
1640
|
|
|
756
1641
|
Configuration of the edge to origin lambda functions.
|
|
757
1642
|
|
|
758
1643
|
---
|
|
759
1644
|
|
|
760
|
-
##### `originShieldRegion`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.originShieldRegion"></a>
|
|
1645
|
+
##### `originShieldRegion`<sup>Optional</sup> <a name="originShieldRegion" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.originShieldRegion"></a>
|
|
1646
|
+
|
|
1647
|
+
```typescript
|
|
1648
|
+
public readonly originShieldRegion: string;
|
|
1649
|
+
```
|
|
761
1650
|
|
|
762
|
-
- *Type:*
|
|
1651
|
+
- *Type:* string
|
|
763
1652
|
- *Default:* none
|
|
764
1653
|
|
|
765
1654
|
Optional Origin Shield Region.
|
|
@@ -769,17 +1658,25 @@ EdgeToOrigin calls have the lowest latency (~1 ms).
|
|
|
769
1658
|
|
|
770
1659
|
---
|
|
771
1660
|
|
|
772
|
-
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.r53Zone"></a>
|
|
1661
|
+
##### `r53Zone`<sup>Optional</sup> <a name="r53Zone" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.r53Zone"></a>
|
|
773
1662
|
|
|
774
|
-
|
|
1663
|
+
```typescript
|
|
1664
|
+
public readonly r53Zone: IHostedZone;
|
|
1665
|
+
```
|
|
1666
|
+
|
|
1667
|
+
- *Type:* aws-cdk-lib.aws_route53.IHostedZone
|
|
775
1668
|
|
|
776
1669
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
777
1670
|
|
|
778
1671
|
---
|
|
779
1672
|
|
|
780
|
-
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.removalPolicy"></a>
|
|
1673
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.removalPolicy"></a>
|
|
1674
|
+
|
|
1675
|
+
```typescript
|
|
1676
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
1677
|
+
```
|
|
781
1678
|
|
|
782
|
-
- *Type:*
|
|
1679
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
783
1680
|
- *Default:* per resource default
|
|
784
1681
|
|
|
785
1682
|
RemovalPolicy override for child resources.
|
|
@@ -788,19 +1685,30 @@ Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true
|
|
|
788
1685
|
|
|
789
1686
|
---
|
|
790
1687
|
|
|
791
|
-
##### `rootPathPrefix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.rootPathPrefix"></a>
|
|
1688
|
+
##### `rootPathPrefix`<sup>Optional</sup> <a name="rootPathPrefix" id="@pwrdrvr/microapps-cdk.MicroAppsCFProps.property.rootPathPrefix"></a>
|
|
1689
|
+
|
|
1690
|
+
```typescript
|
|
1691
|
+
public readonly rootPathPrefix: string;
|
|
1692
|
+
```
|
|
792
1693
|
|
|
793
|
-
- *Type:*
|
|
1694
|
+
- *Type:* string
|
|
794
1695
|
|
|
795
1696
|
Path prefix on the root of the CloudFront distribution.
|
|
796
1697
|
|
|
797
1698
|
---
|
|
798
1699
|
|
|
799
|
-
|
|
1700
|
+
*Example*
|
|
1701
|
+
|
|
1702
|
+
```typescript
|
|
1703
|
+
dev/
|
|
1704
|
+
```
|
|
1705
|
+
|
|
1706
|
+
|
|
1707
|
+
### MicroAppsChildDeployerProps <a name="MicroAppsChildDeployerProps" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps"></a>
|
|
800
1708
|
|
|
801
1709
|
Properties to initialize an instance of `MicroAppsChildDeployer`.
|
|
802
1710
|
|
|
803
|
-
#### Initializer <a name="
|
|
1711
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.Initializer"></a>
|
|
804
1712
|
|
|
805
1713
|
```typescript
|
|
806
1714
|
import { MicroAppsChildDeployerProps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -808,43 +1716,91 @@ import { MicroAppsChildDeployerProps } from '@pwrdrvr/microapps-cdk'
|
|
|
808
1716
|
const microAppsChildDeployerProps: MicroAppsChildDeployerProps = { ... }
|
|
809
1717
|
```
|
|
810
1718
|
|
|
811
|
-
|
|
1719
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1720
|
+
|
|
1721
|
+
| **Name** | **Type** | **Description** |
|
|
1722
|
+
| --- | --- | --- |
|
|
1723
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.appEnv">appEnv</a></code> | <code>string</code> | Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions. |
|
|
1724
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.parentDeployerLambdaARN">parentDeployerLambdaARN</a></code> | <code>string</code> | ARN of the parent Deployer Lambda Function. |
|
|
1725
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
1726
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
1727
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.deployerTimeout">deployerTimeout</a></code> | <code>aws-cdk-lib.Duration</code> | Deployer timeout. |
|
|
1728
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.edgeToOriginRoleARN">edgeToOriginRoleARN</a></code> | <code>string</code> | ARN of the IAM Role for the Edge to Origin Lambda Function. |
|
|
1729
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
1730
|
+
|
|
1731
|
+
---
|
|
1732
|
+
|
|
1733
|
+
##### `appEnv`<sup>Required</sup> <a name="appEnv" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.appEnv"></a>
|
|
1734
|
+
|
|
1735
|
+
```typescript
|
|
1736
|
+
public readonly appEnv: string;
|
|
1737
|
+
```
|
|
812
1738
|
|
|
813
|
-
- *Type:*
|
|
1739
|
+
- *Type:* string
|
|
814
1740
|
|
|
815
1741
|
Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions.
|
|
816
1742
|
|
|
817
1743
|
---
|
|
818
1744
|
|
|
819
|
-
##### `parentDeployerLambdaARN`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.parentDeployerLambdaARN"></a>
|
|
1745
|
+
##### `parentDeployerLambdaARN`<sup>Required</sup> <a name="parentDeployerLambdaARN" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.parentDeployerLambdaARN"></a>
|
|
1746
|
+
|
|
1747
|
+
```typescript
|
|
1748
|
+
public readonly parentDeployerLambdaARN: string;
|
|
1749
|
+
```
|
|
820
1750
|
|
|
821
|
-
- *Type:*
|
|
1751
|
+
- *Type:* string
|
|
822
1752
|
|
|
823
1753
|
ARN of the parent Deployer Lambda Function.
|
|
824
1754
|
|
|
825
1755
|
---
|
|
826
1756
|
|
|
827
|
-
##### `assetNameRoot`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.assetNameRoot"></a>
|
|
1757
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.assetNameRoot"></a>
|
|
828
1758
|
|
|
829
|
-
|
|
1759
|
+
```typescript
|
|
1760
|
+
public readonly assetNameRoot: string;
|
|
1761
|
+
```
|
|
1762
|
+
|
|
1763
|
+
- *Type:* string
|
|
830
1764
|
- *Default:* resource names auto assigned
|
|
831
1765
|
|
|
832
1766
|
Optional asset name root.
|
|
833
1767
|
|
|
834
1768
|
---
|
|
835
1769
|
|
|
836
|
-
|
|
1770
|
+
*Example*
|
|
1771
|
+
|
|
1772
|
+
```typescript
|
|
1773
|
+
microapps
|
|
1774
|
+
```
|
|
1775
|
+
|
|
1776
|
+
|
|
1777
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.assetNameSuffix"></a>
|
|
837
1778
|
|
|
838
|
-
|
|
1779
|
+
```typescript
|
|
1780
|
+
public readonly assetNameSuffix: string;
|
|
1781
|
+
```
|
|
1782
|
+
|
|
1783
|
+
- *Type:* string
|
|
839
1784
|
- *Default:* none
|
|
840
1785
|
|
|
841
1786
|
Optional asset name suffix.
|
|
842
1787
|
|
|
843
1788
|
---
|
|
844
1789
|
|
|
845
|
-
|
|
1790
|
+
*Example*
|
|
1791
|
+
|
|
1792
|
+
```typescript
|
|
1793
|
+
-dev-pr-12
|
|
1794
|
+
```
|
|
1795
|
+
|
|
1796
|
+
|
|
1797
|
+
##### `deployerTimeout`<sup>Optional</sup> <a name="deployerTimeout" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.deployerTimeout"></a>
|
|
846
1798
|
|
|
847
|
-
|
|
1799
|
+
```typescript
|
|
1800
|
+
public readonly deployerTimeout: Duration;
|
|
1801
|
+
```
|
|
1802
|
+
|
|
1803
|
+
- *Type:* aws-cdk-lib.Duration
|
|
848
1804
|
- *Default:* 2 minutes
|
|
849
1805
|
|
|
850
1806
|
Deployer timeout.
|
|
@@ -853,9 +1809,13 @@ For larger applications this needs to be set up to 2-5 minutes for the S3 copy
|
|
|
853
1809
|
|
|
854
1810
|
---
|
|
855
1811
|
|
|
856
|
-
##### `edgeToOriginRoleARN`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.edgeToOriginRoleARN"></a>
|
|
1812
|
+
##### `edgeToOriginRoleARN`<sup>Optional</sup> <a name="edgeToOriginRoleARN" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.edgeToOriginRoleARN"></a>
|
|
1813
|
+
|
|
1814
|
+
```typescript
|
|
1815
|
+
public readonly edgeToOriginRoleARN: string;
|
|
1816
|
+
```
|
|
857
1817
|
|
|
858
|
-
- *Type:*
|
|
1818
|
+
- *Type:* string
|
|
859
1819
|
|
|
860
1820
|
ARN of the IAM Role for the Edge to Origin Lambda Function.
|
|
861
1821
|
|
|
@@ -863,9 +1823,13 @@ For child accounts this can be blank as it is retrieved from the parent Deployer
|
|
|
863
1823
|
|
|
864
1824
|
---
|
|
865
1825
|
|
|
866
|
-
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.removalPolicy"></a>
|
|
1826
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsChildDeployerProps.property.removalPolicy"></a>
|
|
1827
|
+
|
|
1828
|
+
```typescript
|
|
1829
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
1830
|
+
```
|
|
867
1831
|
|
|
868
|
-
- *Type:*
|
|
1832
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
869
1833
|
- *Default:* per resource default
|
|
870
1834
|
|
|
871
1835
|
RemovalPolicy override for child resources.
|
|
@@ -874,11 +1838,11 @@ Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true
|
|
|
874
1838
|
|
|
875
1839
|
---
|
|
876
1840
|
|
|
877
|
-
### MicroAppsEdgeToOriginProps <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps"></a>
|
|
1841
|
+
### MicroAppsEdgeToOriginProps <a name="MicroAppsEdgeToOriginProps" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps"></a>
|
|
878
1842
|
|
|
879
1843
|
Properties to initialize an instance of `MicroAppsEdgeToOrigin`.
|
|
880
1844
|
|
|
881
|
-
#### Initializer <a name="
|
|
1845
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.Initializer"></a>
|
|
882
1846
|
|
|
883
1847
|
```typescript
|
|
884
1848
|
import { MicroAppsEdgeToOriginProps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -886,9 +1850,32 @@ import { MicroAppsEdgeToOriginProps } from '@pwrdrvr/microapps-cdk'
|
|
|
886
1850
|
const microAppsEdgeToOriginProps: MicroAppsEdgeToOriginProps = { ... }
|
|
887
1851
|
```
|
|
888
1852
|
|
|
889
|
-
|
|
1853
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1854
|
+
|
|
1855
|
+
| **Name** | **Type** | **Description** |
|
|
1856
|
+
| --- | --- | --- |
|
|
1857
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.addXForwardedHostHeader">addXForwardedHostHeader</a></code> | <code>boolean</code> | Adds an X-Forwarded-Host-Header when calling API Gateway. |
|
|
1858
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.allowedFunctionUrlAccounts">allowedFunctionUrlAccounts</a></code> | <code>string[]</code> | Account IDs allowed for cross-account Function URL invocations. |
|
|
1859
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.allowedLocalePrefixes">allowedLocalePrefixes</a></code> | <code>string[]</code> | List of allowed locale prefixes for pages. |
|
|
1860
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
1861
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
1862
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.originRegion">originRegion</a></code> | <code>string</code> | Origin region that API Gateway will be deployed to, used for the config.yml on the Edge function to sign requests for the correct region. |
|
|
1863
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
1864
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.replaceHostHeader">replaceHostHeader</a></code> | <code>boolean</code> | Replaces Host header (which will be the Edge domain name) with the Origin domain name when enabled. |
|
|
1865
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.rootPathPrefix">rootPathPrefix</a></code> | <code>string</code> | Path prefix on the root of the API Gateway Stage. |
|
|
1866
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.setupApiGatewayPermissions">setupApiGatewayPermissions</a></code> | <code>boolean</code> | Enable invoking API Gateway from the Edge Lambda. |
|
|
1867
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.signingMode">signingMode</a></code> | <code>string</code> | Requires IAM auth on the API Gateway origin if not set to 'none'. |
|
|
1868
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.tableRulesArn">tableRulesArn</a></code> | <code>string</code> | DynamoDB Table Name for apps/versions/rules. |
|
|
1869
|
+
|
|
1870
|
+
---
|
|
1871
|
+
|
|
1872
|
+
##### `addXForwardedHostHeader`<sup>Optional</sup> <a name="addXForwardedHostHeader" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.addXForwardedHostHeader"></a>
|
|
1873
|
+
|
|
1874
|
+
```typescript
|
|
1875
|
+
public readonly addXForwardedHostHeader: boolean;
|
|
1876
|
+
```
|
|
890
1877
|
|
|
891
|
-
- *Type:*
|
|
1878
|
+
- *Type:* boolean
|
|
892
1879
|
- *Default:* true
|
|
893
1880
|
|
|
894
1881
|
Adds an X-Forwarded-Host-Header when calling API Gateway.
|
|
@@ -900,45 +1887,86 @@ Note: if true, creates OriginRequest Lambda @ Edge function for API Gateway Orig
|
|
|
900
1887
|
|
|
901
1888
|
---
|
|
902
1889
|
|
|
903
|
-
##### `allowedFunctionUrlAccounts`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.allowedFunctionUrlAccounts"></a>
|
|
1890
|
+
##### `allowedFunctionUrlAccounts`<sup>Optional</sup> <a name="allowedFunctionUrlAccounts" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.allowedFunctionUrlAccounts"></a>
|
|
904
1891
|
|
|
905
|
-
|
|
1892
|
+
```typescript
|
|
1893
|
+
public readonly allowedFunctionUrlAccounts: string[];
|
|
1894
|
+
```
|
|
1895
|
+
|
|
1896
|
+
- *Type:* string[]
|
|
906
1897
|
- *Default:* []
|
|
907
1898
|
|
|
908
1899
|
Account IDs allowed for cross-account Function URL invocations.
|
|
909
1900
|
|
|
910
1901
|
---
|
|
911
1902
|
|
|
912
|
-
##### `allowedLocalePrefixes`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.allowedLocalePrefixes"></a>
|
|
1903
|
+
##### `allowedLocalePrefixes`<sup>Optional</sup> <a name="allowedLocalePrefixes" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.allowedLocalePrefixes"></a>
|
|
1904
|
+
|
|
1905
|
+
```typescript
|
|
1906
|
+
public readonly allowedLocalePrefixes: string[];
|
|
1907
|
+
```
|
|
913
1908
|
|
|
914
|
-
- *Type:*
|
|
1909
|
+
- *Type:* string[]
|
|
915
1910
|
- *Default:* none
|
|
916
1911
|
|
|
917
1912
|
List of allowed locale prefixes for pages.
|
|
918
1913
|
|
|
919
1914
|
---
|
|
920
1915
|
|
|
921
|
-
|
|
1916
|
+
*Example*
|
|
1917
|
+
|
|
1918
|
+
```typescript
|
|
1919
|
+
: ['en', 'fr', 'es']
|
|
1920
|
+
```
|
|
1921
|
+
|
|
1922
|
+
|
|
1923
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.assetNameRoot"></a>
|
|
1924
|
+
|
|
1925
|
+
```typescript
|
|
1926
|
+
public readonly assetNameRoot: string;
|
|
1927
|
+
```
|
|
922
1928
|
|
|
923
|
-
- *Type:*
|
|
1929
|
+
- *Type:* string
|
|
924
1930
|
- *Default:* resource names auto assigned
|
|
925
1931
|
|
|
926
1932
|
Optional asset name root.
|
|
927
1933
|
|
|
928
1934
|
---
|
|
929
1935
|
|
|
930
|
-
|
|
1936
|
+
*Example*
|
|
1937
|
+
|
|
1938
|
+
```typescript
|
|
1939
|
+
microapps
|
|
1940
|
+
```
|
|
1941
|
+
|
|
1942
|
+
|
|
1943
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.assetNameSuffix"></a>
|
|
1944
|
+
|
|
1945
|
+
```typescript
|
|
1946
|
+
public readonly assetNameSuffix: string;
|
|
1947
|
+
```
|
|
931
1948
|
|
|
932
|
-
- *Type:*
|
|
1949
|
+
- *Type:* string
|
|
933
1950
|
- *Default:* none
|
|
934
1951
|
|
|
935
1952
|
Optional asset name suffix.
|
|
936
1953
|
|
|
937
1954
|
---
|
|
938
1955
|
|
|
939
|
-
|
|
1956
|
+
*Example*
|
|
1957
|
+
|
|
1958
|
+
```typescript
|
|
1959
|
+
-dev-pr-12
|
|
1960
|
+
```
|
|
1961
|
+
|
|
1962
|
+
|
|
1963
|
+
##### `originRegion`<sup>Optional</sup> <a name="originRegion" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.originRegion"></a>
|
|
1964
|
+
|
|
1965
|
+
```typescript
|
|
1966
|
+
public readonly originRegion: string;
|
|
1967
|
+
```
|
|
940
1968
|
|
|
941
|
-
- *Type:*
|
|
1969
|
+
- *Type:* string
|
|
942
1970
|
- *Default:* undefined
|
|
943
1971
|
|
|
944
1972
|
Origin region that API Gateway will be deployed to, used for the config.yml on the Edge function to sign requests for the correct region.
|
|
@@ -948,18 +1976,26 @@ and do not need this to be configured.
|
|
|
948
1976
|
|
|
949
1977
|
---
|
|
950
1978
|
|
|
951
|
-
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.removalPolicy"></a>
|
|
1979
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.removalPolicy"></a>
|
|
1980
|
+
|
|
1981
|
+
```typescript
|
|
1982
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
1983
|
+
```
|
|
952
1984
|
|
|
953
|
-
- *Type:*
|
|
1985
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
954
1986
|
- *Default:* per resource default
|
|
955
1987
|
|
|
956
1988
|
RemovalPolicy override for child resources.
|
|
957
1989
|
|
|
958
1990
|
---
|
|
959
1991
|
|
|
960
|
-
##### `replaceHostHeader`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.replaceHostHeader"></a>
|
|
1992
|
+
##### `replaceHostHeader`<sup>Optional</sup> <a name="replaceHostHeader" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.replaceHostHeader"></a>
|
|
1993
|
+
|
|
1994
|
+
```typescript
|
|
1995
|
+
public readonly replaceHostHeader: boolean;
|
|
1996
|
+
```
|
|
961
1997
|
|
|
962
|
-
- *Type:*
|
|
1998
|
+
- *Type:* boolean
|
|
963
1999
|
- *Default:* true
|
|
964
2000
|
|
|
965
2001
|
Replaces Host header (which will be the Edge domain name) with the Origin domain name when enabled.
|
|
@@ -973,27 +2009,46 @@ Note: if true, creates OriginRequest Lambda @ Edge function for API Gateway Orig
|
|
|
973
2009
|
|
|
974
2010
|
---
|
|
975
2011
|
|
|
976
|
-
##### `rootPathPrefix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.rootPathPrefix"></a>
|
|
2012
|
+
##### `rootPathPrefix`<sup>Optional</sup> <a name="rootPathPrefix" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.rootPathPrefix"></a>
|
|
977
2013
|
|
|
978
|
-
|
|
2014
|
+
```typescript
|
|
2015
|
+
public readonly rootPathPrefix: string;
|
|
2016
|
+
```
|
|
2017
|
+
|
|
2018
|
+
- *Type:* string
|
|
979
2019
|
- *Default:* none
|
|
980
2020
|
|
|
981
2021
|
Path prefix on the root of the API Gateway Stage.
|
|
982
2022
|
|
|
983
2023
|
---
|
|
984
2024
|
|
|
985
|
-
|
|
2025
|
+
*Example*
|
|
2026
|
+
|
|
2027
|
+
```typescript
|
|
2028
|
+
dev/
|
|
2029
|
+
```
|
|
2030
|
+
|
|
2031
|
+
|
|
2032
|
+
##### `setupApiGatewayPermissions`<sup>Optional</sup> <a name="setupApiGatewayPermissions" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.setupApiGatewayPermissions"></a>
|
|
986
2033
|
|
|
987
|
-
|
|
2034
|
+
```typescript
|
|
2035
|
+
public readonly setupApiGatewayPermissions: boolean;
|
|
2036
|
+
```
|
|
2037
|
+
|
|
2038
|
+
- *Type:* boolean
|
|
988
2039
|
- *Default:* false
|
|
989
2040
|
|
|
990
2041
|
Enable invoking API Gateway from the Edge Lambda.
|
|
991
2042
|
|
|
992
2043
|
---
|
|
993
2044
|
|
|
994
|
-
##### `signingMode`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.signingMode"></a>
|
|
2045
|
+
##### `signingMode`<sup>Optional</sup> <a name="signingMode" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.signingMode"></a>
|
|
2046
|
+
|
|
2047
|
+
```typescript
|
|
2048
|
+
public readonly signingMode: string;
|
|
2049
|
+
```
|
|
995
2050
|
|
|
996
|
-
- *Type:*
|
|
2051
|
+
- *Type:* string
|
|
997
2052
|
- *Default:* 'sign'
|
|
998
2053
|
|
|
999
2054
|
Requires IAM auth on the API Gateway origin if not set to 'none'.
|
|
@@ -1007,9 +2062,13 @@ Note: if 'sign' or 'presign', creates OriginRequest Lambda @ Edge function for A
|
|
|
1007
2062
|
|
|
1008
2063
|
---
|
|
1009
2064
|
|
|
1010
|
-
##### `tableRulesArn`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.tableRulesArn"></a>
|
|
2065
|
+
##### `tableRulesArn`<sup>Optional</sup> <a name="tableRulesArn" id="@pwrdrvr/microapps-cdk.MicroAppsEdgeToOriginProps.property.tableRulesArn"></a>
|
|
2066
|
+
|
|
2067
|
+
```typescript
|
|
2068
|
+
public readonly tableRulesArn: string;
|
|
2069
|
+
```
|
|
1011
2070
|
|
|
1012
|
-
- *Type:*
|
|
2071
|
+
- *Type:* string
|
|
1013
2072
|
|
|
1014
2073
|
DynamoDB Table Name for apps/versions/rules.
|
|
1015
2074
|
|
|
@@ -1019,11 +2078,11 @@ Implies that 2nd generation routing is enabled.
|
|
|
1019
2078
|
|
|
1020
2079
|
---
|
|
1021
2080
|
|
|
1022
|
-
### MicroAppsProps <a name="@pwrdrvr/microapps-cdk.MicroAppsProps"></a>
|
|
2081
|
+
### MicroAppsProps <a name="MicroAppsProps" id="@pwrdrvr/microapps-cdk.MicroAppsProps"></a>
|
|
1023
2082
|
|
|
1024
2083
|
Properties to initialize an instance of `MicroApps`.
|
|
1025
2084
|
|
|
1026
|
-
#### Initializer <a name="
|
|
2085
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsProps.Initializer"></a>
|
|
1027
2086
|
|
|
1028
2087
|
```typescript
|
|
1029
2088
|
import { MicroAppsProps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -1031,18 +2090,60 @@ import { MicroAppsProps } from '@pwrdrvr/microapps-cdk'
|
|
|
1031
2090
|
const microAppsProps: MicroAppsProps = { ... }
|
|
1032
2091
|
```
|
|
1033
2092
|
|
|
1034
|
-
|
|
2093
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
2094
|
+
|
|
2095
|
+
| **Name** | **Type** | **Description** |
|
|
2096
|
+
| --- | --- | --- |
|
|
2097
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.appEnv">appEnv</a></code> | <code>string</code> | Passed to NODE_ENV of Router and Deployer Lambda functions. |
|
|
2098
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.addXForwardedHostHeader">addXForwardedHostHeader</a></code> | <code>boolean</code> | Adds an X-Forwarded-Host-Header when calling API Gateway. |
|
|
2099
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.allowedFunctionUrlAccounts">allowedFunctionUrlAccounts</a></code> | <code>string[]</code> | Account IDs allowed for cross-account Function URL invocations. |
|
|
2100
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.allowedLocalePrefixes">allowedLocalePrefixes</a></code> | <code>string[]</code> | List of allowed locale prefixes for pages. |
|
|
2101
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
2102
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
2103
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.certEdge">certEdge</a></code> | <code>aws-cdk-lib.aws_certificatemanager.ICertificate</code> | Certificate in US-East-1 for the CloudFront distribution. |
|
|
2104
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.certOrigin">certOrigin</a></code> | <code>aws-cdk-lib.aws_certificatemanager.ICertificate</code> | Certificate in deployed region for the API Gateway. |
|
|
2105
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.createAPIGateway">createAPIGateway</a></code> | <code>boolean</code> | Create API Gateway for non-edge invocation. |
|
|
2106
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.createAPIPathRoute">createAPIPathRoute</a></code> | <code>boolean</code> | Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them. |
|
|
2107
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.createNextDataPathRoute">createNextDataPathRoute</a></code> | <code>boolean</code> | Create an extra Behavior (Route) for /_next/data/ This route is used by Next.js to load data from the API Gateway on `getServerSideProps` calls. The requests can end in `.json`, which would cause them to be routed to S3 if this route is not created. |
|
|
2108
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.domainNameEdge">domainNameEdge</a></code> | <code>string</code> | Optional custom domain name for the CloudFront distribution. |
|
|
2109
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.domainNameOrigin">domainNameOrigin</a></code> | <code>string</code> | Optional custom domain name for the API Gateway HTTPv2 API. |
|
|
2110
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.edgeLambdas">edgeLambdas</a></code> | <code>aws-cdk-lib.aws_cloudfront.EdgeLambda[]</code> | Additional edge lambda functions. |
|
|
2111
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.edgeToOriginRoleARNs">edgeToOriginRoleARNs</a></code> | <code>string[]</code> | Additional IAM Role ARNs that should be allowed to invoke apps in child accounts. |
|
|
2112
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.originRegion">originRegion</a></code> | <code>string</code> | Origin region that API Gateway or Lambda function will be deployed to, used for the config.yml on the Edge function to sign requests for the correct region. |
|
|
2113
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.originShieldRegion">originShieldRegion</a></code> | <code>string</code> | Optional Origin Shield Region. |
|
|
2114
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.r53Zone">r53Zone</a></code> | <code>aws-cdk-lib.aws_route53.IHostedZone</code> | Route53 zone in which to create optional `domainNameEdge` record. |
|
|
2115
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
2116
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.replaceHostHeader">replaceHostHeader</a></code> | <code>boolean</code> | Replaces Host header (which will be the Edge domain name) with the Origin domain name when enabled. |
|
|
2117
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.rootPathPrefix">rootPathPrefix</a></code> | <code>string</code> | Path prefix on the root of the CloudFront distribution. |
|
|
2118
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.s3PolicyBypassAROAs">s3PolicyBypassAROAs</a></code> | <code>string[]</code> | Applies when using s3StrictBucketPolicy = true. |
|
|
2119
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.s3PolicyBypassPrincipalARNs">s3PolicyBypassPrincipalARNs</a></code> | <code>string[]</code> | Applies when using s3StrictBucketPolicy = true. |
|
|
2120
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.s3StrictBucketPolicy">s3StrictBucketPolicy</a></code> | <code>boolean</code> | 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. |
|
|
2121
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.signingMode">signingMode</a></code> | <code>string</code> | Requires IAM auth on the API Gateway origin if not set to 'none'. |
|
|
2122
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.table">table</a></code> | <code>aws-cdk-lib.aws_dynamodb.ITable \| aws-cdk-lib.aws_dynamodb.ITableV2</code> | Existing table for apps/versions/rules. |
|
|
2123
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsProps.property.tableNameForEdgeToOrigin">tableNameForEdgeToOrigin</a></code> | <code>string</code> | Pre-set table name for apps/versions/rules. |
|
|
2124
|
+
|
|
2125
|
+
---
|
|
2126
|
+
|
|
2127
|
+
##### `appEnv`<sup>Required</sup> <a name="appEnv" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.appEnv"></a>
|
|
2128
|
+
|
|
2129
|
+
```typescript
|
|
2130
|
+
public readonly appEnv: string;
|
|
2131
|
+
```
|
|
1035
2132
|
|
|
1036
|
-
- *Type:*
|
|
2133
|
+
- *Type:* string
|
|
1037
2134
|
- *Default:* dev
|
|
1038
2135
|
|
|
1039
2136
|
Passed to NODE_ENV of Router and Deployer Lambda functions.
|
|
1040
2137
|
|
|
1041
2138
|
---
|
|
1042
2139
|
|
|
1043
|
-
##### `addXForwardedHostHeader`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.addXForwardedHostHeader"></a>
|
|
2140
|
+
##### `addXForwardedHostHeader`<sup>Optional</sup> <a name="addXForwardedHostHeader" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.addXForwardedHostHeader"></a>
|
|
1044
2141
|
|
|
1045
|
-
|
|
2142
|
+
```typescript
|
|
2143
|
+
public readonly addXForwardedHostHeader: boolean;
|
|
2144
|
+
```
|
|
2145
|
+
|
|
2146
|
+
- *Type:* boolean
|
|
1046
2147
|
- *Default:* true
|
|
1047
2148
|
|
|
1048
2149
|
Adds an X-Forwarded-Host-Header when calling API Gateway.
|
|
@@ -1054,70 +2155,123 @@ Note: if true, creates OriginRequest Lambda @ Edge function for API Gateway Orig
|
|
|
1054
2155
|
|
|
1055
2156
|
---
|
|
1056
2157
|
|
|
1057
|
-
##### `allowedFunctionUrlAccounts`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.allowedFunctionUrlAccounts"></a>
|
|
2158
|
+
##### `allowedFunctionUrlAccounts`<sup>Optional</sup> <a name="allowedFunctionUrlAccounts" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.allowedFunctionUrlAccounts"></a>
|
|
2159
|
+
|
|
2160
|
+
```typescript
|
|
2161
|
+
public readonly allowedFunctionUrlAccounts: string[];
|
|
2162
|
+
```
|
|
1058
2163
|
|
|
1059
|
-
- *Type:*
|
|
2164
|
+
- *Type:* string[]
|
|
1060
2165
|
- *Default:* []
|
|
1061
2166
|
|
|
1062
2167
|
Account IDs allowed for cross-account Function URL invocations.
|
|
1063
2168
|
|
|
1064
2169
|
---
|
|
1065
2170
|
|
|
1066
|
-
##### `allowedLocalePrefixes`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.allowedLocalePrefixes"></a>
|
|
2171
|
+
##### `allowedLocalePrefixes`<sup>Optional</sup> <a name="allowedLocalePrefixes" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.allowedLocalePrefixes"></a>
|
|
2172
|
+
|
|
2173
|
+
```typescript
|
|
2174
|
+
public readonly allowedLocalePrefixes: string[];
|
|
2175
|
+
```
|
|
1067
2176
|
|
|
1068
|
-
- *Type:*
|
|
2177
|
+
- *Type:* string[]
|
|
1069
2178
|
- *Default:* none
|
|
1070
2179
|
|
|
1071
2180
|
List of allowed locale prefixes for pages.
|
|
1072
2181
|
|
|
1073
2182
|
---
|
|
1074
2183
|
|
|
1075
|
-
|
|
2184
|
+
*Example*
|
|
2185
|
+
|
|
2186
|
+
```typescript
|
|
2187
|
+
: ['en', 'fr', 'es']
|
|
2188
|
+
```
|
|
2189
|
+
|
|
2190
|
+
|
|
2191
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.assetNameRoot"></a>
|
|
2192
|
+
|
|
2193
|
+
```typescript
|
|
2194
|
+
public readonly assetNameRoot: string;
|
|
2195
|
+
```
|
|
1076
2196
|
|
|
1077
|
-
- *Type:*
|
|
2197
|
+
- *Type:* string
|
|
1078
2198
|
- *Default:* resource names auto assigned
|
|
1079
2199
|
|
|
1080
2200
|
Optional asset name root.
|
|
1081
2201
|
|
|
1082
2202
|
---
|
|
1083
2203
|
|
|
1084
|
-
|
|
2204
|
+
*Example*
|
|
2205
|
+
|
|
2206
|
+
```typescript
|
|
2207
|
+
microapps
|
|
2208
|
+
```
|
|
2209
|
+
|
|
2210
|
+
|
|
2211
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.assetNameSuffix"></a>
|
|
2212
|
+
|
|
2213
|
+
```typescript
|
|
2214
|
+
public readonly assetNameSuffix: string;
|
|
2215
|
+
```
|
|
1085
2216
|
|
|
1086
|
-
- *Type:*
|
|
2217
|
+
- *Type:* string
|
|
1087
2218
|
- *Default:* none
|
|
1088
2219
|
|
|
1089
2220
|
Optional asset name suffix.
|
|
1090
2221
|
|
|
1091
2222
|
---
|
|
1092
2223
|
|
|
1093
|
-
|
|
2224
|
+
*Example*
|
|
2225
|
+
|
|
2226
|
+
```typescript
|
|
2227
|
+
-dev-pr-12
|
|
2228
|
+
```
|
|
2229
|
+
|
|
2230
|
+
|
|
2231
|
+
##### `certEdge`<sup>Optional</sup> <a name="certEdge" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.certEdge"></a>
|
|
2232
|
+
|
|
2233
|
+
```typescript
|
|
2234
|
+
public readonly certEdge: ICertificate;
|
|
2235
|
+
```
|
|
1094
2236
|
|
|
1095
|
-
- *Type:*
|
|
2237
|
+
- *Type:* aws-cdk-lib.aws_certificatemanager.ICertificate
|
|
1096
2238
|
|
|
1097
2239
|
Certificate in US-East-1 for the CloudFront distribution.
|
|
1098
2240
|
|
|
1099
2241
|
---
|
|
1100
2242
|
|
|
1101
|
-
##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certOrigin"></a>
|
|
2243
|
+
##### `certOrigin`<sup>Optional</sup> <a name="certOrigin" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.certOrigin"></a>
|
|
2244
|
+
|
|
2245
|
+
```typescript
|
|
2246
|
+
public readonly certOrigin: ICertificate;
|
|
2247
|
+
```
|
|
1102
2248
|
|
|
1103
|
-
- *Type:*
|
|
2249
|
+
- *Type:* aws-cdk-lib.aws_certificatemanager.ICertificate
|
|
1104
2250
|
|
|
1105
2251
|
Certificate in deployed region for the API Gateway.
|
|
1106
2252
|
|
|
1107
2253
|
---
|
|
1108
2254
|
|
|
1109
|
-
##### `createAPIGateway`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.createAPIGateway"></a>
|
|
2255
|
+
##### `createAPIGateway`<sup>Optional</sup> <a name="createAPIGateway" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.createAPIGateway"></a>
|
|
1110
2256
|
|
|
1111
|
-
|
|
2257
|
+
```typescript
|
|
2258
|
+
public readonly createAPIGateway: boolean;
|
|
2259
|
+
```
|
|
2260
|
+
|
|
2261
|
+
- *Type:* boolean
|
|
1112
2262
|
- *Default:* false
|
|
1113
2263
|
|
|
1114
2264
|
Create API Gateway for non-edge invocation.
|
|
1115
2265
|
|
|
1116
2266
|
---
|
|
1117
2267
|
|
|
1118
|
-
##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.createAPIPathRoute"></a>
|
|
2268
|
+
##### `createAPIPathRoute`<sup>Optional</sup> <a name="createAPIPathRoute" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.createAPIPathRoute"></a>
|
|
2269
|
+
|
|
2270
|
+
```typescript
|
|
2271
|
+
public readonly createAPIPathRoute: boolean;
|
|
2272
|
+
```
|
|
1119
2273
|
|
|
1120
|
-
- *Type:*
|
|
2274
|
+
- *Type:* boolean
|
|
1121
2275
|
- *Default:* true
|
|
1122
2276
|
|
|
1123
2277
|
Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
|
|
@@ -1129,9 +2283,13 @@ even if they have a period in the path.
|
|
|
1129
2283
|
|
|
1130
2284
|
---
|
|
1131
2285
|
|
|
1132
|
-
##### `createNextDataPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.createNextDataPathRoute"></a>
|
|
2286
|
+
##### `createNextDataPathRoute`<sup>Optional</sup> <a name="createNextDataPathRoute" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.createNextDataPathRoute"></a>
|
|
2287
|
+
|
|
2288
|
+
```typescript
|
|
2289
|
+
public readonly createNextDataPathRoute: boolean;
|
|
2290
|
+
```
|
|
1133
2291
|
|
|
1134
|
-
- *Type:*
|
|
2292
|
+
- *Type:* boolean
|
|
1135
2293
|
- *Default:* true
|
|
1136
2294
|
|
|
1137
2295
|
Create an extra Behavior (Route) for /_next/data/ This route is used by Next.js to load data from the API Gateway on `getServerSideProps` calls. The requests can end in `.json`, which would cause them to be routed to S3 if this route is not created.
|
|
@@ -1143,52 +2301,90 @@ even if they have a period in the path.
|
|
|
1143
2301
|
|
|
1144
2302
|
---
|
|
1145
2303
|
|
|
1146
|
-
##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.domainNameEdge"></a>
|
|
2304
|
+
##### `domainNameEdge`<sup>Optional</sup> <a name="domainNameEdge" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.domainNameEdge"></a>
|
|
2305
|
+
|
|
2306
|
+
```typescript
|
|
2307
|
+
public readonly domainNameEdge: string;
|
|
2308
|
+
```
|
|
1147
2309
|
|
|
1148
|
-
- *Type:*
|
|
2310
|
+
- *Type:* string
|
|
1149
2311
|
- *Default:* auto-assigned
|
|
1150
2312
|
|
|
1151
2313
|
Optional custom domain name for the CloudFront distribution.
|
|
1152
2314
|
|
|
1153
2315
|
---
|
|
1154
2316
|
|
|
1155
|
-
|
|
2317
|
+
*Example*
|
|
2318
|
+
|
|
2319
|
+
```typescript
|
|
2320
|
+
apps.pwrdrvr.com
|
|
2321
|
+
```
|
|
2322
|
+
|
|
2323
|
+
|
|
2324
|
+
##### `domainNameOrigin`<sup>Optional</sup> <a name="domainNameOrigin" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.domainNameOrigin"></a>
|
|
2325
|
+
|
|
2326
|
+
```typescript
|
|
2327
|
+
public readonly domainNameOrigin: string;
|
|
2328
|
+
```
|
|
1156
2329
|
|
|
1157
|
-
- *Type:*
|
|
2330
|
+
- *Type:* string
|
|
1158
2331
|
- *Default:* auto-assigned
|
|
1159
2332
|
|
|
1160
2333
|
Optional custom domain name for the API Gateway HTTPv2 API.
|
|
1161
2334
|
|
|
1162
2335
|
---
|
|
1163
2336
|
|
|
1164
|
-
|
|
2337
|
+
*Example*
|
|
1165
2338
|
|
|
1166
|
-
|
|
2339
|
+
```typescript
|
|
2340
|
+
apps-origin.pwrdrvr.com
|
|
2341
|
+
```
|
|
2342
|
+
|
|
2343
|
+
|
|
2344
|
+
##### `edgeLambdas`<sup>Optional</sup> <a name="edgeLambdas" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.edgeLambdas"></a>
|
|
2345
|
+
|
|
2346
|
+
```typescript
|
|
2347
|
+
public readonly edgeLambdas: EdgeLambda[];
|
|
2348
|
+
```
|
|
2349
|
+
|
|
2350
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.EdgeLambda[]
|
|
1167
2351
|
|
|
1168
2352
|
Additional edge lambda functions.
|
|
1169
2353
|
|
|
1170
2354
|
---
|
|
1171
2355
|
|
|
1172
|
-
##### `edgeToOriginRoleARNs`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.edgeToOriginRoleARNs"></a>
|
|
2356
|
+
##### `edgeToOriginRoleARNs`<sup>Optional</sup> <a name="edgeToOriginRoleARNs" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.edgeToOriginRoleARNs"></a>
|
|
1173
2357
|
|
|
1174
|
-
|
|
2358
|
+
```typescript
|
|
2359
|
+
public readonly edgeToOriginRoleARNs: string[];
|
|
2360
|
+
```
|
|
2361
|
+
|
|
2362
|
+
- *Type:* string[]
|
|
1175
2363
|
|
|
1176
2364
|
Additional IAM Role ARNs that should be allowed to invoke apps in child accounts.
|
|
1177
2365
|
|
|
1178
2366
|
---
|
|
1179
2367
|
|
|
1180
|
-
##### `originRegion`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.originRegion"></a>
|
|
2368
|
+
##### `originRegion`<sup>Optional</sup> <a name="originRegion" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.originRegion"></a>
|
|
2369
|
+
|
|
2370
|
+
```typescript
|
|
2371
|
+
public readonly originRegion: string;
|
|
2372
|
+
```
|
|
1181
2373
|
|
|
1182
|
-
- *Type:*
|
|
2374
|
+
- *Type:* string
|
|
1183
2375
|
- *Default:* undefined
|
|
1184
2376
|
|
|
1185
2377
|
Origin region that API Gateway or Lambda function will be deployed to, used for the config.yml on the Edge function to sign requests for the correct region.
|
|
1186
2378
|
|
|
1187
2379
|
---
|
|
1188
2380
|
|
|
1189
|
-
##### `originShieldRegion`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.originShieldRegion"></a>
|
|
2381
|
+
##### `originShieldRegion`<sup>Optional</sup> <a name="originShieldRegion" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.originShieldRegion"></a>
|
|
2382
|
+
|
|
2383
|
+
```typescript
|
|
2384
|
+
public readonly originShieldRegion: string;
|
|
2385
|
+
```
|
|
1190
2386
|
|
|
1191
|
-
- *Type:*
|
|
2387
|
+
- *Type:* string
|
|
1192
2388
|
- *Default:* originRegion if specified, otherwise undefined
|
|
1193
2389
|
|
|
1194
2390
|
Optional Origin Shield Region.
|
|
@@ -1198,17 +2394,25 @@ EdgeToOrigin calls have the lowest latency (~1 ms).
|
|
|
1198
2394
|
|
|
1199
2395
|
---
|
|
1200
2396
|
|
|
1201
|
-
##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.r53Zone"></a>
|
|
2397
|
+
##### `r53Zone`<sup>Optional</sup> <a name="r53Zone" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.r53Zone"></a>
|
|
2398
|
+
|
|
2399
|
+
```typescript
|
|
2400
|
+
public readonly r53Zone: IHostedZone;
|
|
2401
|
+
```
|
|
1202
2402
|
|
|
1203
|
-
- *Type:*
|
|
2403
|
+
- *Type:* aws-cdk-lib.aws_route53.IHostedZone
|
|
1204
2404
|
|
|
1205
2405
|
Route53 zone in which to create optional `domainNameEdge` record.
|
|
1206
2406
|
|
|
1207
2407
|
---
|
|
1208
2408
|
|
|
1209
|
-
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.removalPolicy"></a>
|
|
2409
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.removalPolicy"></a>
|
|
1210
2410
|
|
|
1211
|
-
|
|
2411
|
+
```typescript
|
|
2412
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
2413
|
+
```
|
|
2414
|
+
|
|
2415
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
1212
2416
|
- *Default:* per resource default
|
|
1213
2417
|
|
|
1214
2418
|
RemovalPolicy override for child resources.
|
|
@@ -1217,9 +2421,13 @@ Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true
|
|
|
1217
2421
|
|
|
1218
2422
|
---
|
|
1219
2423
|
|
|
1220
|
-
##### `replaceHostHeader`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.replaceHostHeader"></a>
|
|
2424
|
+
##### `replaceHostHeader`<sup>Optional</sup> <a name="replaceHostHeader" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.replaceHostHeader"></a>
|
|
2425
|
+
|
|
2426
|
+
```typescript
|
|
2427
|
+
public readonly replaceHostHeader: boolean;
|
|
2428
|
+
```
|
|
1221
2429
|
|
|
1222
|
-
- *Type:*
|
|
2430
|
+
- *Type:* boolean
|
|
1223
2431
|
- *Default:* true
|
|
1224
2432
|
|
|
1225
2433
|
Replaces Host header (which will be the Edge domain name) with the Origin domain name when enabled.
|
|
@@ -1233,17 +2441,32 @@ Note: if true, creates OriginRequest Lambda @ Edge function for API Gateway Orig
|
|
|
1233
2441
|
|
|
1234
2442
|
---
|
|
1235
2443
|
|
|
1236
|
-
##### `rootPathPrefix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.rootPathPrefix"></a>
|
|
2444
|
+
##### `rootPathPrefix`<sup>Optional</sup> <a name="rootPathPrefix" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.rootPathPrefix"></a>
|
|
2445
|
+
|
|
2446
|
+
```typescript
|
|
2447
|
+
public readonly rootPathPrefix: string;
|
|
2448
|
+
```
|
|
1237
2449
|
|
|
1238
|
-
- *Type:*
|
|
2450
|
+
- *Type:* string
|
|
1239
2451
|
|
|
1240
2452
|
Path prefix on the root of the CloudFront distribution.
|
|
1241
2453
|
|
|
1242
2454
|
---
|
|
1243
2455
|
|
|
1244
|
-
|
|
2456
|
+
*Example*
|
|
2457
|
+
|
|
2458
|
+
```typescript
|
|
2459
|
+
dev/
|
|
2460
|
+
```
|
|
2461
|
+
|
|
2462
|
+
|
|
2463
|
+
##### `s3PolicyBypassAROAs`<sup>Optional</sup> <a name="s3PolicyBypassAROAs" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.s3PolicyBypassAROAs"></a>
|
|
2464
|
+
|
|
2465
|
+
```typescript
|
|
2466
|
+
public readonly s3PolicyBypassAROAs: string[];
|
|
2467
|
+
```
|
|
1245
2468
|
|
|
1246
|
-
- *Type:*
|
|
2469
|
+
- *Type:* string[]
|
|
1247
2470
|
|
|
1248
2471
|
Applies when using s3StrictBucketPolicy = true.
|
|
1249
2472
|
|
|
@@ -1281,13 +2504,24 @@ To get the AROA with the AWS CLI:
|
|
|
1281
2504
|
aws iam get-role --role-name ROLE-NAME
|
|
1282
2505
|
aws iam get-user --user-name USER-NAME
|
|
1283
2506
|
|
|
1284
|
-
> s3StrictBucketPolicy
|
|
2507
|
+
> [s3StrictBucketPolicy](s3StrictBucketPolicy)
|
|
1285
2508
|
|
|
1286
2509
|
---
|
|
1287
2510
|
|
|
1288
|
-
|
|
2511
|
+
*Example*
|
|
2512
|
+
|
|
2513
|
+
```typescript
|
|
2514
|
+
[ 'AROA1234567890123' ]
|
|
2515
|
+
```
|
|
2516
|
+
|
|
2517
|
+
|
|
2518
|
+
##### `s3PolicyBypassPrincipalARNs`<sup>Optional</sup> <a name="s3PolicyBypassPrincipalARNs" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.s3PolicyBypassPrincipalARNs"></a>
|
|
2519
|
+
|
|
2520
|
+
```typescript
|
|
2521
|
+
public readonly s3PolicyBypassPrincipalARNs: string[];
|
|
2522
|
+
```
|
|
1289
2523
|
|
|
1290
|
-
- *Type:*
|
|
2524
|
+
- *Type:* string[]
|
|
1291
2525
|
|
|
1292
2526
|
Applies when using s3StrictBucketPolicy = true.
|
|
1293
2527
|
|
|
@@ -1298,13 +2532,24 @@ Roles that are Assumed must instead have their AROA added to `s3PolicyBypassAROA
|
|
|
1298
2532
|
Typically any admin roles / users that need to view or manage the S3 Bucket
|
|
1299
2533
|
would be added to this list.
|
|
1300
2534
|
|
|
1301
|
-
> s3PolicyBypassAROAs
|
|
2535
|
+
> [s3PolicyBypassAROAs](s3PolicyBypassAROAs)
|
|
1302
2536
|
|
|
1303
2537
|
---
|
|
1304
2538
|
|
|
1305
|
-
|
|
2539
|
+
*Example*
|
|
2540
|
+
|
|
2541
|
+
```typescript
|
|
2542
|
+
['arn:aws:iam::1234567890123:role/AdminAccess', 'arn:aws:iam::1234567890123:user/MyAdminUser']
|
|
2543
|
+
```
|
|
2544
|
+
|
|
2545
|
+
|
|
2546
|
+
##### `s3StrictBucketPolicy`<sup>Optional</sup> <a name="s3StrictBucketPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.s3StrictBucketPolicy"></a>
|
|
2547
|
+
|
|
2548
|
+
```typescript
|
|
2549
|
+
public readonly s3StrictBucketPolicy: boolean;
|
|
2550
|
+
```
|
|
1306
2551
|
|
|
1307
|
-
- *Type:*
|
|
2552
|
+
- *Type:* boolean
|
|
1308
2553
|
- *Default:* false
|
|
1309
2554
|
|
|
1310
2555
|
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.
|
|
@@ -1314,9 +2559,13 @@ fully trusted.
|
|
|
1314
2559
|
|
|
1315
2560
|
---
|
|
1316
2561
|
|
|
1317
|
-
##### `signingMode`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.signingMode"></a>
|
|
2562
|
+
##### `signingMode`<sup>Optional</sup> <a name="signingMode" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.signingMode"></a>
|
|
2563
|
+
|
|
2564
|
+
```typescript
|
|
2565
|
+
public readonly signingMode: string;
|
|
2566
|
+
```
|
|
1318
2567
|
|
|
1319
|
-
- *Type:*
|
|
2568
|
+
- *Type:* string
|
|
1320
2569
|
- *Default:* 'sign'
|
|
1321
2570
|
|
|
1322
2571
|
Requires IAM auth on the API Gateway origin if not set to 'none'.
|
|
@@ -1330,18 +2579,26 @@ Note: if 'sign' or 'presign', creates OriginRequest Lambda @ Edge function for A
|
|
|
1330
2579
|
|
|
1331
2580
|
---
|
|
1332
2581
|
|
|
1333
|
-
##### `table`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.table"></a>
|
|
2582
|
+
##### `table`<sup>Optional</sup> <a name="table" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.table"></a>
|
|
1334
2583
|
|
|
1335
|
-
|
|
2584
|
+
```typescript
|
|
2585
|
+
public readonly table: ITable | ITableV2;
|
|
2586
|
+
```
|
|
2587
|
+
|
|
2588
|
+
- *Type:* aws-cdk-lib.aws_dynamodb.ITable | aws-cdk-lib.aws_dynamodb.ITableV2
|
|
1336
2589
|
- *Default:* created by construct
|
|
1337
2590
|
|
|
1338
2591
|
Existing table for apps/versions/rules.
|
|
1339
2592
|
|
|
1340
2593
|
---
|
|
1341
2594
|
|
|
1342
|
-
##### `tableNameForEdgeToOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.tableNameForEdgeToOrigin"></a>
|
|
2595
|
+
##### `tableNameForEdgeToOrigin`<sup>Optional</sup> <a name="tableNameForEdgeToOrigin" id="@pwrdrvr/microapps-cdk.MicroAppsProps.property.tableNameForEdgeToOrigin"></a>
|
|
2596
|
+
|
|
2597
|
+
```typescript
|
|
2598
|
+
public readonly tableNameForEdgeToOrigin: string;
|
|
2599
|
+
```
|
|
1343
2600
|
|
|
1344
|
-
- *Type:*
|
|
2601
|
+
- *Type:* string
|
|
1345
2602
|
|
|
1346
2603
|
Pre-set table name for apps/versions/rules.
|
|
1347
2604
|
|
|
@@ -1349,11 +2606,11 @@ This is required when using v2 routing
|
|
|
1349
2606
|
|
|
1350
2607
|
---
|
|
1351
2608
|
|
|
1352
|
-
### MicroAppsS3Props <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props"></a>
|
|
2609
|
+
### MicroAppsS3Props <a name="MicroAppsS3Props" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props"></a>
|
|
1353
2610
|
|
|
1354
2611
|
Properties to initialize an instance of `MicroAppsS3`.
|
|
1355
2612
|
|
|
1356
|
-
#### Initializer <a name="
|
|
2613
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.Initializer"></a>
|
|
1357
2614
|
|
|
1358
2615
|
```typescript
|
|
1359
2616
|
import { MicroAppsS3Props } from '@pwrdrvr/microapps-cdk'
|
|
@@ -1361,54 +2618,106 @@ import { MicroAppsS3Props } from '@pwrdrvr/microapps-cdk'
|
|
|
1361
2618
|
const microAppsS3Props: MicroAppsS3Props = { ... }
|
|
1362
2619
|
```
|
|
1363
2620
|
|
|
1364
|
-
|
|
2621
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
2622
|
+
|
|
2623
|
+
| **Name** | **Type** | **Description** |
|
|
2624
|
+
| --- | --- | --- |
|
|
2625
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
2626
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
2627
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.bucketAppsName">bucketAppsName</a></code> | <code>string</code> | S3 deployed apps bucket name. |
|
|
2628
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.bucketAppsStagingName">bucketAppsStagingName</a></code> | <code>string</code> | S3 staging apps bucket name. |
|
|
2629
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.bucketLogsName">bucketLogsName</a></code> | <code>string</code> | S3 logs bucket name. |
|
|
2630
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.originShieldRegion">originShieldRegion</a></code> | <code>string</code> | Optional Origin Shield Region. |
|
|
2631
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
2632
|
+
|
|
2633
|
+
---
|
|
2634
|
+
|
|
2635
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.assetNameRoot"></a>
|
|
2636
|
+
|
|
2637
|
+
```typescript
|
|
2638
|
+
public readonly assetNameRoot: string;
|
|
2639
|
+
```
|
|
1365
2640
|
|
|
1366
|
-
- *Type:*
|
|
2641
|
+
- *Type:* string
|
|
1367
2642
|
- *Default:* resource names auto assigned
|
|
1368
2643
|
|
|
1369
2644
|
Optional asset name root.
|
|
1370
2645
|
|
|
1371
2646
|
---
|
|
1372
2647
|
|
|
1373
|
-
|
|
2648
|
+
*Example*
|
|
2649
|
+
|
|
2650
|
+
```typescript
|
|
2651
|
+
microapps
|
|
2652
|
+
```
|
|
2653
|
+
|
|
2654
|
+
|
|
2655
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.assetNameSuffix"></a>
|
|
2656
|
+
|
|
2657
|
+
```typescript
|
|
2658
|
+
public readonly assetNameSuffix: string;
|
|
2659
|
+
```
|
|
1374
2660
|
|
|
1375
|
-
- *Type:*
|
|
2661
|
+
- *Type:* string
|
|
1376
2662
|
- *Default:* none
|
|
1377
2663
|
|
|
1378
2664
|
Optional asset name suffix.
|
|
1379
2665
|
|
|
1380
2666
|
---
|
|
1381
2667
|
|
|
1382
|
-
|
|
2668
|
+
*Example*
|
|
2669
|
+
|
|
2670
|
+
```typescript
|
|
2671
|
+
-dev-pr-12
|
|
2672
|
+
```
|
|
2673
|
+
|
|
2674
|
+
|
|
2675
|
+
##### `bucketAppsName`<sup>Optional</sup> <a name="bucketAppsName" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.bucketAppsName"></a>
|
|
2676
|
+
|
|
2677
|
+
```typescript
|
|
2678
|
+
public readonly bucketAppsName: string;
|
|
2679
|
+
```
|
|
1383
2680
|
|
|
1384
|
-
- *Type:*
|
|
2681
|
+
- *Type:* string
|
|
1385
2682
|
- *Default:* auto-assigned
|
|
1386
2683
|
|
|
1387
2684
|
S3 deployed apps bucket name.
|
|
1388
2685
|
|
|
1389
2686
|
---
|
|
1390
2687
|
|
|
1391
|
-
##### `bucketAppsStagingName`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.bucketAppsStagingName"></a>
|
|
2688
|
+
##### `bucketAppsStagingName`<sup>Optional</sup> <a name="bucketAppsStagingName" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.bucketAppsStagingName"></a>
|
|
2689
|
+
|
|
2690
|
+
```typescript
|
|
2691
|
+
public readonly bucketAppsStagingName: string;
|
|
2692
|
+
```
|
|
1392
2693
|
|
|
1393
|
-
- *Type:*
|
|
2694
|
+
- *Type:* string
|
|
1394
2695
|
- *Default:* auto-assigned
|
|
1395
2696
|
|
|
1396
2697
|
S3 staging apps bucket name.
|
|
1397
2698
|
|
|
1398
2699
|
---
|
|
1399
2700
|
|
|
1400
|
-
##### `bucketLogsName`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.bucketLogsName"></a>
|
|
2701
|
+
##### `bucketLogsName`<sup>Optional</sup> <a name="bucketLogsName" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.bucketLogsName"></a>
|
|
1401
2702
|
|
|
1402
|
-
|
|
2703
|
+
```typescript
|
|
2704
|
+
public readonly bucketLogsName: string;
|
|
2705
|
+
```
|
|
2706
|
+
|
|
2707
|
+
- *Type:* string
|
|
1403
2708
|
- *Default:* auto-assigned
|
|
1404
2709
|
|
|
1405
2710
|
S3 logs bucket name.
|
|
1406
2711
|
|
|
1407
2712
|
---
|
|
1408
2713
|
|
|
1409
|
-
##### `originShieldRegion`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.originShieldRegion"></a>
|
|
2714
|
+
##### `originShieldRegion`<sup>Optional</sup> <a name="originShieldRegion" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.originShieldRegion"></a>
|
|
2715
|
+
|
|
2716
|
+
```typescript
|
|
2717
|
+
public readonly originShieldRegion: string;
|
|
2718
|
+
```
|
|
1410
2719
|
|
|
1411
|
-
- *Type:*
|
|
2720
|
+
- *Type:* string
|
|
1412
2721
|
- *Default:* none
|
|
1413
2722
|
|
|
1414
2723
|
Optional Origin Shield Region.
|
|
@@ -1418,9 +2727,13 @@ EdgeToOrigin calls have the lowest latency (~1 ms).
|
|
|
1418
2727
|
|
|
1419
2728
|
---
|
|
1420
2729
|
|
|
1421
|
-
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.removalPolicy"></a>
|
|
2730
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsS3Props.property.removalPolicy"></a>
|
|
2731
|
+
|
|
2732
|
+
```typescript
|
|
2733
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
2734
|
+
```
|
|
1422
2735
|
|
|
1423
|
-
- *Type:*
|
|
2736
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
1424
2737
|
- *Default:* per resource default
|
|
1425
2738
|
|
|
1426
2739
|
RemovalPolicy override for child resources.
|
|
@@ -1429,11 +2742,11 @@ Note: if set to DESTROY the S3 buckets will have `autoDeleteObjects` set to `tru
|
|
|
1429
2742
|
|
|
1430
2743
|
---
|
|
1431
2744
|
|
|
1432
|
-
### MicroAppsSvcsProps <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps"></a>
|
|
2745
|
+
### MicroAppsSvcsProps <a name="MicroAppsSvcsProps" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps"></a>
|
|
1433
2746
|
|
|
1434
2747
|
Properties to initialize an instance of `MicroAppsSvcs`.
|
|
1435
2748
|
|
|
1436
|
-
#### Initializer <a name="
|
|
2749
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.Initializer"></a>
|
|
1437
2750
|
|
|
1438
2751
|
```typescript
|
|
1439
2752
|
import { MicroAppsSvcsProps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -1441,59 +2754,123 @@ import { MicroAppsSvcsProps } from '@pwrdrvr/microapps-cdk'
|
|
|
1441
2754
|
const microAppsSvcsProps: MicroAppsSvcsProps = { ... }
|
|
1442
2755
|
```
|
|
1443
2756
|
|
|
1444
|
-
|
|
2757
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
2758
|
+
|
|
2759
|
+
| **Name** | **Type** | **Description** |
|
|
2760
|
+
| --- | --- | --- |
|
|
2761
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.appEnv">appEnv</a></code> | <code>string</code> | Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions. |
|
|
2762
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.bucketApps">bucketApps</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for deployed applications. |
|
|
2763
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.bucketAppsOAI">bucketAppsOAI</a></code> | <code>aws-cdk-lib.aws_cloudfront.OriginAccessIdentity</code> | CloudFront Origin Access Identity for the deployed applications bucket. |
|
|
2764
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.bucketAppsStaging">bucketAppsStaging</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for staged applications (prior to deploy). |
|
|
2765
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
2766
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
2767
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.deployerTimeout">deployerTimeout</a></code> | <code>aws-cdk-lib.Duration</code> | Deployer timeout. |
|
|
2768
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.edgeToOriginRoleARN">edgeToOriginRoleARN</a></code> | <code>string[]</code> | ARN of the IAM Role for the Edge to Origin Lambda Function. |
|
|
2769
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
2770
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.requireIAMAuthorization">requireIAMAuthorization</a></code> | <code>boolean</code> | Require IAM auth on API Gateway and Lambda Function URLs. |
|
|
2771
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.rootPathPrefix">rootPathPrefix</a></code> | <code>string</code> | Path prefix on the root of the deployment. |
|
|
2772
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.s3PolicyBypassAROAs">s3PolicyBypassAROAs</a></code> | <code>string[]</code> | Applies when using s3StrictBucketPolicy = true. |
|
|
2773
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.s3PolicyBypassPrincipalARNs">s3PolicyBypassPrincipalARNs</a></code> | <code>string[]</code> | Applies when using s3StrictBucketPolicy = true. |
|
|
2774
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.s3StrictBucketPolicy">s3StrictBucketPolicy</a></code> | <code>boolean</code> | 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. |
|
|
2775
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.table">table</a></code> | <code>aws-cdk-lib.aws_dynamodb.ITable</code> | Existing table for apps/versions/rules. |
|
|
2776
|
+
|
|
2777
|
+
---
|
|
2778
|
+
|
|
2779
|
+
##### `appEnv`<sup>Required</sup> <a name="appEnv" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.appEnv"></a>
|
|
2780
|
+
|
|
2781
|
+
```typescript
|
|
2782
|
+
public readonly appEnv: string;
|
|
2783
|
+
```
|
|
1445
2784
|
|
|
1446
|
-
- *Type:*
|
|
2785
|
+
- *Type:* string
|
|
1447
2786
|
|
|
1448
2787
|
Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions.
|
|
1449
2788
|
|
|
1450
2789
|
---
|
|
1451
2790
|
|
|
1452
|
-
##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketApps"></a>
|
|
2791
|
+
##### `bucketApps`<sup>Required</sup> <a name="bucketApps" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.bucketApps"></a>
|
|
1453
2792
|
|
|
1454
|
-
|
|
2793
|
+
```typescript
|
|
2794
|
+
public readonly bucketApps: IBucket;
|
|
2795
|
+
```
|
|
2796
|
+
|
|
2797
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
1455
2798
|
|
|
1456
2799
|
S3 bucket for deployed applications.
|
|
1457
2800
|
|
|
1458
2801
|
---
|
|
1459
2802
|
|
|
1460
|
-
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsOAI"></a>
|
|
2803
|
+
##### `bucketAppsOAI`<sup>Required</sup> <a name="bucketAppsOAI" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.bucketAppsOAI"></a>
|
|
2804
|
+
|
|
2805
|
+
```typescript
|
|
2806
|
+
public readonly bucketAppsOAI: OriginAccessIdentity;
|
|
2807
|
+
```
|
|
1461
2808
|
|
|
1462
|
-
- *Type:*
|
|
2809
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.OriginAccessIdentity
|
|
1463
2810
|
|
|
1464
2811
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
1465
2812
|
|
|
1466
2813
|
---
|
|
1467
2814
|
|
|
1468
|
-
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsStaging"></a>
|
|
2815
|
+
##### `bucketAppsStaging`<sup>Required</sup> <a name="bucketAppsStaging" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.bucketAppsStaging"></a>
|
|
2816
|
+
|
|
2817
|
+
```typescript
|
|
2818
|
+
public readonly bucketAppsStaging: IBucket;
|
|
2819
|
+
```
|
|
1469
2820
|
|
|
1470
|
-
- *Type:*
|
|
2821
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
1471
2822
|
|
|
1472
2823
|
S3 bucket for staged applications (prior to deploy).
|
|
1473
2824
|
|
|
1474
2825
|
---
|
|
1475
2826
|
|
|
1476
|
-
##### `assetNameRoot`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.assetNameRoot"></a>
|
|
2827
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.assetNameRoot"></a>
|
|
2828
|
+
|
|
2829
|
+
```typescript
|
|
2830
|
+
public readonly assetNameRoot: string;
|
|
2831
|
+
```
|
|
1477
2832
|
|
|
1478
|
-
- *Type:*
|
|
2833
|
+
- *Type:* string
|
|
1479
2834
|
- *Default:* resource names auto assigned
|
|
1480
2835
|
|
|
1481
2836
|
Optional asset name root.
|
|
1482
2837
|
|
|
1483
2838
|
---
|
|
1484
2839
|
|
|
1485
|
-
|
|
2840
|
+
*Example*
|
|
2841
|
+
|
|
2842
|
+
```typescript
|
|
2843
|
+
microapps
|
|
2844
|
+
```
|
|
2845
|
+
|
|
1486
2846
|
|
|
1487
|
-
|
|
2847
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.assetNameSuffix"></a>
|
|
2848
|
+
|
|
2849
|
+
```typescript
|
|
2850
|
+
public readonly assetNameSuffix: string;
|
|
2851
|
+
```
|
|
2852
|
+
|
|
2853
|
+
- *Type:* string
|
|
1488
2854
|
- *Default:* none
|
|
1489
2855
|
|
|
1490
2856
|
Optional asset name suffix.
|
|
1491
2857
|
|
|
1492
2858
|
---
|
|
1493
2859
|
|
|
1494
|
-
|
|
2860
|
+
*Example*
|
|
2861
|
+
|
|
2862
|
+
```typescript
|
|
2863
|
+
-dev-pr-12
|
|
2864
|
+
```
|
|
2865
|
+
|
|
1495
2866
|
|
|
1496
|
-
|
|
2867
|
+
##### `deployerTimeout`<sup>Optional</sup> <a name="deployerTimeout" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.deployerTimeout"></a>
|
|
2868
|
+
|
|
2869
|
+
```typescript
|
|
2870
|
+
public readonly deployerTimeout: Duration;
|
|
2871
|
+
```
|
|
2872
|
+
|
|
2873
|
+
- *Type:* aws-cdk-lib.Duration
|
|
1497
2874
|
- *Default:* 2 minutes
|
|
1498
2875
|
|
|
1499
2876
|
Deployer timeout.
|
|
@@ -1502,17 +2879,25 @@ For larger applications this needs to be set up to 2-5 minutes for the S3 copy
|
|
|
1502
2879
|
|
|
1503
2880
|
---
|
|
1504
2881
|
|
|
1505
|
-
##### `edgeToOriginRoleARN`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.edgeToOriginRoleARN"></a>
|
|
2882
|
+
##### `edgeToOriginRoleARN`<sup>Optional</sup> <a name="edgeToOriginRoleARN" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.edgeToOriginRoleARN"></a>
|
|
1506
2883
|
|
|
1507
|
-
|
|
2884
|
+
```typescript
|
|
2885
|
+
public readonly edgeToOriginRoleARN: string[];
|
|
2886
|
+
```
|
|
2887
|
+
|
|
2888
|
+
- *Type:* string[]
|
|
1508
2889
|
|
|
1509
2890
|
ARN of the IAM Role for the Edge to Origin Lambda Function.
|
|
1510
2891
|
|
|
1511
2892
|
---
|
|
1512
2893
|
|
|
1513
|
-
##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.removalPolicy"></a>
|
|
2894
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.removalPolicy"></a>
|
|
2895
|
+
|
|
2896
|
+
```typescript
|
|
2897
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
2898
|
+
```
|
|
1514
2899
|
|
|
1515
|
-
- *Type:*
|
|
2900
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
1516
2901
|
- *Default:* per resource default
|
|
1517
2902
|
|
|
1518
2903
|
RemovalPolicy override for child resources.
|
|
@@ -1521,27 +2906,46 @@ Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true
|
|
|
1521
2906
|
|
|
1522
2907
|
---
|
|
1523
2908
|
|
|
1524
|
-
##### `requireIAMAuthorization`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.requireIAMAuthorization"></a>
|
|
2909
|
+
##### `requireIAMAuthorization`<sup>Optional</sup> <a name="requireIAMAuthorization" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.requireIAMAuthorization"></a>
|
|
2910
|
+
|
|
2911
|
+
```typescript
|
|
2912
|
+
public readonly requireIAMAuthorization: boolean;
|
|
2913
|
+
```
|
|
1525
2914
|
|
|
1526
|
-
- *Type:*
|
|
2915
|
+
- *Type:* boolean
|
|
1527
2916
|
- *Default:* true
|
|
1528
2917
|
|
|
1529
2918
|
Require IAM auth on API Gateway and Lambda Function URLs.
|
|
1530
2919
|
|
|
1531
2920
|
---
|
|
1532
2921
|
|
|
1533
|
-
##### `rootPathPrefix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.rootPathPrefix"></a>
|
|
2922
|
+
##### `rootPathPrefix`<sup>Optional</sup> <a name="rootPathPrefix" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.rootPathPrefix"></a>
|
|
2923
|
+
|
|
2924
|
+
```typescript
|
|
2925
|
+
public readonly rootPathPrefix: string;
|
|
2926
|
+
```
|
|
1534
2927
|
|
|
1535
|
-
- *Type:*
|
|
2928
|
+
- *Type:* string
|
|
1536
2929
|
- *Default:* none
|
|
1537
2930
|
|
|
1538
2931
|
Path prefix on the root of the deployment.
|
|
1539
2932
|
|
|
1540
2933
|
---
|
|
1541
2934
|
|
|
1542
|
-
|
|
2935
|
+
*Example*
|
|
1543
2936
|
|
|
1544
|
-
|
|
2937
|
+
```typescript
|
|
2938
|
+
dev/
|
|
2939
|
+
```
|
|
2940
|
+
|
|
2941
|
+
|
|
2942
|
+
##### `s3PolicyBypassAROAs`<sup>Optional</sup> <a name="s3PolicyBypassAROAs" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.s3PolicyBypassAROAs"></a>
|
|
2943
|
+
|
|
2944
|
+
```typescript
|
|
2945
|
+
public readonly s3PolicyBypassAROAs: string[];
|
|
2946
|
+
```
|
|
2947
|
+
|
|
2948
|
+
- *Type:* string[]
|
|
1545
2949
|
|
|
1546
2950
|
Applies when using s3StrictBucketPolicy = true.
|
|
1547
2951
|
|
|
@@ -1579,13 +2983,24 @@ To get the AROA with the AWS CLI:
|
|
|
1579
2983
|
aws iam get-role --role-name ROLE-NAME
|
|
1580
2984
|
aws iam get-user --user-name USER-NAME
|
|
1581
2985
|
|
|
1582
|
-
> s3StrictBucketPolicy
|
|
2986
|
+
> [s3StrictBucketPolicy](s3StrictBucketPolicy)
|
|
1583
2987
|
|
|
1584
2988
|
---
|
|
1585
2989
|
|
|
1586
|
-
|
|
2990
|
+
*Example*
|
|
2991
|
+
|
|
2992
|
+
```typescript
|
|
2993
|
+
[ 'AROA1234567890123' ]
|
|
2994
|
+
```
|
|
2995
|
+
|
|
2996
|
+
|
|
2997
|
+
##### `s3PolicyBypassPrincipalARNs`<sup>Optional</sup> <a name="s3PolicyBypassPrincipalARNs" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.s3PolicyBypassPrincipalARNs"></a>
|
|
2998
|
+
|
|
2999
|
+
```typescript
|
|
3000
|
+
public readonly s3PolicyBypassPrincipalARNs: string[];
|
|
3001
|
+
```
|
|
1587
3002
|
|
|
1588
|
-
- *Type:*
|
|
3003
|
+
- *Type:* string[]
|
|
1589
3004
|
|
|
1590
3005
|
Applies when using s3StrictBucketPolicy = true.
|
|
1591
3006
|
|
|
@@ -1596,13 +3011,24 @@ Roles that are Assumed must instead have their AROA added to `s3PolicyBypassAROA
|
|
|
1596
3011
|
Typically any admin roles / users that need to view or manage the S3 Bucket
|
|
1597
3012
|
would be added to this list.
|
|
1598
3013
|
|
|
1599
|
-
> s3PolicyBypassAROAs
|
|
3014
|
+
> [s3PolicyBypassAROAs](s3PolicyBypassAROAs)
|
|
1600
3015
|
|
|
1601
3016
|
---
|
|
1602
3017
|
|
|
1603
|
-
|
|
3018
|
+
*Example*
|
|
1604
3019
|
|
|
1605
|
-
|
|
3020
|
+
```typescript
|
|
3021
|
+
['arn:aws:iam::1234567890123:role/AdminAccess', 'arn:aws:iam::1234567890123:user/MyAdminUser']
|
|
3022
|
+
```
|
|
3023
|
+
|
|
3024
|
+
|
|
3025
|
+
##### `s3StrictBucketPolicy`<sup>Optional</sup> <a name="s3StrictBucketPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.s3StrictBucketPolicy"></a>
|
|
3026
|
+
|
|
3027
|
+
```typescript
|
|
3028
|
+
public readonly s3StrictBucketPolicy: boolean;
|
|
3029
|
+
```
|
|
3030
|
+
|
|
3031
|
+
- *Type:* boolean
|
|
1606
3032
|
- *Default:* false
|
|
1607
3033
|
|
|
1608
3034
|
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.
|
|
@@ -1612,20 +3038,24 @@ fully trusted.
|
|
|
1612
3038
|
|
|
1613
3039
|
---
|
|
1614
3040
|
|
|
1615
|
-
##### `table`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.table"></a>
|
|
3041
|
+
##### `table`<sup>Optional</sup> <a name="table" id="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.property.table"></a>
|
|
1616
3042
|
|
|
1617
|
-
|
|
3043
|
+
```typescript
|
|
3044
|
+
public readonly table: ITable;
|
|
3045
|
+
```
|
|
3046
|
+
|
|
3047
|
+
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
|
|
1618
3048
|
- *Default:* created by construct
|
|
1619
3049
|
|
|
1620
3050
|
Existing table for apps/versions/rules.
|
|
1621
3051
|
|
|
1622
3052
|
---
|
|
1623
3053
|
|
|
1624
|
-
### MicroAppsTableProps <a name="@pwrdrvr/microapps-cdk.MicroAppsTableProps"></a>
|
|
3054
|
+
### MicroAppsTableProps <a name="MicroAppsTableProps" id="@pwrdrvr/microapps-cdk.MicroAppsTableProps"></a>
|
|
1625
3055
|
|
|
1626
3056
|
Properties to initialize an instance of `MicroAppsTable`.
|
|
1627
3057
|
|
|
1628
|
-
#### Initializer <a name="
|
|
3058
|
+
#### Initializer <a name="Initializer" id="@pwrdrvr/microapps-cdk.MicroAppsTableProps.Initializer"></a>
|
|
1629
3059
|
|
|
1630
3060
|
```typescript
|
|
1631
3061
|
import { MicroAppsTableProps } from '@pwrdrvr/microapps-cdk'
|
|
@@ -1633,27 +3063,63 @@ import { MicroAppsTableProps } from '@pwrdrvr/microapps-cdk'
|
|
|
1633
3063
|
const microAppsTableProps: MicroAppsTableProps = { ... }
|
|
1634
3064
|
```
|
|
1635
3065
|
|
|
1636
|
-
|
|
3066
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3067
|
+
|
|
3068
|
+
| **Name** | **Type** | **Description** |
|
|
3069
|
+
| --- | --- | --- |
|
|
3070
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTableProps.property.assetNameRoot">assetNameRoot</a></code> | <code>string</code> | Optional asset name root. |
|
|
3071
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTableProps.property.assetNameSuffix">assetNameSuffix</a></code> | <code>string</code> | Optional asset name suffix. |
|
|
3072
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.MicroAppsTableProps.property.removalPolicy">removalPolicy</a></code> | <code>aws-cdk-lib.RemovalPolicy</code> | RemovalPolicy override for child resources. |
|
|
3073
|
+
|
|
3074
|
+
---
|
|
3075
|
+
|
|
3076
|
+
##### `assetNameRoot`<sup>Optional</sup> <a name="assetNameRoot" id="@pwrdrvr/microapps-cdk.MicroAppsTableProps.property.assetNameRoot"></a>
|
|
3077
|
+
|
|
3078
|
+
```typescript
|
|
3079
|
+
public readonly assetNameRoot: string;
|
|
3080
|
+
```
|
|
1637
3081
|
|
|
1638
|
-
- *Type:*
|
|
3082
|
+
- *Type:* string
|
|
1639
3083
|
- *Default:* resource names auto assigned
|
|
1640
3084
|
|
|
1641
3085
|
Optional asset name root.
|
|
1642
3086
|
|
|
1643
3087
|
---
|
|
1644
3088
|
|
|
1645
|
-
|
|
3089
|
+
*Example*
|
|
3090
|
+
|
|
3091
|
+
```typescript
|
|
3092
|
+
microapps
|
|
3093
|
+
```
|
|
3094
|
+
|
|
3095
|
+
|
|
3096
|
+
##### `assetNameSuffix`<sup>Optional</sup> <a name="assetNameSuffix" id="@pwrdrvr/microapps-cdk.MicroAppsTableProps.property.assetNameSuffix"></a>
|
|
3097
|
+
|
|
3098
|
+
```typescript
|
|
3099
|
+
public readonly assetNameSuffix: string;
|
|
3100
|
+
```
|
|
1646
3101
|
|
|
1647
|
-
- *Type:*
|
|
3102
|
+
- *Type:* string
|
|
1648
3103
|
- *Default:* none
|
|
1649
3104
|
|
|
1650
3105
|
Optional asset name suffix.
|
|
1651
3106
|
|
|
1652
3107
|
---
|
|
1653
3108
|
|
|
1654
|
-
|
|
3109
|
+
*Example*
|
|
3110
|
+
|
|
3111
|
+
```typescript
|
|
3112
|
+
-dev-pr-12
|
|
3113
|
+
```
|
|
3114
|
+
|
|
3115
|
+
|
|
3116
|
+
##### `removalPolicy`<sup>Optional</sup> <a name="removalPolicy" id="@pwrdrvr/microapps-cdk.MicroAppsTableProps.property.removalPolicy"></a>
|
|
3117
|
+
|
|
3118
|
+
```typescript
|
|
3119
|
+
public readonly removalPolicy: RemovalPolicy;
|
|
3120
|
+
```
|
|
1655
3121
|
|
|
1656
|
-
- *Type:*
|
|
3122
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
1657
3123
|
- *Default:* per resource default
|
|
1658
3124
|
|
|
1659
3125
|
RemovalPolicy override for child resources.
|
|
@@ -1663,95 +3129,152 @@ Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true
|
|
|
1663
3129
|
---
|
|
1664
3130
|
|
|
1665
3131
|
|
|
1666
|
-
## Protocols <a name="Protocols"></a>
|
|
3132
|
+
## Protocols <a name="Protocols" id="Protocols"></a>
|
|
1667
3133
|
|
|
1668
|
-
### IMicroApps <a name="@pwrdrvr/microapps-cdk.IMicroApps"></a>
|
|
3134
|
+
### IMicroApps <a name="IMicroApps" id="@pwrdrvr/microapps-cdk.IMicroApps"></a>
|
|
1669
3135
|
|
|
1670
|
-
- *Implemented By:*
|
|
3136
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroApps">MicroApps</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroApps">IMicroApps</a>
|
|
1671
3137
|
|
|
1672
3138
|
Represents a MicroApps.
|
|
1673
3139
|
|
|
1674
3140
|
|
|
1675
|
-
#### Properties <a name="Properties"></a>
|
|
3141
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3142
|
+
|
|
3143
|
+
| **Name** | **Type** | **Description** |
|
|
3144
|
+
| --- | --- | --- |
|
|
3145
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroApps.property.cf">cf</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF">IMicroAppsCF</a></code> | {@inheritdoc IMicroAppsCF}. |
|
|
3146
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroApps.property.s3">s3</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3">IMicroAppsS3</a></code> | {@inheritdoc IMicroAppsS3}. |
|
|
3147
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroApps.property.svcs">svcs</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs">IMicroAppsSvcs</a></code> | {@inheritdoc IMicroAppsSvcs}. |
|
|
3148
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroApps.property.edgeToOrigin">edgeToOrigin</a></code> | <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin">IMicroAppsEdgeToOrigin</a></code> | {@inheritdoc IMicroAppsEdgeToOrigin}. |
|
|
3149
|
+
|
|
3150
|
+
---
|
|
3151
|
+
|
|
3152
|
+
##### `cf`<sup>Required</sup> <a name="cf" id="@pwrdrvr/microapps-cdk.IMicroApps.property.cf"></a>
|
|
1676
3153
|
|
|
1677
|
-
|
|
3154
|
+
```typescript
|
|
3155
|
+
public readonly cf: IMicroAppsCF;
|
|
3156
|
+
```
|
|
1678
3157
|
|
|
1679
|
-
- *Type:*
|
|
3158
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF">IMicroAppsCF</a>
|
|
1680
3159
|
|
|
1681
3160
|
{@inheritdoc IMicroAppsCF}.
|
|
1682
3161
|
|
|
1683
3162
|
---
|
|
1684
3163
|
|
|
1685
|
-
##### `s3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.s3"></a>
|
|
3164
|
+
##### `s3`<sup>Required</sup> <a name="s3" id="@pwrdrvr/microapps-cdk.IMicroApps.property.s3"></a>
|
|
1686
3165
|
|
|
1687
|
-
|
|
3166
|
+
```typescript
|
|
3167
|
+
public readonly s3: IMicroAppsS3;
|
|
3168
|
+
```
|
|
3169
|
+
|
|
3170
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3">IMicroAppsS3</a>
|
|
1688
3171
|
|
|
1689
3172
|
{@inheritdoc IMicroAppsS3}.
|
|
1690
3173
|
|
|
1691
3174
|
---
|
|
1692
3175
|
|
|
1693
|
-
##### `svcs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.svcs"></a>
|
|
3176
|
+
##### `svcs`<sup>Required</sup> <a name="svcs" id="@pwrdrvr/microapps-cdk.IMicroApps.property.svcs"></a>
|
|
3177
|
+
|
|
3178
|
+
```typescript
|
|
3179
|
+
public readonly svcs: IMicroAppsSvcs;
|
|
3180
|
+
```
|
|
1694
3181
|
|
|
1695
|
-
- *Type:*
|
|
3182
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs">IMicroAppsSvcs</a>
|
|
1696
3183
|
|
|
1697
3184
|
{@inheritdoc IMicroAppsSvcs}.
|
|
1698
3185
|
|
|
1699
3186
|
---
|
|
1700
3187
|
|
|
1701
|
-
##### `edgeToOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.edgeToOrigin"></a>
|
|
3188
|
+
##### `edgeToOrigin`<sup>Optional</sup> <a name="edgeToOrigin" id="@pwrdrvr/microapps-cdk.IMicroApps.property.edgeToOrigin"></a>
|
|
3189
|
+
|
|
3190
|
+
```typescript
|
|
3191
|
+
public readonly edgeToOrigin: IMicroAppsEdgeToOrigin;
|
|
3192
|
+
```
|
|
1702
3193
|
|
|
1703
|
-
- *Type:*
|
|
3194
|
+
- *Type:* <a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin">IMicroAppsEdgeToOrigin</a>
|
|
1704
3195
|
|
|
1705
3196
|
{@inheritdoc IMicroAppsEdgeToOrigin}.
|
|
1706
3197
|
|
|
1707
3198
|
---
|
|
1708
3199
|
|
|
1709
|
-
### IMicroAppsCF <a name="@pwrdrvr/microapps-cdk.IMicroAppsCF"></a>
|
|
3200
|
+
### IMicroAppsCF <a name="IMicroAppsCF" id="@pwrdrvr/microapps-cdk.IMicroAppsCF"></a>
|
|
1710
3201
|
|
|
1711
|
-
- *Implemented By:*
|
|
3202
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsCF">MicroAppsCF</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF">IMicroAppsCF</a>
|
|
1712
3203
|
|
|
1713
3204
|
Represents a MicroApps CloudFront.
|
|
1714
3205
|
|
|
1715
3206
|
|
|
1716
|
-
#### Properties <a name="Properties"></a>
|
|
3207
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3208
|
+
|
|
3209
|
+
| **Name** | **Type** | **Description** |
|
|
3210
|
+
| --- | --- | --- |
|
|
3211
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsCF.property.cloudFrontDistro">cloudFrontDistro</a></code> | <code>aws-cdk-lib.aws_cloudfront.Distribution</code> | The CloudFront distribution. |
|
|
3212
|
+
|
|
3213
|
+
---
|
|
3214
|
+
|
|
3215
|
+
##### `cloudFrontDistro`<sup>Required</sup> <a name="cloudFrontDistro" id="@pwrdrvr/microapps-cdk.IMicroAppsCF.property.cloudFrontDistro"></a>
|
|
1717
3216
|
|
|
1718
|
-
|
|
3217
|
+
```typescript
|
|
3218
|
+
public readonly cloudFrontDistro: Distribution;
|
|
3219
|
+
```
|
|
1719
3220
|
|
|
1720
|
-
- *Type:*
|
|
3221
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.Distribution
|
|
1721
3222
|
|
|
1722
3223
|
The CloudFront distribution.
|
|
1723
3224
|
|
|
1724
3225
|
---
|
|
1725
3226
|
|
|
1726
|
-
### IMicroAppsChildDeployer <a name="@pwrdrvr/microapps-cdk.IMicroAppsChildDeployer"></a>
|
|
3227
|
+
### IMicroAppsChildDeployer <a name="IMicroAppsChildDeployer" id="@pwrdrvr/microapps-cdk.IMicroAppsChildDeployer"></a>
|
|
1727
3228
|
|
|
1728
|
-
- *Implemented By:*
|
|
3229
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsChildDeployer">MicroAppsChildDeployer</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroAppsChildDeployer">IMicroAppsChildDeployer</a>
|
|
1729
3230
|
|
|
1730
3231
|
Represents a MicroApps Child Deployer.
|
|
1731
3232
|
|
|
1732
3233
|
|
|
1733
|
-
#### Properties <a name="Properties"></a>
|
|
3234
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3235
|
+
|
|
3236
|
+
| **Name** | **Type** | **Description** |
|
|
3237
|
+
| --- | --- | --- |
|
|
3238
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsChildDeployer.property.deployerFunc">deployerFunc</a></code> | <code>aws-cdk-lib.aws_lambda.IFunction</code> | Lambda function for the Deployer. |
|
|
1734
3239
|
|
|
1735
|
-
|
|
3240
|
+
---
|
|
3241
|
+
|
|
3242
|
+
##### `deployerFunc`<sup>Required</sup> <a name="deployerFunc" id="@pwrdrvr/microapps-cdk.IMicroAppsChildDeployer.property.deployerFunc"></a>
|
|
3243
|
+
|
|
3244
|
+
```typescript
|
|
3245
|
+
public readonly deployerFunc: IFunction;
|
|
3246
|
+
```
|
|
1736
3247
|
|
|
1737
|
-
- *Type:*
|
|
3248
|
+
- *Type:* aws-cdk-lib.aws_lambda.IFunction
|
|
1738
3249
|
|
|
1739
3250
|
Lambda function for the Deployer.
|
|
1740
3251
|
|
|
1741
3252
|
---
|
|
1742
3253
|
|
|
1743
|
-
### IMicroAppsEdgeToOrigin <a name="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin"></a>
|
|
3254
|
+
### IMicroAppsEdgeToOrigin <a name="IMicroAppsEdgeToOrigin" id="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin"></a>
|
|
1744
3255
|
|
|
1745
|
-
- *Implemented By:*
|
|
3256
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsEdgeToOrigin">MicroAppsEdgeToOrigin</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin">IMicroAppsEdgeToOrigin</a>
|
|
1746
3257
|
|
|
1747
3258
|
Represents a MicroApps Edge to Origin Function.
|
|
1748
3259
|
|
|
1749
3260
|
|
|
1750
|
-
#### Properties <a name="Properties"></a>
|
|
3261
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3262
|
+
|
|
3263
|
+
| **Name** | **Type** | **Description** |
|
|
3264
|
+
| --- | --- | --- |
|
|
3265
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.property.edgeToOriginFunction">edgeToOriginFunction</a></code> | <code>aws-cdk-lib.aws_lambda.Function \| aws-cdk-lib.aws_cloudfront.experimental.EdgeFunction</code> | The edge to origin function for API Gateway Request Origin Edge Lambda. |
|
|
3266
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.property.edgeToOriginLambdas">edgeToOriginLambdas</a></code> | <code>aws-cdk-lib.aws_cloudfront.EdgeLambda[]</code> | Configuration of the edge to origin lambda functions. |
|
|
3267
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.property.edgeToOriginRole">edgeToOriginRole</a></code> | <code>aws-cdk-lib.aws_iam.Role</code> | The IAM Role for the edge to origin function. |
|
|
3268
|
+
|
|
3269
|
+
---
|
|
3270
|
+
|
|
3271
|
+
##### `edgeToOriginFunction`<sup>Required</sup> <a name="edgeToOriginFunction" id="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.property.edgeToOriginFunction"></a>
|
|
1751
3272
|
|
|
1752
|
-
|
|
3273
|
+
```typescript
|
|
3274
|
+
public readonly edgeToOriginFunction: Function | EdgeFunction;
|
|
3275
|
+
```
|
|
1753
3276
|
|
|
1754
|
-
- *Type:*
|
|
3277
|
+
- *Type:* aws-cdk-lib.aws_lambda.Function | aws-cdk-lib.aws_cloudfront.experimental.EdgeFunction
|
|
1755
3278
|
|
|
1756
3279
|
The edge to origin function for API Gateway Request Origin Edge Lambda.
|
|
1757
3280
|
|
|
@@ -1759,124 +3282,197 @@ The generated `config.yml` is included in the Lambda's code.
|
|
|
1759
3282
|
|
|
1760
3283
|
---
|
|
1761
3284
|
|
|
1762
|
-
##### `edgeToOriginLambdas`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.edgeToOriginLambdas"></a>
|
|
3285
|
+
##### `edgeToOriginLambdas`<sup>Required</sup> <a name="edgeToOriginLambdas" id="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.property.edgeToOriginLambdas"></a>
|
|
3286
|
+
|
|
3287
|
+
```typescript
|
|
3288
|
+
public readonly edgeToOriginLambdas: EdgeLambda[];
|
|
3289
|
+
```
|
|
1763
3290
|
|
|
1764
|
-
- *Type:*
|
|
3291
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.EdgeLambda[]
|
|
1765
3292
|
|
|
1766
3293
|
Configuration of the edge to origin lambda functions.
|
|
1767
3294
|
|
|
1768
3295
|
---
|
|
1769
3296
|
|
|
1770
|
-
##### `edgeToOriginRole`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.edgeToOriginRole"></a>
|
|
3297
|
+
##### `edgeToOriginRole`<sup>Required</sup> <a name="edgeToOriginRole" id="@pwrdrvr/microapps-cdk.IMicroAppsEdgeToOrigin.property.edgeToOriginRole"></a>
|
|
3298
|
+
|
|
3299
|
+
```typescript
|
|
3300
|
+
public readonly edgeToOriginRole: Role;
|
|
3301
|
+
```
|
|
1771
3302
|
|
|
1772
|
-
- *Type:*
|
|
3303
|
+
- *Type:* aws-cdk-lib.aws_iam.Role
|
|
1773
3304
|
|
|
1774
3305
|
The IAM Role for the edge to origin function.
|
|
1775
3306
|
|
|
1776
3307
|
---
|
|
1777
3308
|
|
|
1778
|
-
### IMicroAppsS3 <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3"></a>
|
|
3309
|
+
### IMicroAppsS3 <a name="IMicroAppsS3" id="@pwrdrvr/microapps-cdk.IMicroAppsS3"></a>
|
|
1779
3310
|
|
|
1780
|
-
- *Implemented By:*
|
|
3311
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsS3">MicroAppsS3</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3">IMicroAppsS3</a>
|
|
1781
3312
|
|
|
1782
3313
|
Represents a MicroApps S3.
|
|
1783
3314
|
|
|
1784
3315
|
|
|
1785
|
-
#### Properties <a name="Properties"></a>
|
|
3316
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3317
|
+
|
|
3318
|
+
| **Name** | **Type** | **Description** |
|
|
3319
|
+
| --- | --- | --- |
|
|
3320
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketApps">bucketApps</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for deployed applications. |
|
|
3321
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsOAI">bucketAppsOAI</a></code> | <code>aws-cdk-lib.aws_cloudfront.OriginAccessIdentity</code> | CloudFront Origin Access Identity for the deployed applications bucket. |
|
|
3322
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsOriginApp">bucketAppsOriginApp</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.S3Origin</code> | CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: app` so the OriginRequest function knows to send the request to the application origin first, if configured for a particular application. |
|
|
3323
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsOriginS3">bucketAppsOriginS3</a></code> | <code>aws-cdk-lib.aws_cloudfront_origins.S3Origin</code> | CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: s3` so the OriginRequest function knows to NOT send the request to the application origin and instead let it fall through to the S3 bucket. |
|
|
3324
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsStaging">bucketAppsStaging</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for staged applications (prior to deploy). |
|
|
3325
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketLogs">bucketLogs</a></code> | <code>aws-cdk-lib.aws_s3.IBucket</code> | S3 bucket for CloudFront logs. |
|
|
3326
|
+
|
|
3327
|
+
---
|
|
3328
|
+
|
|
3329
|
+
##### `bucketApps`<sup>Required</sup> <a name="bucketApps" id="@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketApps"></a>
|
|
1786
3330
|
|
|
1787
|
-
|
|
3331
|
+
```typescript
|
|
3332
|
+
public readonly bucketApps: IBucket;
|
|
3333
|
+
```
|
|
1788
3334
|
|
|
1789
|
-
- *Type:*
|
|
3335
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
1790
3336
|
|
|
1791
3337
|
S3 bucket for deployed applications.
|
|
1792
3338
|
|
|
1793
3339
|
---
|
|
1794
3340
|
|
|
1795
|
-
##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOAI"></a>
|
|
3341
|
+
##### `bucketAppsOAI`<sup>Required</sup> <a name="bucketAppsOAI" id="@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsOAI"></a>
|
|
3342
|
+
|
|
3343
|
+
```typescript
|
|
3344
|
+
public readonly bucketAppsOAI: OriginAccessIdentity;
|
|
3345
|
+
```
|
|
1796
3346
|
|
|
1797
|
-
- *Type:*
|
|
3347
|
+
- *Type:* aws-cdk-lib.aws_cloudfront.OriginAccessIdentity
|
|
1798
3348
|
|
|
1799
3349
|
CloudFront Origin Access Identity for the deployed applications bucket.
|
|
1800
3350
|
|
|
1801
3351
|
---
|
|
1802
3352
|
|
|
1803
|
-
##### `bucketAppsOriginApp`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOriginApp"></a>
|
|
3353
|
+
##### `bucketAppsOriginApp`<sup>Required</sup> <a name="bucketAppsOriginApp" id="@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsOriginApp"></a>
|
|
3354
|
+
|
|
3355
|
+
```typescript
|
|
3356
|
+
public readonly bucketAppsOriginApp: S3Origin;
|
|
3357
|
+
```
|
|
1804
3358
|
|
|
1805
|
-
- *Type:*
|
|
3359
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.S3Origin
|
|
1806
3360
|
|
|
1807
3361
|
CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: app` so the OriginRequest function knows to send the request to the application origin first, if configured for a particular application.
|
|
1808
3362
|
|
|
1809
3363
|
---
|
|
1810
3364
|
|
|
1811
|
-
##### `bucketAppsOriginS3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOriginS3"></a>
|
|
3365
|
+
##### `bucketAppsOriginS3`<sup>Required</sup> <a name="bucketAppsOriginS3" id="@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsOriginS3"></a>
|
|
3366
|
+
|
|
3367
|
+
```typescript
|
|
3368
|
+
public readonly bucketAppsOriginS3: S3Origin;
|
|
3369
|
+
```
|
|
1812
3370
|
|
|
1813
|
-
- *Type:*
|
|
3371
|
+
- *Type:* aws-cdk-lib.aws_cloudfront_origins.S3Origin
|
|
1814
3372
|
|
|
1815
3373
|
CloudFront Origin for the deployed applications bucket Marked with `x-microapps-origin: s3` so the OriginRequest function knows to NOT send the request to the application origin and instead let it fall through to the S3 bucket.
|
|
1816
3374
|
|
|
1817
3375
|
---
|
|
1818
3376
|
|
|
1819
|
-
##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsStaging"></a>
|
|
3377
|
+
##### `bucketAppsStaging`<sup>Required</sup> <a name="bucketAppsStaging" id="@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketAppsStaging"></a>
|
|
1820
3378
|
|
|
1821
|
-
|
|
3379
|
+
```typescript
|
|
3380
|
+
public readonly bucketAppsStaging: IBucket;
|
|
3381
|
+
```
|
|
3382
|
+
|
|
3383
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
1822
3384
|
|
|
1823
3385
|
S3 bucket for staged applications (prior to deploy).
|
|
1824
3386
|
|
|
1825
3387
|
---
|
|
1826
3388
|
|
|
1827
|
-
##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketLogs"></a>
|
|
3389
|
+
##### `bucketLogs`<sup>Required</sup> <a name="bucketLogs" id="@pwrdrvr/microapps-cdk.IMicroAppsS3.property.bucketLogs"></a>
|
|
3390
|
+
|
|
3391
|
+
```typescript
|
|
3392
|
+
public readonly bucketLogs: IBucket;
|
|
3393
|
+
```
|
|
1828
3394
|
|
|
1829
|
-
- *Type:*
|
|
3395
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucket
|
|
1830
3396
|
|
|
1831
3397
|
S3 bucket for CloudFront logs.
|
|
1832
3398
|
|
|
1833
3399
|
---
|
|
1834
3400
|
|
|
1835
|
-
### IMicroAppsSvcs <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs"></a>
|
|
3401
|
+
### IMicroAppsSvcs <a name="IMicroAppsSvcs" id="@pwrdrvr/microapps-cdk.IMicroAppsSvcs"></a>
|
|
1836
3402
|
|
|
1837
|
-
- *Implemented By:*
|
|
3403
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsSvcs">MicroAppsSvcs</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs">IMicroAppsSvcs</a>
|
|
1838
3404
|
|
|
1839
3405
|
Represents a MicroApps Services.
|
|
1840
3406
|
|
|
1841
3407
|
|
|
1842
|
-
#### Properties <a name="Properties"></a>
|
|
3408
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3409
|
+
|
|
3410
|
+
| **Name** | **Type** | **Description** |
|
|
3411
|
+
| --- | --- | --- |
|
|
3412
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs.property.deployerFunc">deployerFunc</a></code> | <code>aws-cdk-lib.aws_lambda.Function</code> | Lambda function for the Deployer. |
|
|
3413
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs.property.table">table</a></code> | <code>aws-cdk-lib.aws_dynamodb.ITable</code> | DynamoDB table used by Router, Deployer, and Release console app. |
|
|
3414
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsSvcs.property.routerFunc">routerFunc</a></code> | <code>aws-cdk-lib.aws_lambda.Function</code> | Lambda function for the Router. |
|
|
3415
|
+
|
|
3416
|
+
---
|
|
3417
|
+
|
|
3418
|
+
##### `deployerFunc`<sup>Required</sup> <a name="deployerFunc" id="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.property.deployerFunc"></a>
|
|
1843
3419
|
|
|
1844
|
-
|
|
3420
|
+
```typescript
|
|
3421
|
+
public readonly deployerFunc: Function;
|
|
3422
|
+
```
|
|
1845
3423
|
|
|
1846
|
-
- *Type:*
|
|
3424
|
+
- *Type:* aws-cdk-lib.aws_lambda.Function
|
|
1847
3425
|
|
|
1848
3426
|
Lambda function for the Deployer.
|
|
1849
3427
|
|
|
1850
3428
|
---
|
|
1851
3429
|
|
|
1852
|
-
##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.table"></a>
|
|
3430
|
+
##### `table`<sup>Required</sup> <a name="table" id="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.property.table"></a>
|
|
1853
3431
|
|
|
1854
|
-
|
|
3432
|
+
```typescript
|
|
3433
|
+
public readonly table: ITable;
|
|
3434
|
+
```
|
|
3435
|
+
|
|
3436
|
+
- *Type:* aws-cdk-lib.aws_dynamodb.ITable
|
|
1855
3437
|
|
|
1856
3438
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
1857
3439
|
|
|
1858
3440
|
---
|
|
1859
3441
|
|
|
1860
|
-
##### `routerFunc`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.routerFunc"></a>
|
|
3442
|
+
##### `routerFunc`<sup>Optional</sup> <a name="routerFunc" id="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.property.routerFunc"></a>
|
|
3443
|
+
|
|
3444
|
+
```typescript
|
|
3445
|
+
public readonly routerFunc: Function;
|
|
3446
|
+
```
|
|
1861
3447
|
|
|
1862
|
-
- *Type:*
|
|
3448
|
+
- *Type:* aws-cdk-lib.aws_lambda.Function
|
|
1863
3449
|
|
|
1864
3450
|
Lambda function for the Router.
|
|
1865
3451
|
|
|
1866
3452
|
---
|
|
1867
3453
|
|
|
1868
|
-
### IMicroAppsTable <a name="@pwrdrvr/microapps-cdk.IMicroAppsTable"></a>
|
|
3454
|
+
### IMicroAppsTable <a name="IMicroAppsTable" id="@pwrdrvr/microapps-cdk.IMicroAppsTable"></a>
|
|
1869
3455
|
|
|
1870
|
-
- *Implemented By:*
|
|
3456
|
+
- *Implemented By:* <a href="#@pwrdrvr/microapps-cdk.MicroAppsTable">MicroAppsTable</a>, <a href="#@pwrdrvr/microapps-cdk.IMicroAppsTable">IMicroAppsTable</a>
|
|
1871
3457
|
|
|
1872
3458
|
Represents a MicroAppsTable.
|
|
1873
3459
|
|
|
1874
3460
|
|
|
1875
|
-
#### Properties <a name="Properties"></a>
|
|
3461
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
3462
|
+
|
|
3463
|
+
| **Name** | **Type** | **Description** |
|
|
3464
|
+
| --- | --- | --- |
|
|
3465
|
+
| <code><a href="#@pwrdrvr/microapps-cdk.IMicroAppsTable.property.table">table</a></code> | <code>aws-cdk-lib.aws_dynamodb.Table</code> | DynamoDB table used by Router, Deployer, and Release console app. |
|
|
3466
|
+
|
|
3467
|
+
---
|
|
3468
|
+
|
|
3469
|
+
##### `table`<sup>Required</sup> <a name="table" id="@pwrdrvr/microapps-cdk.IMicroAppsTable.property.table"></a>
|
|
1876
3470
|
|
|
1877
|
-
|
|
3471
|
+
```typescript
|
|
3472
|
+
public readonly table: Table;
|
|
3473
|
+
```
|
|
1878
3474
|
|
|
1879
|
-
- *Type:*
|
|
3475
|
+
- *Type:* aws-cdk-lib.aws_dynamodb.Table
|
|
1880
3476
|
|
|
1881
3477
|
DynamoDB table used by Router, Deployer, and Release console app.
|
|
1882
3478
|
|