@btc-embedded/cdk-extensions 0.9.0 → 0.9.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 +554 -2
- package/API.md +1861 -59
- package/CHANGELOG.md +42 -0
- package/lib/constructs/EventPipe.d.ts +119 -0
- package/lib/constructs/EventPipe.js +103 -0
- package/lib/constructs/S3Bucket.d.ts +10 -0
- package/lib/constructs/S3Bucket.js +39 -0
- package/lib/constructs/SecureRestApi.js +1 -1
- package/lib/constructs/SecureRestApiV2.js +1 -1
- package/lib/constructs/index.d.ts +2 -0
- package/lib/constructs/index.js +3 -1
- package/lib/extensions/ApiGatewayExtension.js +1 -1
- package/lib/extensions/ApplicationLoadBalancerExtension.js +1 -1
- package/lib/extensions/ApplicationLoadBalancerExtensionV2.js +1 -1
- package/lib/extensions/CloudMapExtension.js +1 -1
- package/lib/extensions/DeactivatableServiceExtension.d.ts +10 -0
- package/lib/extensions/DeactivatableServiceExtension.js +32 -0
- package/lib/extensions/DocumentDbAccessExtension.js +1 -1
- package/lib/extensions/DomainEventMessagingExtension.js +1 -1
- package/lib/extensions/ExtraContainerExtension.js +1 -1
- package/lib/extensions/HTTPApiExtension.js +1 -1
- package/lib/extensions/LogExtension.js +1 -1
- package/lib/extensions/ModifyContainerDefinitionExtension.js +1 -1
- package/lib/extensions/ModifyTaskDefinitionExtension.js +1 -1
- package/lib/extensions/OpenTelemetryExtension.js +1 -1
- package/lib/extensions/PostgresDbAccessExtension.js +1 -1
- package/lib/extensions/SharedVolumeExtension.js +1 -1
- package/lib/extensions/TcpKeepAliveExtension.js +1 -1
- package/lib/extensions/index.d.ts +1 -0
- package/lib/extensions/index.js +2 -1
- package/lib/platform/ApiGateway.js +1 -1
- package/lib/platform/ApiGatewayV2.js +1 -1
- package/lib/platform/ApiUserPoolClient.js +1 -1
- package/lib/platform/ApplicationLoadBalancer.js +1 -1
- package/lib/platform/ApplicationLoadBalancerV2.js +1 -1
- package/lib/platform/ApplicationUserPoolClient.js +1 -1
- package/lib/platform/CognitoUserPool.js +1 -1
- package/lib/platform/DefaultUserPoolClients.js +1 -1
- package/lib/platform/DocumentDB.js +1 -1
- package/lib/platform/PrivateDnsNamespace.js +1 -1
- package/lib/platform/ResourceServer.js +1 -1
- package/lib/platform/Vpc.js +1 -1
- package/lib/utils/configFileParsing.d.ts +7 -0
- package/lib/utils/configFileParsing.js +31 -2
- package/lib/utils/deactivatedConstruct.d.ts +6 -0
- package/lib/utils/deactivatedConstruct.js +25 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +2 -1
- package/package.json +2 -1
- package/rfcs/001-api-gateway.md +28 -22
- package/rfcs/002-developer-stacks.md +268 -0
package/API.md
CHANGED
|
@@ -1066,6 +1066,107 @@ The tree node.
|
|
|
1066
1066
|
---
|
|
1067
1067
|
|
|
1068
1068
|
|
|
1069
|
+
### EventPipe <a name="EventPipe" id="@btc-embedded/cdk-extensions.EventPipe"></a>
|
|
1070
|
+
|
|
1071
|
+
A wrapper for the L1 event pipe with the ability to deactivate it within the stack.
|
|
1072
|
+
|
|
1073
|
+
#### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.EventPipe.Initializer"></a>
|
|
1074
|
+
|
|
1075
|
+
```typescript
|
|
1076
|
+
import { EventPipe } from '@btc-embedded/cdk-extensions'
|
|
1077
|
+
|
|
1078
|
+
new EventPipe(scope: Construct, id: string, props: EventPipeProps)
|
|
1079
|
+
```
|
|
1080
|
+
|
|
1081
|
+
| **Name** | **Type** | **Description** |
|
|
1082
|
+
| --- | --- | --- |
|
|
1083
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipe.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
1084
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipe.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
1085
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipe.Initializer.parameter.props">props</a></code> | <code><a href="#@btc-embedded/cdk-extensions.EventPipeProps">EventPipeProps</a></code> | *No description.* |
|
|
1086
|
+
|
|
1087
|
+
---
|
|
1088
|
+
|
|
1089
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.EventPipe.Initializer.parameter.scope"></a>
|
|
1090
|
+
|
|
1091
|
+
- *Type:* constructs.Construct
|
|
1092
|
+
|
|
1093
|
+
---
|
|
1094
|
+
|
|
1095
|
+
##### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.EventPipe.Initializer.parameter.id"></a>
|
|
1096
|
+
|
|
1097
|
+
- *Type:* string
|
|
1098
|
+
|
|
1099
|
+
---
|
|
1100
|
+
|
|
1101
|
+
##### `props`<sup>Required</sup> <a name="props" id="@btc-embedded/cdk-extensions.EventPipe.Initializer.parameter.props"></a>
|
|
1102
|
+
|
|
1103
|
+
- *Type:* <a href="#@btc-embedded/cdk-extensions.EventPipeProps">EventPipeProps</a>
|
|
1104
|
+
|
|
1105
|
+
---
|
|
1106
|
+
|
|
1107
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
1108
|
+
|
|
1109
|
+
| **Name** | **Description** |
|
|
1110
|
+
| --- | --- |
|
|
1111
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipe.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
1112
|
+
|
|
1113
|
+
---
|
|
1114
|
+
|
|
1115
|
+
##### `toString` <a name="toString" id="@btc-embedded/cdk-extensions.EventPipe.toString"></a>
|
|
1116
|
+
|
|
1117
|
+
```typescript
|
|
1118
|
+
public toString(): string
|
|
1119
|
+
```
|
|
1120
|
+
|
|
1121
|
+
Returns a string representation of this construct.
|
|
1122
|
+
|
|
1123
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
1124
|
+
|
|
1125
|
+
| **Name** | **Description** |
|
|
1126
|
+
| --- | --- |
|
|
1127
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipe.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
1128
|
+
|
|
1129
|
+
---
|
|
1130
|
+
|
|
1131
|
+
##### ~~`isConstruct`~~ <a name="isConstruct" id="@btc-embedded/cdk-extensions.EventPipe.isConstruct"></a>
|
|
1132
|
+
|
|
1133
|
+
```typescript
|
|
1134
|
+
import { EventPipe } from '@btc-embedded/cdk-extensions'
|
|
1135
|
+
|
|
1136
|
+
EventPipe.isConstruct(x: any)
|
|
1137
|
+
```
|
|
1138
|
+
|
|
1139
|
+
Checks if `x` is a construct.
|
|
1140
|
+
|
|
1141
|
+
###### `x`<sup>Required</sup> <a name="x" id="@btc-embedded/cdk-extensions.EventPipe.isConstruct.parameter.x"></a>
|
|
1142
|
+
|
|
1143
|
+
- *Type:* any
|
|
1144
|
+
|
|
1145
|
+
Any object.
|
|
1146
|
+
|
|
1147
|
+
---
|
|
1148
|
+
|
|
1149
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1150
|
+
|
|
1151
|
+
| **Name** | **Type** | **Description** |
|
|
1152
|
+
| --- | --- | --- |
|
|
1153
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipe.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
1154
|
+
|
|
1155
|
+
---
|
|
1156
|
+
|
|
1157
|
+
##### `node`<sup>Required</sup> <a name="node" id="@btc-embedded/cdk-extensions.EventPipe.property.node"></a>
|
|
1158
|
+
|
|
1159
|
+
```typescript
|
|
1160
|
+
public readonly node: Node;
|
|
1161
|
+
```
|
|
1162
|
+
|
|
1163
|
+
- *Type:* constructs.Node
|
|
1164
|
+
|
|
1165
|
+
The tree node.
|
|
1166
|
+
|
|
1167
|
+
---
|
|
1168
|
+
|
|
1169
|
+
|
|
1069
1170
|
### PrivateDnsNamespace <a name="PrivateDnsNamespace" id="@btc-embedded/cdk-extensions.PrivateDnsNamespace"></a>
|
|
1070
1171
|
|
|
1071
1172
|
#### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.PrivateDnsNamespace.Initializer"></a>
|
|
@@ -1220,83 +1321,1219 @@ new ResourceServer(scope: Construct, id: string, props: ResourceServerProps)
|
|
|
1220
1321
|
|
|
1221
1322
|
---
|
|
1222
1323
|
|
|
1223
|
-
#### Methods <a name="Methods" id="Methods"></a>
|
|
1324
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
1325
|
+
|
|
1326
|
+
| **Name** | **Description** |
|
|
1327
|
+
| --- | --- |
|
|
1328
|
+
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
1329
|
+
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.createOAuthScopes">createOAuthScopes</a></code> | *No description.* |
|
|
1330
|
+
|
|
1331
|
+
---
|
|
1332
|
+
|
|
1333
|
+
##### `toString` <a name="toString" id="@btc-embedded/cdk-extensions.ResourceServer.toString"></a>
|
|
1334
|
+
|
|
1335
|
+
```typescript
|
|
1336
|
+
public toString(): string
|
|
1337
|
+
```
|
|
1338
|
+
|
|
1339
|
+
Returns a string representation of this construct.
|
|
1340
|
+
|
|
1341
|
+
##### `createOAuthScopes` <a name="createOAuthScopes" id="@btc-embedded/cdk-extensions.ResourceServer.createOAuthScopes"></a>
|
|
1342
|
+
|
|
1343
|
+
```typescript
|
|
1344
|
+
public createOAuthScopes(): OAuthScope[]
|
|
1345
|
+
```
|
|
1346
|
+
|
|
1347
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
1348
|
+
|
|
1349
|
+
| **Name** | **Description** |
|
|
1350
|
+
| --- | --- |
|
|
1351
|
+
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
1352
|
+
|
|
1353
|
+
---
|
|
1354
|
+
|
|
1355
|
+
##### ~~`isConstruct`~~ <a name="isConstruct" id="@btc-embedded/cdk-extensions.ResourceServer.isConstruct"></a>
|
|
1356
|
+
|
|
1357
|
+
```typescript
|
|
1358
|
+
import { ResourceServer } from '@btc-embedded/cdk-extensions'
|
|
1359
|
+
|
|
1360
|
+
ResourceServer.isConstruct(x: any)
|
|
1361
|
+
```
|
|
1362
|
+
|
|
1363
|
+
Checks if `x` is a construct.
|
|
1364
|
+
|
|
1365
|
+
###### `x`<sup>Required</sup> <a name="x" id="@btc-embedded/cdk-extensions.ResourceServer.isConstruct.parameter.x"></a>
|
|
1366
|
+
|
|
1367
|
+
- *Type:* any
|
|
1368
|
+
|
|
1369
|
+
Any object.
|
|
1370
|
+
|
|
1371
|
+
---
|
|
1372
|
+
|
|
1373
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
1374
|
+
|
|
1375
|
+
| **Name** | **Type** | **Description** |
|
|
1376
|
+
| --- | --- | --- |
|
|
1377
|
+
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
1378
|
+
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.property.resourceServerInstance">resourceServerInstance</a></code> | <code>aws-cdk-lib.aws_cognito.IUserPoolResourceServer</code> | *No description.* |
|
|
1379
|
+
|
|
1380
|
+
---
|
|
1381
|
+
|
|
1382
|
+
##### `node`<sup>Required</sup> <a name="node" id="@btc-embedded/cdk-extensions.ResourceServer.property.node"></a>
|
|
1383
|
+
|
|
1384
|
+
```typescript
|
|
1385
|
+
public readonly node: Node;
|
|
1386
|
+
```
|
|
1387
|
+
|
|
1388
|
+
- *Type:* constructs.Node
|
|
1389
|
+
|
|
1390
|
+
The tree node.
|
|
1391
|
+
|
|
1392
|
+
---
|
|
1393
|
+
|
|
1394
|
+
##### `resourceServerInstance`<sup>Required</sup> <a name="resourceServerInstance" id="@btc-embedded/cdk-extensions.ResourceServer.property.resourceServerInstance"></a>
|
|
1395
|
+
|
|
1396
|
+
```typescript
|
|
1397
|
+
public readonly resourceServerInstance: IUserPoolResourceServer;
|
|
1398
|
+
```
|
|
1399
|
+
|
|
1400
|
+
- *Type:* aws-cdk-lib.aws_cognito.IUserPoolResourceServer
|
|
1401
|
+
|
|
1402
|
+
---
|
|
1403
|
+
|
|
1404
|
+
|
|
1405
|
+
### S3Bucket <a name="S3Bucket" id="@btc-embedded/cdk-extensions.S3Bucket"></a>
|
|
1406
|
+
|
|
1407
|
+
Wrapper for the {@link Bucket} constructs that adds additional properties, if a developer stack is detected.
|
|
1408
|
+
|
|
1409
|
+
Will cause files to expire after tree days and allows to delete the
|
|
1410
|
+
bucket and all its contents, if the stack is deleted.
|
|
1411
|
+
|
|
1412
|
+
#### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.S3Bucket.Initializer"></a>
|
|
1413
|
+
|
|
1414
|
+
```typescript
|
|
1415
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
1416
|
+
|
|
1417
|
+
new S3Bucket(scope: Construct, id: string, props?: BucketProps)
|
|
1418
|
+
```
|
|
1419
|
+
|
|
1420
|
+
| **Name** | **Type** | **Description** |
|
|
1421
|
+
| --- | --- | --- |
|
|
1422
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.Initializer.parameter.scope">scope</a></code> | <code>constructs.Construct</code> | *No description.* |
|
|
1423
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
1424
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.Initializer.parameter.props">props</a></code> | <code>aws-cdk-lib.aws_s3.BucketProps</code> | *No description.* |
|
|
1425
|
+
|
|
1426
|
+
---
|
|
1427
|
+
|
|
1428
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.S3Bucket.Initializer.parameter.scope"></a>
|
|
1429
|
+
|
|
1430
|
+
- *Type:* constructs.Construct
|
|
1431
|
+
|
|
1432
|
+
---
|
|
1433
|
+
|
|
1434
|
+
##### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.Initializer.parameter.id"></a>
|
|
1435
|
+
|
|
1436
|
+
- *Type:* string
|
|
1437
|
+
|
|
1438
|
+
---
|
|
1439
|
+
|
|
1440
|
+
##### `props`<sup>Optional</sup> <a name="props" id="@btc-embedded/cdk-extensions.S3Bucket.Initializer.parameter.props"></a>
|
|
1441
|
+
|
|
1442
|
+
- *Type:* aws-cdk-lib.aws_s3.BucketProps
|
|
1443
|
+
|
|
1444
|
+
---
|
|
1445
|
+
|
|
1446
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
1447
|
+
|
|
1448
|
+
| **Name** | **Description** |
|
|
1449
|
+
| --- | --- |
|
|
1450
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
1451
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.applyRemovalPolicy">applyRemovalPolicy</a></code> | Apply the given removal policy to this resource. |
|
|
1452
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addEventNotification">addEventNotification</a></code> | Adds a bucket notification event destination. |
|
|
1453
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addObjectCreatedNotification">addObjectCreatedNotification</a></code> | Subscribes a destination to receive notifications when an object is created in the bucket. |
|
|
1454
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addObjectRemovedNotification">addObjectRemovedNotification</a></code> | Subscribes a destination to receive notifications when an object is removed from the bucket. |
|
|
1455
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addToResourcePolicy">addToResourcePolicy</a></code> | Adds a statement to the resource policy for a principal (i.e. account/role/service) to perform actions on this bucket and/or its contents. Use `bucketArn` and `arnForObjects(keys)` to obtain ARNs for this bucket or objects. |
|
|
1456
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.arnForObjects">arnForObjects</a></code> | Returns an ARN that represents all objects within the bucket that match the key pattern specified. |
|
|
1457
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.enableEventBridgeNotification">enableEventBridgeNotification</a></code> | Enables event bridge notification, causing all events below to be sent to EventBridge:. |
|
|
1458
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantDelete">grantDelete</a></code> | Grants s3:DeleteObject* permission to an IAM principal for objects in this bucket. |
|
|
1459
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantPublicAccess">grantPublicAccess</a></code> | Allows unrestricted access to objects from this bucket. |
|
|
1460
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantPut">grantPut</a></code> | Grants s3:PutObject* and s3:Abort* permissions for this bucket to an IAM principal. |
|
|
1461
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantPutAcl">grantPutAcl</a></code> | Grant the given IAM identity permissions to modify the ACLs of objects in the given Bucket. |
|
|
1462
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantRead">grantRead</a></code> | Grant read permissions for this bucket and it's contents to an IAM principal (Role/Group/User). |
|
|
1463
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantReadWrite">grantReadWrite</a></code> | Grants read/write permissions for this bucket and it's contents to an IAM principal (Role/Group/User). |
|
|
1464
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.grantWrite">grantWrite</a></code> | Grant write permissions to this bucket to an IAM principal. |
|
|
1465
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailEvent">onCloudTrailEvent</a></code> | Define a CloudWatch event that triggers when something happens to this repository. |
|
|
1466
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailPutObject">onCloudTrailPutObject</a></code> | Defines an AWS CloudWatch event that triggers when an object is uploaded to the specified paths (keys) in this bucket using the PutObject API call. |
|
|
1467
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailWriteObject">onCloudTrailWriteObject</a></code> | Defines an AWS CloudWatch event that triggers when an object at the specified paths (keys) in this bucket are written to. |
|
|
1468
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.s3UrlForObject">s3UrlForObject</a></code> | The S3 URL of an S3 object. For example:. |
|
|
1469
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.transferAccelerationUrlForObject">transferAccelerationUrlForObject</a></code> | The https Transfer Acceleration URL of an S3 object. |
|
|
1470
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.urlForObject">urlForObject</a></code> | The https URL of an S3 object. Specify `regional: false` at the options for non-regional URLs. For example:. |
|
|
1471
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.virtualHostedUrlForObject">virtualHostedUrlForObject</a></code> | The virtual hosted-style URL of an S3 object. Specify `regional: false` at the options for non-regional URL. For example:. |
|
|
1472
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addCorsRule">addCorsRule</a></code> | Adds a cross-origin access configuration for objects in an Amazon S3 bucket. |
|
|
1473
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addInventory">addInventory</a></code> | Add an inventory configuration. |
|
|
1474
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addLifecycleRule">addLifecycleRule</a></code> | Add a lifecycle rule to the bucket. |
|
|
1475
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.addMetric">addMetric</a></code> | Adds a metrics configuration for the CloudWatch request metrics from the bucket. |
|
|
1476
|
+
|
|
1477
|
+
---
|
|
1478
|
+
|
|
1479
|
+
##### `toString` <a name="toString" id="@btc-embedded/cdk-extensions.S3Bucket.toString"></a>
|
|
1480
|
+
|
|
1481
|
+
```typescript
|
|
1482
|
+
public toString(): string
|
|
1483
|
+
```
|
|
1484
|
+
|
|
1485
|
+
Returns a string representation of this construct.
|
|
1486
|
+
|
|
1487
|
+
##### `applyRemovalPolicy` <a name="applyRemovalPolicy" id="@btc-embedded/cdk-extensions.S3Bucket.applyRemovalPolicy"></a>
|
|
1488
|
+
|
|
1489
|
+
```typescript
|
|
1490
|
+
public applyRemovalPolicy(policy: RemovalPolicy): void
|
|
1491
|
+
```
|
|
1492
|
+
|
|
1493
|
+
Apply the given removal policy to this resource.
|
|
1494
|
+
|
|
1495
|
+
The Removal Policy controls what happens to this resource when it stops
|
|
1496
|
+
being managed by CloudFormation, either because you've removed it from the
|
|
1497
|
+
CDK application or because you've made a change that requires the resource
|
|
1498
|
+
to be replaced.
|
|
1499
|
+
|
|
1500
|
+
The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
|
|
1501
|
+
account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
|
|
1502
|
+
|
|
1503
|
+
###### `policy`<sup>Required</sup> <a name="policy" id="@btc-embedded/cdk-extensions.S3Bucket.applyRemovalPolicy.parameter.policy"></a>
|
|
1504
|
+
|
|
1505
|
+
- *Type:* aws-cdk-lib.RemovalPolicy
|
|
1506
|
+
|
|
1507
|
+
---
|
|
1508
|
+
|
|
1509
|
+
##### `addEventNotification` <a name="addEventNotification" id="@btc-embedded/cdk-extensions.S3Bucket.addEventNotification"></a>
|
|
1510
|
+
|
|
1511
|
+
```typescript
|
|
1512
|
+
public addEventNotification(event: EventType, dest: IBucketNotificationDestination, filters: ...NotificationKeyFilter[]): void
|
|
1513
|
+
```
|
|
1514
|
+
|
|
1515
|
+
Adds a bucket notification event destination.
|
|
1516
|
+
|
|
1517
|
+
> [https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
|
|
1518
|
+
|
|
1519
|
+
*Example*
|
|
1520
|
+
|
|
1521
|
+
```typescript
|
|
1522
|
+
declare const myLambda: lambda.Function;
|
|
1523
|
+
const bucket = new s3.Bucket(this, 'MyBucket');
|
|
1524
|
+
bucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.LambdaDestination(myLambda), {prefix: 'home/myusername/*'});
|
|
1525
|
+
```
|
|
1526
|
+
|
|
1527
|
+
|
|
1528
|
+
###### `event`<sup>Required</sup> <a name="event" id="@btc-embedded/cdk-extensions.S3Bucket.addEventNotification.parameter.event"></a>
|
|
1529
|
+
|
|
1530
|
+
- *Type:* aws-cdk-lib.aws_s3.EventType
|
|
1531
|
+
|
|
1532
|
+
The event to trigger the notification.
|
|
1533
|
+
|
|
1534
|
+
---
|
|
1535
|
+
|
|
1536
|
+
###### `dest`<sup>Required</sup> <a name="dest" id="@btc-embedded/cdk-extensions.S3Bucket.addEventNotification.parameter.dest"></a>
|
|
1537
|
+
|
|
1538
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucketNotificationDestination
|
|
1539
|
+
|
|
1540
|
+
The notification destination (Lambda, SNS Topic or SQS Queue).
|
|
1541
|
+
|
|
1542
|
+
---
|
|
1543
|
+
|
|
1544
|
+
###### `filters`<sup>Required</sup> <a name="filters" id="@btc-embedded/cdk-extensions.S3Bucket.addEventNotification.parameter.filters"></a>
|
|
1545
|
+
|
|
1546
|
+
- *Type:* ...aws-cdk-lib.aws_s3.NotificationKeyFilter[]
|
|
1547
|
+
|
|
1548
|
+
S3 object key filter rules to determine which objects trigger this event.
|
|
1549
|
+
|
|
1550
|
+
Each filter must include a `prefix` and/or `suffix`
|
|
1551
|
+
that will be matched against the s3 object key. Refer to the S3 Developer Guide
|
|
1552
|
+
for details about allowed filter rules.
|
|
1553
|
+
|
|
1554
|
+
---
|
|
1555
|
+
|
|
1556
|
+
##### `addObjectCreatedNotification` <a name="addObjectCreatedNotification" id="@btc-embedded/cdk-extensions.S3Bucket.addObjectCreatedNotification"></a>
|
|
1557
|
+
|
|
1558
|
+
```typescript
|
|
1559
|
+
public addObjectCreatedNotification(dest: IBucketNotificationDestination, filters: ...NotificationKeyFilter[]): void
|
|
1560
|
+
```
|
|
1561
|
+
|
|
1562
|
+
Subscribes a destination to receive notifications when an object is created in the bucket.
|
|
1563
|
+
|
|
1564
|
+
This is identical to calling
|
|
1565
|
+
`onEvent(EventType.OBJECT_CREATED)`.
|
|
1566
|
+
|
|
1567
|
+
###### `dest`<sup>Required</sup> <a name="dest" id="@btc-embedded/cdk-extensions.S3Bucket.addObjectCreatedNotification.parameter.dest"></a>
|
|
1568
|
+
|
|
1569
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucketNotificationDestination
|
|
1570
|
+
|
|
1571
|
+
The notification destination (see onEvent).
|
|
1572
|
+
|
|
1573
|
+
---
|
|
1574
|
+
|
|
1575
|
+
###### `filters`<sup>Required</sup> <a name="filters" id="@btc-embedded/cdk-extensions.S3Bucket.addObjectCreatedNotification.parameter.filters"></a>
|
|
1576
|
+
|
|
1577
|
+
- *Type:* ...aws-cdk-lib.aws_s3.NotificationKeyFilter[]
|
|
1578
|
+
|
|
1579
|
+
Filters (see onEvent).
|
|
1580
|
+
|
|
1581
|
+
---
|
|
1582
|
+
|
|
1583
|
+
##### `addObjectRemovedNotification` <a name="addObjectRemovedNotification" id="@btc-embedded/cdk-extensions.S3Bucket.addObjectRemovedNotification"></a>
|
|
1584
|
+
|
|
1585
|
+
```typescript
|
|
1586
|
+
public addObjectRemovedNotification(dest: IBucketNotificationDestination, filters: ...NotificationKeyFilter[]): void
|
|
1587
|
+
```
|
|
1588
|
+
|
|
1589
|
+
Subscribes a destination to receive notifications when an object is removed from the bucket.
|
|
1590
|
+
|
|
1591
|
+
This is identical to calling
|
|
1592
|
+
`onEvent(EventType.OBJECT_REMOVED)`.
|
|
1593
|
+
|
|
1594
|
+
###### `dest`<sup>Required</sup> <a name="dest" id="@btc-embedded/cdk-extensions.S3Bucket.addObjectRemovedNotification.parameter.dest"></a>
|
|
1595
|
+
|
|
1596
|
+
- *Type:* aws-cdk-lib.aws_s3.IBucketNotificationDestination
|
|
1597
|
+
|
|
1598
|
+
The notification destination (see onEvent).
|
|
1599
|
+
|
|
1600
|
+
---
|
|
1601
|
+
|
|
1602
|
+
###### `filters`<sup>Required</sup> <a name="filters" id="@btc-embedded/cdk-extensions.S3Bucket.addObjectRemovedNotification.parameter.filters"></a>
|
|
1603
|
+
|
|
1604
|
+
- *Type:* ...aws-cdk-lib.aws_s3.NotificationKeyFilter[]
|
|
1605
|
+
|
|
1606
|
+
Filters (see onEvent).
|
|
1607
|
+
|
|
1608
|
+
---
|
|
1609
|
+
|
|
1610
|
+
##### `addToResourcePolicy` <a name="addToResourcePolicy" id="@btc-embedded/cdk-extensions.S3Bucket.addToResourcePolicy"></a>
|
|
1611
|
+
|
|
1612
|
+
```typescript
|
|
1613
|
+
public addToResourcePolicy(permission: PolicyStatement): AddToResourcePolicyResult
|
|
1614
|
+
```
|
|
1615
|
+
|
|
1616
|
+
Adds a statement to the resource policy for a principal (i.e. account/role/service) to perform actions on this bucket and/or its contents. Use `bucketArn` and `arnForObjects(keys)` to obtain ARNs for this bucket or objects.
|
|
1617
|
+
|
|
1618
|
+
Note that the policy statement may or may not be added to the policy.
|
|
1619
|
+
For example, when an `IBucket` is created from an existing bucket,
|
|
1620
|
+
it's not possible to tell whether the bucket already has a policy
|
|
1621
|
+
attached, let alone to re-use that policy to add more statements to it.
|
|
1622
|
+
So it's safest to do nothing in these cases.
|
|
1623
|
+
|
|
1624
|
+
###### `permission`<sup>Required</sup> <a name="permission" id="@btc-embedded/cdk-extensions.S3Bucket.addToResourcePolicy.parameter.permission"></a>
|
|
1625
|
+
|
|
1626
|
+
- *Type:* aws-cdk-lib.aws_iam.PolicyStatement
|
|
1627
|
+
|
|
1628
|
+
the policy statement to be added to the bucket's policy.
|
|
1629
|
+
|
|
1630
|
+
---
|
|
1631
|
+
|
|
1632
|
+
##### `arnForObjects` <a name="arnForObjects" id="@btc-embedded/cdk-extensions.S3Bucket.arnForObjects"></a>
|
|
1633
|
+
|
|
1634
|
+
```typescript
|
|
1635
|
+
public arnForObjects(keyPattern: string): string
|
|
1636
|
+
```
|
|
1637
|
+
|
|
1638
|
+
Returns an ARN that represents all objects within the bucket that match the key pattern specified.
|
|
1639
|
+
|
|
1640
|
+
To represent all keys, specify ``"*"``.
|
|
1641
|
+
|
|
1642
|
+
If you need to specify a keyPattern with multiple components, concatenate them into a single string, e.g.:
|
|
1643
|
+
|
|
1644
|
+
arnForObjects(`home/${team}/${user}/*`)
|
|
1645
|
+
|
|
1646
|
+
###### `keyPattern`<sup>Required</sup> <a name="keyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.arnForObjects.parameter.keyPattern"></a>
|
|
1647
|
+
|
|
1648
|
+
- *Type:* string
|
|
1649
|
+
|
|
1650
|
+
---
|
|
1651
|
+
|
|
1652
|
+
##### `enableEventBridgeNotification` <a name="enableEventBridgeNotification" id="@btc-embedded/cdk-extensions.S3Bucket.enableEventBridgeNotification"></a>
|
|
1653
|
+
|
|
1654
|
+
```typescript
|
|
1655
|
+
public enableEventBridgeNotification(): void
|
|
1656
|
+
```
|
|
1657
|
+
|
|
1658
|
+
Enables event bridge notification, causing all events below to be sent to EventBridge:.
|
|
1659
|
+
|
|
1660
|
+
Object Deleted (DeleteObject)
|
|
1661
|
+
- Object Deleted (Lifecycle expiration)
|
|
1662
|
+
- Object Restore Initiated
|
|
1663
|
+
- Object Restore Completed
|
|
1664
|
+
- Object Restore Expired
|
|
1665
|
+
- Object Storage Class Changed
|
|
1666
|
+
- Object Access Tier Changed
|
|
1667
|
+
- Object ACL Updated
|
|
1668
|
+
- Object Tags Added
|
|
1669
|
+
- Object Tags Deleted
|
|
1670
|
+
|
|
1671
|
+
##### `grantDelete` <a name="grantDelete" id="@btc-embedded/cdk-extensions.S3Bucket.grantDelete"></a>
|
|
1672
|
+
|
|
1673
|
+
```typescript
|
|
1674
|
+
public grantDelete(identity: IGrantable, objectsKeyPattern?: any): Grant
|
|
1675
|
+
```
|
|
1676
|
+
|
|
1677
|
+
Grants s3:DeleteObject* permission to an IAM principal for objects in this bucket.
|
|
1678
|
+
|
|
1679
|
+
###### `identity`<sup>Required</sup> <a name="identity" id="@btc-embedded/cdk-extensions.S3Bucket.grantDelete.parameter.identity"></a>
|
|
1680
|
+
|
|
1681
|
+
- *Type:* aws-cdk-lib.aws_iam.IGrantable
|
|
1682
|
+
|
|
1683
|
+
The principal.
|
|
1684
|
+
|
|
1685
|
+
---
|
|
1686
|
+
|
|
1687
|
+
###### `objectsKeyPattern`<sup>Optional</sup> <a name="objectsKeyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.grantDelete.parameter.objectsKeyPattern"></a>
|
|
1688
|
+
|
|
1689
|
+
- *Type:* any
|
|
1690
|
+
|
|
1691
|
+
Restrict the permission to a certain key pattern (default '*').
|
|
1692
|
+
|
|
1693
|
+
Parameter type is `any` but `string` should be passed in.
|
|
1694
|
+
|
|
1695
|
+
---
|
|
1696
|
+
|
|
1697
|
+
##### `grantPublicAccess` <a name="grantPublicAccess" id="@btc-embedded/cdk-extensions.S3Bucket.grantPublicAccess"></a>
|
|
1698
|
+
|
|
1699
|
+
```typescript
|
|
1700
|
+
public grantPublicAccess(allowedActions: ...string[], keyPrefix?: string): Grant
|
|
1701
|
+
```
|
|
1702
|
+
|
|
1703
|
+
Allows unrestricted access to objects from this bucket.
|
|
1704
|
+
|
|
1705
|
+
IMPORTANT: This permission allows anyone to perform actions on S3 objects
|
|
1706
|
+
in this bucket, which is useful for when you configure your bucket as a
|
|
1707
|
+
website and want everyone to be able to read objects in the bucket without
|
|
1708
|
+
needing to authenticate.
|
|
1709
|
+
|
|
1710
|
+
Without arguments, this method will grant read ("s3:GetObject") access to
|
|
1711
|
+
all objects ("*") in the bucket.
|
|
1712
|
+
|
|
1713
|
+
The method returns the `iam.Grant` object, which can then be modified
|
|
1714
|
+
as needed. For example, you can add a condition that will restrict access only
|
|
1715
|
+
to an IPv4 range like this:
|
|
1716
|
+
|
|
1717
|
+
const grant = bucket.grantPublicAccess();
|
|
1718
|
+
grant.resourceStatement!.addCondition(‘IpAddress’, { “aws:SourceIp”: “54.240.143.0/24” });
|
|
1719
|
+
|
|
1720
|
+
Note that if this `IBucket` refers to an existing bucket, possibly not
|
|
1721
|
+
managed by CloudFormation, this method will have no effect, since it's
|
|
1722
|
+
impossible to modify the policy of an existing bucket.
|
|
1723
|
+
|
|
1724
|
+
###### `allowedActions`<sup>Required</sup> <a name="allowedActions" id="@btc-embedded/cdk-extensions.S3Bucket.grantPublicAccess.parameter.allowedActions"></a>
|
|
1725
|
+
|
|
1726
|
+
- *Type:* ...string[]
|
|
1727
|
+
|
|
1728
|
+
the set of S3 actions to allow.
|
|
1729
|
+
|
|
1730
|
+
Default is "s3:GetObject".
|
|
1731
|
+
|
|
1732
|
+
---
|
|
1733
|
+
|
|
1734
|
+
###### `keyPrefix`<sup>Optional</sup> <a name="keyPrefix" id="@btc-embedded/cdk-extensions.S3Bucket.grantPublicAccess.parameter.keyPrefix"></a>
|
|
1735
|
+
|
|
1736
|
+
- *Type:* string
|
|
1737
|
+
|
|
1738
|
+
the prefix of S3 object keys (e.g. `home/*`). Default is "*".
|
|
1739
|
+
|
|
1740
|
+
---
|
|
1741
|
+
|
|
1742
|
+
##### `grantPut` <a name="grantPut" id="@btc-embedded/cdk-extensions.S3Bucket.grantPut"></a>
|
|
1743
|
+
|
|
1744
|
+
```typescript
|
|
1745
|
+
public grantPut(identity: IGrantable, objectsKeyPattern?: any): Grant
|
|
1746
|
+
```
|
|
1747
|
+
|
|
1748
|
+
Grants s3:PutObject* and s3:Abort* permissions for this bucket to an IAM principal.
|
|
1749
|
+
|
|
1750
|
+
If encryption is used, permission to use the key to encrypt the contents
|
|
1751
|
+
of written files will also be granted to the same principal.
|
|
1752
|
+
|
|
1753
|
+
###### `identity`<sup>Required</sup> <a name="identity" id="@btc-embedded/cdk-extensions.S3Bucket.grantPut.parameter.identity"></a>
|
|
1754
|
+
|
|
1755
|
+
- *Type:* aws-cdk-lib.aws_iam.IGrantable
|
|
1756
|
+
|
|
1757
|
+
The principal.
|
|
1758
|
+
|
|
1759
|
+
---
|
|
1760
|
+
|
|
1761
|
+
###### `objectsKeyPattern`<sup>Optional</sup> <a name="objectsKeyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.grantPut.parameter.objectsKeyPattern"></a>
|
|
1762
|
+
|
|
1763
|
+
- *Type:* any
|
|
1764
|
+
|
|
1765
|
+
Restrict the permission to a certain key pattern (default '*').
|
|
1766
|
+
|
|
1767
|
+
Parameter type is `any` but `string` should be passed in.
|
|
1768
|
+
|
|
1769
|
+
---
|
|
1770
|
+
|
|
1771
|
+
##### `grantPutAcl` <a name="grantPutAcl" id="@btc-embedded/cdk-extensions.S3Bucket.grantPutAcl"></a>
|
|
1772
|
+
|
|
1773
|
+
```typescript
|
|
1774
|
+
public grantPutAcl(identity: IGrantable, objectsKeyPattern?: string): Grant
|
|
1775
|
+
```
|
|
1776
|
+
|
|
1777
|
+
Grant the given IAM identity permissions to modify the ACLs of objects in the given Bucket.
|
|
1778
|
+
|
|
1779
|
+
If your application has the '@aws-cdk/aws-s3:grantWriteWithoutAcl' feature flag set,
|
|
1780
|
+
calling `grantWrite` or `grantReadWrite` no longer grants permissions to modify the ACLs of the objects;
|
|
1781
|
+
in this case, if you need to modify object ACLs, call this method explicitly.
|
|
1782
|
+
|
|
1783
|
+
###### `identity`<sup>Required</sup> <a name="identity" id="@btc-embedded/cdk-extensions.S3Bucket.grantPutAcl.parameter.identity"></a>
|
|
1784
|
+
|
|
1785
|
+
- *Type:* aws-cdk-lib.aws_iam.IGrantable
|
|
1786
|
+
|
|
1787
|
+
---
|
|
1788
|
+
|
|
1789
|
+
###### `objectsKeyPattern`<sup>Optional</sup> <a name="objectsKeyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.grantPutAcl.parameter.objectsKeyPattern"></a>
|
|
1790
|
+
|
|
1791
|
+
- *Type:* string
|
|
1792
|
+
|
|
1793
|
+
---
|
|
1794
|
+
|
|
1795
|
+
##### `grantRead` <a name="grantRead" id="@btc-embedded/cdk-extensions.S3Bucket.grantRead"></a>
|
|
1796
|
+
|
|
1797
|
+
```typescript
|
|
1798
|
+
public grantRead(identity: IGrantable, objectsKeyPattern?: any): Grant
|
|
1799
|
+
```
|
|
1800
|
+
|
|
1801
|
+
Grant read permissions for this bucket and it's contents to an IAM principal (Role/Group/User).
|
|
1802
|
+
|
|
1803
|
+
If encryption is used, permission to use the key to decrypt the contents
|
|
1804
|
+
of the bucket will also be granted to the same principal.
|
|
1805
|
+
|
|
1806
|
+
###### `identity`<sup>Required</sup> <a name="identity" id="@btc-embedded/cdk-extensions.S3Bucket.grantRead.parameter.identity"></a>
|
|
1807
|
+
|
|
1808
|
+
- *Type:* aws-cdk-lib.aws_iam.IGrantable
|
|
1809
|
+
|
|
1810
|
+
The principal.
|
|
1811
|
+
|
|
1812
|
+
---
|
|
1813
|
+
|
|
1814
|
+
###### `objectsKeyPattern`<sup>Optional</sup> <a name="objectsKeyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.grantRead.parameter.objectsKeyPattern"></a>
|
|
1815
|
+
|
|
1816
|
+
- *Type:* any
|
|
1817
|
+
|
|
1818
|
+
Restrict the permission to a certain key pattern (default '*').
|
|
1819
|
+
|
|
1820
|
+
Parameter type is `any` but `string` should be passed in.
|
|
1821
|
+
|
|
1822
|
+
---
|
|
1823
|
+
|
|
1824
|
+
##### `grantReadWrite` <a name="grantReadWrite" id="@btc-embedded/cdk-extensions.S3Bucket.grantReadWrite"></a>
|
|
1825
|
+
|
|
1826
|
+
```typescript
|
|
1827
|
+
public grantReadWrite(identity: IGrantable, objectsKeyPattern?: any): Grant
|
|
1828
|
+
```
|
|
1829
|
+
|
|
1830
|
+
Grants read/write permissions for this bucket and it's contents to an IAM principal (Role/Group/User).
|
|
1831
|
+
|
|
1832
|
+
If an encryption key is used, permission to use the key for
|
|
1833
|
+
encrypt/decrypt will also be granted.
|
|
1834
|
+
|
|
1835
|
+
Before CDK version 1.85.0, this method granted the `s3:PutObject*` permission that included `s3:PutObjectAcl`,
|
|
1836
|
+
which could be used to grant read/write object access to IAM principals in other accounts.
|
|
1837
|
+
If you want to get rid of that behavior, update your CDK version to 1.85.0 or later,
|
|
1838
|
+
and make sure the `@aws-cdk/aws-s3:grantWriteWithoutAcl` feature flag is set to `true`
|
|
1839
|
+
in the `context` key of your cdk.json file.
|
|
1840
|
+
If you've already updated, but still need the principal to have permissions to modify the ACLs,
|
|
1841
|
+
use the `grantPutAcl` method.
|
|
1842
|
+
|
|
1843
|
+
###### `identity`<sup>Required</sup> <a name="identity" id="@btc-embedded/cdk-extensions.S3Bucket.grantReadWrite.parameter.identity"></a>
|
|
1844
|
+
|
|
1845
|
+
- *Type:* aws-cdk-lib.aws_iam.IGrantable
|
|
1846
|
+
|
|
1847
|
+
---
|
|
1848
|
+
|
|
1849
|
+
###### `objectsKeyPattern`<sup>Optional</sup> <a name="objectsKeyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.grantReadWrite.parameter.objectsKeyPattern"></a>
|
|
1850
|
+
|
|
1851
|
+
- *Type:* any
|
|
1852
|
+
|
|
1853
|
+
---
|
|
1854
|
+
|
|
1855
|
+
##### `grantWrite` <a name="grantWrite" id="@btc-embedded/cdk-extensions.S3Bucket.grantWrite"></a>
|
|
1856
|
+
|
|
1857
|
+
```typescript
|
|
1858
|
+
public grantWrite(identity: IGrantable, objectsKeyPattern?: any, allowedActionPatterns?: string[]): Grant
|
|
1859
|
+
```
|
|
1860
|
+
|
|
1861
|
+
Grant write permissions to this bucket to an IAM principal.
|
|
1862
|
+
|
|
1863
|
+
If encryption is used, permission to use the key to encrypt the contents
|
|
1864
|
+
of written files will also be granted to the same principal.
|
|
1865
|
+
|
|
1866
|
+
Before CDK version 1.85.0, this method granted the `s3:PutObject*` permission that included `s3:PutObjectAcl`,
|
|
1867
|
+
which could be used to grant read/write object access to IAM principals in other accounts.
|
|
1868
|
+
If you want to get rid of that behavior, update your CDK version to 1.85.0 or later,
|
|
1869
|
+
and make sure the `@aws-cdk/aws-s3:grantWriteWithoutAcl` feature flag is set to `true`
|
|
1870
|
+
in the `context` key of your cdk.json file.
|
|
1871
|
+
If you've already updated, but still need the principal to have permissions to modify the ACLs,
|
|
1872
|
+
use the `grantPutAcl` method.
|
|
1873
|
+
|
|
1874
|
+
###### `identity`<sup>Required</sup> <a name="identity" id="@btc-embedded/cdk-extensions.S3Bucket.grantWrite.parameter.identity"></a>
|
|
1875
|
+
|
|
1876
|
+
- *Type:* aws-cdk-lib.aws_iam.IGrantable
|
|
1877
|
+
|
|
1878
|
+
---
|
|
1879
|
+
|
|
1880
|
+
###### `objectsKeyPattern`<sup>Optional</sup> <a name="objectsKeyPattern" id="@btc-embedded/cdk-extensions.S3Bucket.grantWrite.parameter.objectsKeyPattern"></a>
|
|
1881
|
+
|
|
1882
|
+
- *Type:* any
|
|
1883
|
+
|
|
1884
|
+
---
|
|
1885
|
+
|
|
1886
|
+
###### `allowedActionPatterns`<sup>Optional</sup> <a name="allowedActionPatterns" id="@btc-embedded/cdk-extensions.S3Bucket.grantWrite.parameter.allowedActionPatterns"></a>
|
|
1887
|
+
|
|
1888
|
+
- *Type:* string[]
|
|
1889
|
+
|
|
1890
|
+
---
|
|
1891
|
+
|
|
1892
|
+
##### `onCloudTrailEvent` <a name="onCloudTrailEvent" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailEvent"></a>
|
|
1893
|
+
|
|
1894
|
+
```typescript
|
|
1895
|
+
public onCloudTrailEvent(id: string, options?: OnCloudTrailBucketEventOptions): Rule
|
|
1896
|
+
```
|
|
1897
|
+
|
|
1898
|
+
Define a CloudWatch event that triggers when something happens to this repository.
|
|
1899
|
+
|
|
1900
|
+
Requires that there exists at least one CloudTrail Trail in your account
|
|
1901
|
+
that captures the event. This method will not create the Trail.
|
|
1902
|
+
|
|
1903
|
+
###### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailEvent.parameter.id"></a>
|
|
1904
|
+
|
|
1905
|
+
- *Type:* string
|
|
1906
|
+
|
|
1907
|
+
The id of the rule.
|
|
1908
|
+
|
|
1909
|
+
---
|
|
1910
|
+
|
|
1911
|
+
###### `options`<sup>Optional</sup> <a name="options" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailEvent.parameter.options"></a>
|
|
1912
|
+
|
|
1913
|
+
- *Type:* aws-cdk-lib.aws_s3.OnCloudTrailBucketEventOptions
|
|
1914
|
+
|
|
1915
|
+
Options for adding the rule.
|
|
1916
|
+
|
|
1917
|
+
---
|
|
1918
|
+
|
|
1919
|
+
##### `onCloudTrailPutObject` <a name="onCloudTrailPutObject" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailPutObject"></a>
|
|
1920
|
+
|
|
1921
|
+
```typescript
|
|
1922
|
+
public onCloudTrailPutObject(id: string, options?: OnCloudTrailBucketEventOptions): Rule
|
|
1923
|
+
```
|
|
1924
|
+
|
|
1925
|
+
Defines an AWS CloudWatch event that triggers when an object is uploaded to the specified paths (keys) in this bucket using the PutObject API call.
|
|
1926
|
+
|
|
1927
|
+
Note that some tools like `aws s3 cp` will automatically use either
|
|
1928
|
+
PutObject or the multipart upload API depending on the file size,
|
|
1929
|
+
so using `onCloudTrailWriteObject` may be preferable.
|
|
1930
|
+
|
|
1931
|
+
Requires that there exists at least one CloudTrail Trail in your account
|
|
1932
|
+
that captures the event. This method will not create the Trail.
|
|
1933
|
+
|
|
1934
|
+
###### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailPutObject.parameter.id"></a>
|
|
1935
|
+
|
|
1936
|
+
- *Type:* string
|
|
1937
|
+
|
|
1938
|
+
The id of the rule.
|
|
1939
|
+
|
|
1940
|
+
---
|
|
1941
|
+
|
|
1942
|
+
###### `options`<sup>Optional</sup> <a name="options" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailPutObject.parameter.options"></a>
|
|
1943
|
+
|
|
1944
|
+
- *Type:* aws-cdk-lib.aws_s3.OnCloudTrailBucketEventOptions
|
|
1945
|
+
|
|
1946
|
+
Options for adding the rule.
|
|
1947
|
+
|
|
1948
|
+
---
|
|
1949
|
+
|
|
1950
|
+
##### `onCloudTrailWriteObject` <a name="onCloudTrailWriteObject" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailWriteObject"></a>
|
|
1951
|
+
|
|
1952
|
+
```typescript
|
|
1953
|
+
public onCloudTrailWriteObject(id: string, options?: OnCloudTrailBucketEventOptions): Rule
|
|
1954
|
+
```
|
|
1955
|
+
|
|
1956
|
+
Defines an AWS CloudWatch event that triggers when an object at the specified paths (keys) in this bucket are written to.
|
|
1957
|
+
|
|
1958
|
+
This includes
|
|
1959
|
+
the events PutObject, CopyObject, and CompleteMultipartUpload.
|
|
1960
|
+
|
|
1961
|
+
Note that some tools like `aws s3 cp` will automatically use either
|
|
1962
|
+
PutObject or the multipart upload API depending on the file size,
|
|
1963
|
+
so using this method may be preferable to `onCloudTrailPutObject`.
|
|
1964
|
+
|
|
1965
|
+
Requires that there exists at least one CloudTrail Trail in your account
|
|
1966
|
+
that captures the event. This method will not create the Trail.
|
|
1967
|
+
|
|
1968
|
+
###### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailWriteObject.parameter.id"></a>
|
|
1969
|
+
|
|
1970
|
+
- *Type:* string
|
|
1971
|
+
|
|
1972
|
+
The id of the rule.
|
|
1973
|
+
|
|
1974
|
+
---
|
|
1975
|
+
|
|
1976
|
+
###### `options`<sup>Optional</sup> <a name="options" id="@btc-embedded/cdk-extensions.S3Bucket.onCloudTrailWriteObject.parameter.options"></a>
|
|
1977
|
+
|
|
1978
|
+
- *Type:* aws-cdk-lib.aws_s3.OnCloudTrailBucketEventOptions
|
|
1979
|
+
|
|
1980
|
+
Options for adding the rule.
|
|
1981
|
+
|
|
1982
|
+
---
|
|
1983
|
+
|
|
1984
|
+
##### `s3UrlForObject` <a name="s3UrlForObject" id="@btc-embedded/cdk-extensions.S3Bucket.s3UrlForObject"></a>
|
|
1985
|
+
|
|
1986
|
+
```typescript
|
|
1987
|
+
public s3UrlForObject(key?: string): string
|
|
1988
|
+
```
|
|
1989
|
+
|
|
1990
|
+
The S3 URL of an S3 object. For example:.
|
|
1991
|
+
|
|
1992
|
+
`s3://onlybucket`
|
|
1993
|
+
- `s3://bucket/key`
|
|
1994
|
+
|
|
1995
|
+
###### `key`<sup>Optional</sup> <a name="key" id="@btc-embedded/cdk-extensions.S3Bucket.s3UrlForObject.parameter.key"></a>
|
|
1996
|
+
|
|
1997
|
+
- *Type:* string
|
|
1998
|
+
|
|
1999
|
+
The S3 key of the object.
|
|
2000
|
+
|
|
2001
|
+
If not specified, the S3 URL of the
|
|
2002
|
+
bucket is returned.
|
|
2003
|
+
|
|
2004
|
+
---
|
|
2005
|
+
|
|
2006
|
+
##### `transferAccelerationUrlForObject` <a name="transferAccelerationUrlForObject" id="@btc-embedded/cdk-extensions.S3Bucket.transferAccelerationUrlForObject"></a>
|
|
2007
|
+
|
|
2008
|
+
```typescript
|
|
2009
|
+
public transferAccelerationUrlForObject(key?: string, options?: TransferAccelerationUrlOptions): string
|
|
2010
|
+
```
|
|
2011
|
+
|
|
2012
|
+
The https Transfer Acceleration URL of an S3 object.
|
|
2013
|
+
|
|
2014
|
+
Specify `dualStack: true` at the options
|
|
2015
|
+
for dual-stack endpoint (connect to the bucket over IPv6). For example:
|
|
2016
|
+
|
|
2017
|
+
- `https://bucket.s3-accelerate.amazonaws.com`
|
|
2018
|
+
- `https://bucket.s3-accelerate.amazonaws.com/key`
|
|
2019
|
+
|
|
2020
|
+
###### `key`<sup>Optional</sup> <a name="key" id="@btc-embedded/cdk-extensions.S3Bucket.transferAccelerationUrlForObject.parameter.key"></a>
|
|
2021
|
+
|
|
2022
|
+
- *Type:* string
|
|
2023
|
+
|
|
2024
|
+
The S3 key of the object.
|
|
2025
|
+
|
|
2026
|
+
If not specified, the URL of the
|
|
2027
|
+
bucket is returned.
|
|
2028
|
+
|
|
2029
|
+
---
|
|
2030
|
+
|
|
2031
|
+
###### `options`<sup>Optional</sup> <a name="options" id="@btc-embedded/cdk-extensions.S3Bucket.transferAccelerationUrlForObject.parameter.options"></a>
|
|
2032
|
+
|
|
2033
|
+
- *Type:* aws-cdk-lib.aws_s3.TransferAccelerationUrlOptions
|
|
2034
|
+
|
|
2035
|
+
Options for generating URL.
|
|
2036
|
+
|
|
2037
|
+
---
|
|
2038
|
+
|
|
2039
|
+
##### `urlForObject` <a name="urlForObject" id="@btc-embedded/cdk-extensions.S3Bucket.urlForObject"></a>
|
|
2040
|
+
|
|
2041
|
+
```typescript
|
|
2042
|
+
public urlForObject(key?: string): string
|
|
2043
|
+
```
|
|
2044
|
+
|
|
2045
|
+
The https URL of an S3 object. Specify `regional: false` at the options for non-regional URLs. For example:.
|
|
2046
|
+
|
|
2047
|
+
`https://s3.us-west-1.amazonaws.com/onlybucket`
|
|
2048
|
+
- `https://s3.us-west-1.amazonaws.com/bucket/key`
|
|
2049
|
+
- `https://s3.cn-north-1.amazonaws.com.cn/china-bucket/mykey`
|
|
2050
|
+
|
|
2051
|
+
###### `key`<sup>Optional</sup> <a name="key" id="@btc-embedded/cdk-extensions.S3Bucket.urlForObject.parameter.key"></a>
|
|
2052
|
+
|
|
2053
|
+
- *Type:* string
|
|
2054
|
+
|
|
2055
|
+
The S3 key of the object.
|
|
2056
|
+
|
|
2057
|
+
If not specified, the URL of the
|
|
2058
|
+
bucket is returned.
|
|
2059
|
+
|
|
2060
|
+
---
|
|
2061
|
+
|
|
2062
|
+
##### `virtualHostedUrlForObject` <a name="virtualHostedUrlForObject" id="@btc-embedded/cdk-extensions.S3Bucket.virtualHostedUrlForObject"></a>
|
|
2063
|
+
|
|
2064
|
+
```typescript
|
|
2065
|
+
public virtualHostedUrlForObject(key?: string, options?: VirtualHostedStyleUrlOptions): string
|
|
2066
|
+
```
|
|
2067
|
+
|
|
2068
|
+
The virtual hosted-style URL of an S3 object. Specify `regional: false` at the options for non-regional URL. For example:.
|
|
2069
|
+
|
|
2070
|
+
`https://only-bucket.s3.us-west-1.amazonaws.com`
|
|
2071
|
+
- `https://bucket.s3.us-west-1.amazonaws.com/key`
|
|
2072
|
+
- `https://bucket.s3.amazonaws.com/key`
|
|
2073
|
+
- `https://china-bucket.s3.cn-north-1.amazonaws.com.cn/mykey`
|
|
2074
|
+
|
|
2075
|
+
###### `key`<sup>Optional</sup> <a name="key" id="@btc-embedded/cdk-extensions.S3Bucket.virtualHostedUrlForObject.parameter.key"></a>
|
|
2076
|
+
|
|
2077
|
+
- *Type:* string
|
|
2078
|
+
|
|
2079
|
+
The S3 key of the object.
|
|
2080
|
+
|
|
2081
|
+
If not specified, the URL of the
|
|
2082
|
+
bucket is returned.
|
|
2083
|
+
|
|
2084
|
+
---
|
|
2085
|
+
|
|
2086
|
+
###### `options`<sup>Optional</sup> <a name="options" id="@btc-embedded/cdk-extensions.S3Bucket.virtualHostedUrlForObject.parameter.options"></a>
|
|
2087
|
+
|
|
2088
|
+
- *Type:* aws-cdk-lib.aws_s3.VirtualHostedStyleUrlOptions
|
|
2089
|
+
|
|
2090
|
+
Options for generating URL.
|
|
2091
|
+
|
|
2092
|
+
---
|
|
2093
|
+
|
|
2094
|
+
##### `addCorsRule` <a name="addCorsRule" id="@btc-embedded/cdk-extensions.S3Bucket.addCorsRule"></a>
|
|
2095
|
+
|
|
2096
|
+
```typescript
|
|
2097
|
+
public addCorsRule(rule: CorsRule): void
|
|
2098
|
+
```
|
|
2099
|
+
|
|
2100
|
+
Adds a cross-origin access configuration for objects in an Amazon S3 bucket.
|
|
2101
|
+
|
|
2102
|
+
###### `rule`<sup>Required</sup> <a name="rule" id="@btc-embedded/cdk-extensions.S3Bucket.addCorsRule.parameter.rule"></a>
|
|
2103
|
+
|
|
2104
|
+
- *Type:* aws-cdk-lib.aws_s3.CorsRule
|
|
2105
|
+
|
|
2106
|
+
The CORS configuration rule to add.
|
|
2107
|
+
|
|
2108
|
+
---
|
|
2109
|
+
|
|
2110
|
+
##### `addInventory` <a name="addInventory" id="@btc-embedded/cdk-extensions.S3Bucket.addInventory"></a>
|
|
2111
|
+
|
|
2112
|
+
```typescript
|
|
2113
|
+
public addInventory(inventory: Inventory): void
|
|
2114
|
+
```
|
|
2115
|
+
|
|
2116
|
+
Add an inventory configuration.
|
|
2117
|
+
|
|
2118
|
+
###### `inventory`<sup>Required</sup> <a name="inventory" id="@btc-embedded/cdk-extensions.S3Bucket.addInventory.parameter.inventory"></a>
|
|
2119
|
+
|
|
2120
|
+
- *Type:* aws-cdk-lib.aws_s3.Inventory
|
|
2121
|
+
|
|
2122
|
+
configuration to add.
|
|
2123
|
+
|
|
2124
|
+
---
|
|
2125
|
+
|
|
2126
|
+
##### `addLifecycleRule` <a name="addLifecycleRule" id="@btc-embedded/cdk-extensions.S3Bucket.addLifecycleRule"></a>
|
|
2127
|
+
|
|
2128
|
+
```typescript
|
|
2129
|
+
public addLifecycleRule(rule: LifecycleRule): void
|
|
2130
|
+
```
|
|
2131
|
+
|
|
2132
|
+
Add a lifecycle rule to the bucket.
|
|
2133
|
+
|
|
2134
|
+
###### `rule`<sup>Required</sup> <a name="rule" id="@btc-embedded/cdk-extensions.S3Bucket.addLifecycleRule.parameter.rule"></a>
|
|
2135
|
+
|
|
2136
|
+
- *Type:* aws-cdk-lib.aws_s3.LifecycleRule
|
|
2137
|
+
|
|
2138
|
+
The rule to add.
|
|
2139
|
+
|
|
2140
|
+
---
|
|
2141
|
+
|
|
2142
|
+
##### `addMetric` <a name="addMetric" id="@btc-embedded/cdk-extensions.S3Bucket.addMetric"></a>
|
|
2143
|
+
|
|
2144
|
+
```typescript
|
|
2145
|
+
public addMetric(metric: BucketMetrics): void
|
|
2146
|
+
```
|
|
2147
|
+
|
|
2148
|
+
Adds a metrics configuration for the CloudWatch request metrics from the bucket.
|
|
2149
|
+
|
|
2150
|
+
###### `metric`<sup>Required</sup> <a name="metric" id="@btc-embedded/cdk-extensions.S3Bucket.addMetric.parameter.metric"></a>
|
|
2151
|
+
|
|
2152
|
+
- *Type:* aws-cdk-lib.aws_s3.BucketMetrics
|
|
2153
|
+
|
|
2154
|
+
The metric configuration to add.
|
|
2155
|
+
|
|
2156
|
+
---
|
|
2157
|
+
|
|
2158
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
2159
|
+
|
|
2160
|
+
| **Name** | **Description** |
|
|
2161
|
+
| --- | --- |
|
|
2162
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
2163
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.isOwnedResource">isOwnedResource</a></code> | Returns true if the construct was created by CDK, and false otherwise. |
|
|
2164
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.isResource">isResource</a></code> | Check whether the given construct is a Resource. |
|
|
2165
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.fromBucketArn">fromBucketArn</a></code> | *No description.* |
|
|
2166
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.fromBucketAttributes">fromBucketAttributes</a></code> | Creates a Bucket construct that represents an external bucket. |
|
|
2167
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.fromBucketName">fromBucketName</a></code> | *No description.* |
|
|
2168
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.fromCfnBucket">fromCfnBucket</a></code> | Create a mutable `IBucket` based on a low-level `CfnBucket`. |
|
|
2169
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.validateBucketName">validateBucketName</a></code> | Thrown an exception if the given bucket name is not valid. |
|
|
2170
|
+
|
|
2171
|
+
---
|
|
2172
|
+
|
|
2173
|
+
##### ~~`isConstruct`~~ <a name="isConstruct" id="@btc-embedded/cdk-extensions.S3Bucket.isConstruct"></a>
|
|
2174
|
+
|
|
2175
|
+
```typescript
|
|
2176
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2177
|
+
|
|
2178
|
+
S3Bucket.isConstruct(x: any)
|
|
2179
|
+
```
|
|
2180
|
+
|
|
2181
|
+
Checks if `x` is a construct.
|
|
2182
|
+
|
|
2183
|
+
###### `x`<sup>Required</sup> <a name="x" id="@btc-embedded/cdk-extensions.S3Bucket.isConstruct.parameter.x"></a>
|
|
2184
|
+
|
|
2185
|
+
- *Type:* any
|
|
2186
|
+
|
|
2187
|
+
Any object.
|
|
2188
|
+
|
|
2189
|
+
---
|
|
2190
|
+
|
|
2191
|
+
##### `isOwnedResource` <a name="isOwnedResource" id="@btc-embedded/cdk-extensions.S3Bucket.isOwnedResource"></a>
|
|
2192
|
+
|
|
2193
|
+
```typescript
|
|
2194
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2195
|
+
|
|
2196
|
+
S3Bucket.isOwnedResource(construct: IConstruct)
|
|
2197
|
+
```
|
|
2198
|
+
|
|
2199
|
+
Returns true if the construct was created by CDK, and false otherwise.
|
|
2200
|
+
|
|
2201
|
+
###### `construct`<sup>Required</sup> <a name="construct" id="@btc-embedded/cdk-extensions.S3Bucket.isOwnedResource.parameter.construct"></a>
|
|
2202
|
+
|
|
2203
|
+
- *Type:* constructs.IConstruct
|
|
2204
|
+
|
|
2205
|
+
---
|
|
2206
|
+
|
|
2207
|
+
##### `isResource` <a name="isResource" id="@btc-embedded/cdk-extensions.S3Bucket.isResource"></a>
|
|
2208
|
+
|
|
2209
|
+
```typescript
|
|
2210
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2211
|
+
|
|
2212
|
+
S3Bucket.isResource(construct: IConstruct)
|
|
2213
|
+
```
|
|
2214
|
+
|
|
2215
|
+
Check whether the given construct is a Resource.
|
|
2216
|
+
|
|
2217
|
+
###### `construct`<sup>Required</sup> <a name="construct" id="@btc-embedded/cdk-extensions.S3Bucket.isResource.parameter.construct"></a>
|
|
2218
|
+
|
|
2219
|
+
- *Type:* constructs.IConstruct
|
|
2220
|
+
|
|
2221
|
+
---
|
|
2222
|
+
|
|
2223
|
+
##### `fromBucketArn` <a name="fromBucketArn" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketArn"></a>
|
|
2224
|
+
|
|
2225
|
+
```typescript
|
|
2226
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2227
|
+
|
|
2228
|
+
S3Bucket.fromBucketArn(scope: Construct, id: string, bucketArn: string)
|
|
2229
|
+
```
|
|
2230
|
+
|
|
2231
|
+
###### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketArn.parameter.scope"></a>
|
|
2232
|
+
|
|
2233
|
+
- *Type:* constructs.Construct
|
|
2234
|
+
|
|
2235
|
+
---
|
|
2236
|
+
|
|
2237
|
+
###### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketArn.parameter.id"></a>
|
|
2238
|
+
|
|
2239
|
+
- *Type:* string
|
|
2240
|
+
|
|
2241
|
+
---
|
|
2242
|
+
|
|
2243
|
+
###### `bucketArn`<sup>Required</sup> <a name="bucketArn" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketArn.parameter.bucketArn"></a>
|
|
2244
|
+
|
|
2245
|
+
- *Type:* string
|
|
2246
|
+
|
|
2247
|
+
---
|
|
2248
|
+
|
|
2249
|
+
##### `fromBucketAttributes` <a name="fromBucketAttributes" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketAttributes"></a>
|
|
2250
|
+
|
|
2251
|
+
```typescript
|
|
2252
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2253
|
+
|
|
2254
|
+
S3Bucket.fromBucketAttributes(scope: Construct, id: string, attrs: BucketAttributes)
|
|
2255
|
+
```
|
|
2256
|
+
|
|
2257
|
+
Creates a Bucket construct that represents an external bucket.
|
|
2258
|
+
|
|
2259
|
+
###### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketAttributes.parameter.scope"></a>
|
|
2260
|
+
|
|
2261
|
+
- *Type:* constructs.Construct
|
|
2262
|
+
|
|
2263
|
+
The parent creating construct (usually `this`).
|
|
2264
|
+
|
|
2265
|
+
---
|
|
2266
|
+
|
|
2267
|
+
###### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketAttributes.parameter.id"></a>
|
|
2268
|
+
|
|
2269
|
+
- *Type:* string
|
|
2270
|
+
|
|
2271
|
+
The construct's name.
|
|
2272
|
+
|
|
2273
|
+
---
|
|
2274
|
+
|
|
2275
|
+
###### `attrs`<sup>Required</sup> <a name="attrs" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketAttributes.parameter.attrs"></a>
|
|
2276
|
+
|
|
2277
|
+
- *Type:* aws-cdk-lib.aws_s3.BucketAttributes
|
|
2278
|
+
|
|
2279
|
+
A `BucketAttributes` object.
|
|
2280
|
+
|
|
2281
|
+
Can be obtained from a call to
|
|
2282
|
+
`bucket.export()` or manually created.
|
|
2283
|
+
|
|
2284
|
+
---
|
|
2285
|
+
|
|
2286
|
+
##### `fromBucketName` <a name="fromBucketName" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketName"></a>
|
|
2287
|
+
|
|
2288
|
+
```typescript
|
|
2289
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2290
|
+
|
|
2291
|
+
S3Bucket.fromBucketName(scope: Construct, id: string, bucketName: string)
|
|
2292
|
+
```
|
|
2293
|
+
|
|
2294
|
+
###### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketName.parameter.scope"></a>
|
|
2295
|
+
|
|
2296
|
+
- *Type:* constructs.Construct
|
|
2297
|
+
|
|
2298
|
+
---
|
|
2299
|
+
|
|
2300
|
+
###### `id`<sup>Required</sup> <a name="id" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketName.parameter.id"></a>
|
|
2301
|
+
|
|
2302
|
+
- *Type:* string
|
|
2303
|
+
|
|
2304
|
+
---
|
|
2305
|
+
|
|
2306
|
+
###### `bucketName`<sup>Required</sup> <a name="bucketName" id="@btc-embedded/cdk-extensions.S3Bucket.fromBucketName.parameter.bucketName"></a>
|
|
2307
|
+
|
|
2308
|
+
- *Type:* string
|
|
2309
|
+
|
|
2310
|
+
---
|
|
2311
|
+
|
|
2312
|
+
##### `fromCfnBucket` <a name="fromCfnBucket" id="@btc-embedded/cdk-extensions.S3Bucket.fromCfnBucket"></a>
|
|
2313
|
+
|
|
2314
|
+
```typescript
|
|
2315
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2316
|
+
|
|
2317
|
+
S3Bucket.fromCfnBucket(cfnBucket: CfnBucket)
|
|
2318
|
+
```
|
|
2319
|
+
|
|
2320
|
+
Create a mutable `IBucket` based on a low-level `CfnBucket`.
|
|
2321
|
+
|
|
2322
|
+
###### `cfnBucket`<sup>Required</sup> <a name="cfnBucket" id="@btc-embedded/cdk-extensions.S3Bucket.fromCfnBucket.parameter.cfnBucket"></a>
|
|
2323
|
+
|
|
2324
|
+
- *Type:* aws-cdk-lib.aws_s3.CfnBucket
|
|
2325
|
+
|
|
2326
|
+
---
|
|
2327
|
+
|
|
2328
|
+
##### `validateBucketName` <a name="validateBucketName" id="@btc-embedded/cdk-extensions.S3Bucket.validateBucketName"></a>
|
|
2329
|
+
|
|
2330
|
+
```typescript
|
|
2331
|
+
import { S3Bucket } from '@btc-embedded/cdk-extensions'
|
|
2332
|
+
|
|
2333
|
+
S3Bucket.validateBucketName(physicalName: string, allowLegacyBucketNaming?: boolean)
|
|
2334
|
+
```
|
|
2335
|
+
|
|
2336
|
+
Thrown an exception if the given bucket name is not valid.
|
|
2337
|
+
|
|
2338
|
+
###### `physicalName`<sup>Required</sup> <a name="physicalName" id="@btc-embedded/cdk-extensions.S3Bucket.validateBucketName.parameter.physicalName"></a>
|
|
2339
|
+
|
|
2340
|
+
- *Type:* string
|
|
2341
|
+
|
|
2342
|
+
name of the bucket.
|
|
2343
|
+
|
|
2344
|
+
---
|
|
2345
|
+
|
|
2346
|
+
###### `allowLegacyBucketNaming`<sup>Optional</sup> <a name="allowLegacyBucketNaming" id="@btc-embedded/cdk-extensions.S3Bucket.validateBucketName.parameter.allowLegacyBucketNaming"></a>
|
|
2347
|
+
|
|
2348
|
+
- *Type:* boolean
|
|
2349
|
+
|
|
2350
|
+
allow legacy bucket naming style, default is false.
|
|
2351
|
+
|
|
2352
|
+
---
|
|
2353
|
+
|
|
2354
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
2355
|
+
|
|
2356
|
+
| **Name** | **Type** | **Description** |
|
|
2357
|
+
| --- | --- | --- |
|
|
2358
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
2359
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.env">env</a></code> | <code>aws-cdk-lib.ResourceEnvironment</code> | The environment this resource belongs to. |
|
|
2360
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.stack">stack</a></code> | <code>aws-cdk-lib.Stack</code> | The stack in which this resource is defined. |
|
|
2361
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketArn">bucketArn</a></code> | <code>string</code> | The ARN of the bucket. |
|
|
2362
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketDomainName">bucketDomainName</a></code> | <code>string</code> | The IPv4 DNS name of the specified bucket. |
|
|
2363
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketDualStackDomainName">bucketDualStackDomainName</a></code> | <code>string</code> | The IPv6 DNS name of the specified bucket. |
|
|
2364
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketName">bucketName</a></code> | <code>string</code> | The name of the bucket. |
|
|
2365
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketRegionalDomainName">bucketRegionalDomainName</a></code> | <code>string</code> | The regional domain name of the specified bucket. |
|
|
2366
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketWebsiteDomainName">bucketWebsiteDomainName</a></code> | <code>string</code> | The Domain name of the static website. |
|
|
2367
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.bucketWebsiteUrl">bucketWebsiteUrl</a></code> | <code>string</code> | The URL of the static website. |
|
|
2368
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.encryptionKey">encryptionKey</a></code> | <code>aws-cdk-lib.aws_kms.IKey</code> | Optional KMS encryption key associated with this bucket. |
|
|
2369
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.isWebsite">isWebsite</a></code> | <code>boolean</code> | If this bucket has been configured for static website hosting. |
|
|
2370
|
+
| <code><a href="#@btc-embedded/cdk-extensions.S3Bucket.property.policy">policy</a></code> | <code>aws-cdk-lib.aws_s3.BucketPolicy</code> | The resource policy associated with this bucket. |
|
|
2371
|
+
|
|
2372
|
+
---
|
|
2373
|
+
|
|
2374
|
+
##### `node`<sup>Required</sup> <a name="node" id="@btc-embedded/cdk-extensions.S3Bucket.property.node"></a>
|
|
2375
|
+
|
|
2376
|
+
```typescript
|
|
2377
|
+
public readonly node: Node;
|
|
2378
|
+
```
|
|
2379
|
+
|
|
2380
|
+
- *Type:* constructs.Node
|
|
2381
|
+
|
|
2382
|
+
The tree node.
|
|
2383
|
+
|
|
2384
|
+
---
|
|
2385
|
+
|
|
2386
|
+
##### `env`<sup>Required</sup> <a name="env" id="@btc-embedded/cdk-extensions.S3Bucket.property.env"></a>
|
|
2387
|
+
|
|
2388
|
+
```typescript
|
|
2389
|
+
public readonly env: ResourceEnvironment;
|
|
2390
|
+
```
|
|
2391
|
+
|
|
2392
|
+
- *Type:* aws-cdk-lib.ResourceEnvironment
|
|
2393
|
+
|
|
2394
|
+
The environment this resource belongs to.
|
|
2395
|
+
|
|
2396
|
+
For resources that are created and managed by the CDK
|
|
2397
|
+
(generally, those created by creating new class instances like Role, Bucket, etc.),
|
|
2398
|
+
this is always the same as the environment of the stack they belong to;
|
|
2399
|
+
however, for imported resources
|
|
2400
|
+
(those obtained from static methods like fromRoleArn, fromBucketName, etc.),
|
|
2401
|
+
that might be different than the stack they were imported into.
|
|
2402
|
+
|
|
2403
|
+
---
|
|
2404
|
+
|
|
2405
|
+
##### `stack`<sup>Required</sup> <a name="stack" id="@btc-embedded/cdk-extensions.S3Bucket.property.stack"></a>
|
|
2406
|
+
|
|
2407
|
+
```typescript
|
|
2408
|
+
public readonly stack: Stack;
|
|
2409
|
+
```
|
|
2410
|
+
|
|
2411
|
+
- *Type:* aws-cdk-lib.Stack
|
|
2412
|
+
|
|
2413
|
+
The stack in which this resource is defined.
|
|
2414
|
+
|
|
2415
|
+
---
|
|
2416
|
+
|
|
2417
|
+
##### `bucketArn`<sup>Required</sup> <a name="bucketArn" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketArn"></a>
|
|
2418
|
+
|
|
2419
|
+
```typescript
|
|
2420
|
+
public readonly bucketArn: string;
|
|
2421
|
+
```
|
|
2422
|
+
|
|
2423
|
+
- *Type:* string
|
|
2424
|
+
|
|
2425
|
+
The ARN of the bucket.
|
|
2426
|
+
|
|
2427
|
+
---
|
|
2428
|
+
|
|
2429
|
+
##### `bucketDomainName`<sup>Required</sup> <a name="bucketDomainName" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketDomainName"></a>
|
|
2430
|
+
|
|
2431
|
+
```typescript
|
|
2432
|
+
public readonly bucketDomainName: string;
|
|
2433
|
+
```
|
|
2434
|
+
|
|
2435
|
+
- *Type:* string
|
|
2436
|
+
|
|
2437
|
+
The IPv4 DNS name of the specified bucket.
|
|
2438
|
+
|
|
2439
|
+
---
|
|
2440
|
+
|
|
2441
|
+
##### `bucketDualStackDomainName`<sup>Required</sup> <a name="bucketDualStackDomainName" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketDualStackDomainName"></a>
|
|
2442
|
+
|
|
2443
|
+
```typescript
|
|
2444
|
+
public readonly bucketDualStackDomainName: string;
|
|
2445
|
+
```
|
|
2446
|
+
|
|
2447
|
+
- *Type:* string
|
|
2448
|
+
|
|
2449
|
+
The IPv6 DNS name of the specified bucket.
|
|
2450
|
+
|
|
2451
|
+
---
|
|
2452
|
+
|
|
2453
|
+
##### `bucketName`<sup>Required</sup> <a name="bucketName" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketName"></a>
|
|
2454
|
+
|
|
2455
|
+
```typescript
|
|
2456
|
+
public readonly bucketName: string;
|
|
2457
|
+
```
|
|
2458
|
+
|
|
2459
|
+
- *Type:* string
|
|
1224
2460
|
|
|
1225
|
-
|
|
1226
|
-
| --- | --- |
|
|
1227
|
-
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
1228
|
-
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.createOAuthScopes">createOAuthScopes</a></code> | *No description.* |
|
|
2461
|
+
The name of the bucket.
|
|
1229
2462
|
|
|
1230
2463
|
---
|
|
1231
2464
|
|
|
1232
|
-
##### `
|
|
2465
|
+
##### `bucketRegionalDomainName`<sup>Required</sup> <a name="bucketRegionalDomainName" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketRegionalDomainName"></a>
|
|
1233
2466
|
|
|
1234
2467
|
```typescript
|
|
1235
|
-
public
|
|
2468
|
+
public readonly bucketRegionalDomainName: string;
|
|
1236
2469
|
```
|
|
1237
2470
|
|
|
1238
|
-
|
|
2471
|
+
- *Type:* string
|
|
1239
2472
|
|
|
1240
|
-
|
|
2473
|
+
The regional domain name of the specified bucket.
|
|
2474
|
+
|
|
2475
|
+
---
|
|
2476
|
+
|
|
2477
|
+
##### `bucketWebsiteDomainName`<sup>Required</sup> <a name="bucketWebsiteDomainName" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketWebsiteDomainName"></a>
|
|
1241
2478
|
|
|
1242
2479
|
```typescript
|
|
1243
|
-
public
|
|
2480
|
+
public readonly bucketWebsiteDomainName: string;
|
|
1244
2481
|
```
|
|
1245
2482
|
|
|
1246
|
-
|
|
2483
|
+
- *Type:* string
|
|
1247
2484
|
|
|
1248
|
-
|
|
1249
|
-
| --- | --- |
|
|
1250
|
-
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
2485
|
+
The Domain name of the static website.
|
|
1251
2486
|
|
|
1252
2487
|
---
|
|
1253
2488
|
|
|
1254
|
-
#####
|
|
2489
|
+
##### `bucketWebsiteUrl`<sup>Required</sup> <a name="bucketWebsiteUrl" id="@btc-embedded/cdk-extensions.S3Bucket.property.bucketWebsiteUrl"></a>
|
|
1255
2490
|
|
|
1256
2491
|
```typescript
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
ResourceServer.isConstruct(x: any)
|
|
2492
|
+
public readonly bucketWebsiteUrl: string;
|
|
1260
2493
|
```
|
|
1261
2494
|
|
|
1262
|
-
|
|
2495
|
+
- *Type:* string
|
|
1263
2496
|
|
|
1264
|
-
|
|
2497
|
+
The URL of the static website.
|
|
1265
2498
|
|
|
1266
|
-
|
|
2499
|
+
---
|
|
1267
2500
|
|
|
1268
|
-
|
|
2501
|
+
##### `encryptionKey`<sup>Optional</sup> <a name="encryptionKey" id="@btc-embedded/cdk-extensions.S3Bucket.property.encryptionKey"></a>
|
|
1269
2502
|
|
|
1270
|
-
|
|
2503
|
+
```typescript
|
|
2504
|
+
public readonly encryptionKey: IKey;
|
|
2505
|
+
```
|
|
1271
2506
|
|
|
1272
|
-
|
|
2507
|
+
- *Type:* aws-cdk-lib.aws_kms.IKey
|
|
1273
2508
|
|
|
1274
|
-
|
|
1275
|
-
| --- | --- | --- |
|
|
1276
|
-
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
1277
|
-
| <code><a href="#@btc-embedded/cdk-extensions.ResourceServer.property.resourceServerInstance">resourceServerInstance</a></code> | <code>aws-cdk-lib.aws_cognito.IUserPoolResourceServer</code> | *No description.* |
|
|
2509
|
+
Optional KMS encryption key associated with this bucket.
|
|
1278
2510
|
|
|
1279
2511
|
---
|
|
1280
2512
|
|
|
1281
|
-
##### `
|
|
2513
|
+
##### `isWebsite`<sup>Optional</sup> <a name="isWebsite" id="@btc-embedded/cdk-extensions.S3Bucket.property.isWebsite"></a>
|
|
1282
2514
|
|
|
1283
2515
|
```typescript
|
|
1284
|
-
public readonly
|
|
2516
|
+
public readonly isWebsite: boolean;
|
|
1285
2517
|
```
|
|
1286
2518
|
|
|
1287
|
-
- *Type:*
|
|
2519
|
+
- *Type:* boolean
|
|
1288
2520
|
|
|
1289
|
-
|
|
2521
|
+
If this bucket has been configured for static website hosting.
|
|
1290
2522
|
|
|
1291
2523
|
---
|
|
1292
2524
|
|
|
1293
|
-
##### `
|
|
2525
|
+
##### `policy`<sup>Optional</sup> <a name="policy" id="@btc-embedded/cdk-extensions.S3Bucket.property.policy"></a>
|
|
1294
2526
|
|
|
1295
2527
|
```typescript
|
|
1296
|
-
public readonly
|
|
2528
|
+
public readonly policy: BucketPolicy;
|
|
1297
2529
|
```
|
|
1298
2530
|
|
|
1299
|
-
- *Type:* aws-cdk-lib.
|
|
2531
|
+
- *Type:* aws-cdk-lib.aws_s3.BucketPolicy
|
|
2532
|
+
|
|
2533
|
+
The resource policy associated with this bucket.
|
|
2534
|
+
|
|
2535
|
+
If `autoCreatePolicy` is true, a `BucketPolicy` will be created upon the
|
|
2536
|
+
first call to addToResourcePolicy(s).
|
|
1300
2537
|
|
|
1301
2538
|
---
|
|
1302
2539
|
|
|
@@ -1719,6 +2956,19 @@ public readonly vpcInstance: IVpc;
|
|
|
1719
2956
|
|
|
1720
2957
|
## Structs <a name="Structs" id="Structs"></a>
|
|
1721
2958
|
|
|
2959
|
+
### AnythingButFilterRule <a name="AnythingButFilterRule" id="@btc-embedded/cdk-extensions.AnythingButFilterRule"></a>
|
|
2960
|
+
|
|
2961
|
+
Rule that allows all values except the given ones.
|
|
2962
|
+
|
|
2963
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.AnythingButFilterRule.Initializer"></a>
|
|
2964
|
+
|
|
2965
|
+
```typescript
|
|
2966
|
+
import { AnythingButFilterRule } from '@btc-embedded/cdk-extensions'
|
|
2967
|
+
|
|
2968
|
+
const anythingButFilterRule: AnythingButFilterRule = { ... }
|
|
2969
|
+
```
|
|
2970
|
+
|
|
2971
|
+
|
|
1722
2972
|
### ApiGatewayExtensionProps <a name="ApiGatewayExtensionProps" id="@btc-embedded/cdk-extensions.ApiGatewayExtensionProps"></a>
|
|
1723
2973
|
|
|
1724
2974
|
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.ApiGatewayExtensionProps.Initializer"></a>
|
|
@@ -4134,6 +5384,81 @@ public readonly queue: Queue;
|
|
|
4134
5384
|
|
|
4135
5385
|
---
|
|
4136
5386
|
|
|
5387
|
+
### EventPipeProps <a name="EventPipeProps" id="@btc-embedded/cdk-extensions.EventPipeProps"></a>
|
|
5388
|
+
|
|
5389
|
+
Properties for pipe construction.
|
|
5390
|
+
|
|
5391
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.EventPipeProps.Initializer"></a>
|
|
5392
|
+
|
|
5393
|
+
```typescript
|
|
5394
|
+
import { EventPipeProps } from '@btc-embedded/cdk-extensions'
|
|
5395
|
+
|
|
5396
|
+
const eventPipeProps: EventPipeProps = { ... }
|
|
5397
|
+
```
|
|
5398
|
+
|
|
5399
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
5400
|
+
|
|
5401
|
+
| **Name** | **Type** | **Description** |
|
|
5402
|
+
| --- | --- | --- |
|
|
5403
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipeProps.property.source">source</a></code> | <code>aws-cdk-lib.aws_sqs.IQueue</code> | The source SQS queue. |
|
|
5404
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipeProps.property.target">target</a></code> | <code><a href="#@btc-embedded/cdk-extensions.TargetQueue">TargetQueue</a> \| <a href="#@btc-embedded/cdk-extensions.TargetStepFunction">TargetStepFunction</a></code> | The target SQS queue or target step function. |
|
|
5405
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipeProps.property.filter">filter</a></code> | <code><a href="#@btc-embedded/cdk-extensions.PipeFilter">PipeFilter</a></code> | An optional filter for the pipe. |
|
|
5406
|
+
| <code><a href="#@btc-embedded/cdk-extensions.EventPipeProps.property.role">role</a></code> | <code>aws-cdk-lib.aws_iam.Role</code> | The role used by the event pipe. |
|
|
5407
|
+
|
|
5408
|
+
---
|
|
5409
|
+
|
|
5410
|
+
##### `source`<sup>Required</sup> <a name="source" id="@btc-embedded/cdk-extensions.EventPipeProps.property.source"></a>
|
|
5411
|
+
|
|
5412
|
+
```typescript
|
|
5413
|
+
public readonly source: IQueue;
|
|
5414
|
+
```
|
|
5415
|
+
|
|
5416
|
+
- *Type:* aws-cdk-lib.aws_sqs.IQueue
|
|
5417
|
+
|
|
5418
|
+
The source SQS queue.
|
|
5419
|
+
|
|
5420
|
+
No other source types are supported at the moment.
|
|
5421
|
+
|
|
5422
|
+
---
|
|
5423
|
+
|
|
5424
|
+
##### `target`<sup>Required</sup> <a name="target" id="@btc-embedded/cdk-extensions.EventPipeProps.property.target"></a>
|
|
5425
|
+
|
|
5426
|
+
```typescript
|
|
5427
|
+
public readonly target: TargetQueue | TargetStepFunction;
|
|
5428
|
+
```
|
|
5429
|
+
|
|
5430
|
+
- *Type:* <a href="#@btc-embedded/cdk-extensions.TargetQueue">TargetQueue</a> | <a href="#@btc-embedded/cdk-extensions.TargetStepFunction">TargetStepFunction</a>
|
|
5431
|
+
|
|
5432
|
+
The target SQS queue or target step function.
|
|
5433
|
+
|
|
5434
|
+
---
|
|
5435
|
+
|
|
5436
|
+
##### `filter`<sup>Optional</sup> <a name="filter" id="@btc-embedded/cdk-extensions.EventPipeProps.property.filter"></a>
|
|
5437
|
+
|
|
5438
|
+
```typescript
|
|
5439
|
+
public readonly filter: PipeFilter;
|
|
5440
|
+
```
|
|
5441
|
+
|
|
5442
|
+
- *Type:* <a href="#@btc-embedded/cdk-extensions.PipeFilter">PipeFilter</a>
|
|
5443
|
+
|
|
5444
|
+
An optional filter for the pipe.
|
|
5445
|
+
|
|
5446
|
+
---
|
|
5447
|
+
|
|
5448
|
+
##### `role`<sup>Optional</sup> <a name="role" id="@btc-embedded/cdk-extensions.EventPipeProps.property.role"></a>
|
|
5449
|
+
|
|
5450
|
+
```typescript
|
|
5451
|
+
public readonly role: Role;
|
|
5452
|
+
```
|
|
5453
|
+
|
|
5454
|
+
- *Type:* aws-cdk-lib.aws_iam.Role
|
|
5455
|
+
|
|
5456
|
+
The role used by the event pipe.
|
|
5457
|
+
|
|
5458
|
+
If omitted, a new role is created.
|
|
5459
|
+
|
|
5460
|
+
---
|
|
5461
|
+
|
|
4137
5462
|
### ExtraContainerExtensionProps <a name="ExtraContainerExtensionProps" id="@btc-embedded/cdk-extensions.ExtraContainerExtensionProps"></a>
|
|
4138
5463
|
|
|
4139
5464
|
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.ExtraContainerExtensionProps.Initializer"></a>
|
|
@@ -4188,6 +5513,19 @@ Defaults to ContainerDependencyCondition.HEALTHY.
|
|
|
4188
5513
|
|
|
4189
5514
|
---
|
|
4190
5515
|
|
|
5516
|
+
### FilterEqualsIgnoreCase <a name="FilterEqualsIgnoreCase" id="@btc-embedded/cdk-extensions.FilterEqualsIgnoreCase"></a>
|
|
5517
|
+
|
|
5518
|
+
Rule that matches a string, ignoring the case.
|
|
5519
|
+
|
|
5520
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.FilterEqualsIgnoreCase.Initializer"></a>
|
|
5521
|
+
|
|
5522
|
+
```typescript
|
|
5523
|
+
import { FilterEqualsIgnoreCase } from '@btc-embedded/cdk-extensions'
|
|
5524
|
+
|
|
5525
|
+
const filterEqualsIgnoreCase: FilterEqualsIgnoreCase = { ... }
|
|
5526
|
+
```
|
|
5527
|
+
|
|
5528
|
+
|
|
4191
5529
|
### HTTPApiExtensionProps <a name="HTTPApiExtensionProps" id="@btc-embedded/cdk-extensions.HTTPApiExtensionProps"></a>
|
|
4192
5530
|
|
|
4193
5531
|
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.HTTPApiExtensionProps.Initializer"></a>
|
|
@@ -4285,6 +5623,17 @@ The prefix for the API Gateway endpoint.
|
|
|
4285
5623
|
|
|
4286
5624
|
---
|
|
4287
5625
|
|
|
5626
|
+
### InputTemplate <a name="InputTemplate" id="@btc-embedded/cdk-extensions.InputTemplate"></a>
|
|
5627
|
+
|
|
5628
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.InputTemplate.Initializer"></a>
|
|
5629
|
+
|
|
5630
|
+
```typescript
|
|
5631
|
+
import { InputTemplate } from '@btc-embedded/cdk-extensions'
|
|
5632
|
+
|
|
5633
|
+
const inputTemplate: InputTemplate = { ... }
|
|
5634
|
+
```
|
|
5635
|
+
|
|
5636
|
+
|
|
4288
5637
|
### OpenTelemetryExtensionProps <a name="OpenTelemetryExtensionProps" id="@btc-embedded/cdk-extensions.OpenTelemetryExtensionProps"></a>
|
|
4289
5638
|
|
|
4290
5639
|
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.OpenTelemetryExtensionProps.Initializer"></a>
|
|
@@ -4343,6 +5692,19 @@ The namespace of the service to use in the OTel attributes.
|
|
|
4343
5692
|
|
|
4344
5693
|
---
|
|
4345
5694
|
|
|
5695
|
+
### PipeFilter <a name="PipeFilter" id="@btc-embedded/cdk-extensions.PipeFilter"></a>
|
|
5696
|
+
|
|
5697
|
+
A filter for messages in the pipe.
|
|
5698
|
+
|
|
5699
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.PipeFilter.Initializer"></a>
|
|
5700
|
+
|
|
5701
|
+
```typescript
|
|
5702
|
+
import { PipeFilter } from '@btc-embedded/cdk-extensions'
|
|
5703
|
+
|
|
5704
|
+
const pipeFilter: PipeFilter = { ... }
|
|
5705
|
+
```
|
|
5706
|
+
|
|
5707
|
+
|
|
4346
5708
|
### PostgresDbAccessExtensionProps <a name="PostgresDbAccessExtensionProps" id="@btc-embedded/cdk-extensions.PostgresDbAccessExtensionProps"></a>
|
|
4347
5709
|
|
|
4348
5710
|
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.PostgresDbAccessExtensionProps.Initializer"></a>
|
|
@@ -4480,6 +5842,36 @@ public readonly namespace: string;
|
|
|
4480
5842
|
|
|
4481
5843
|
---
|
|
4482
5844
|
|
|
5845
|
+
### PrefixFilterRule <a name="PrefixFilterRule" id="@btc-embedded/cdk-extensions.PrefixFilterRule"></a>
|
|
5846
|
+
|
|
5847
|
+
Rule that a property has to start with a prefix.
|
|
5848
|
+
|
|
5849
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.PrefixFilterRule.Initializer"></a>
|
|
5850
|
+
|
|
5851
|
+
```typescript
|
|
5852
|
+
import { PrefixFilterRule } from '@btc-embedded/cdk-extensions'
|
|
5853
|
+
|
|
5854
|
+
const prefixFilterRule: PrefixFilterRule = { ... }
|
|
5855
|
+
```
|
|
5856
|
+
|
|
5857
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
5858
|
+
|
|
5859
|
+
| **Name** | **Type** | **Description** |
|
|
5860
|
+
| --- | --- | --- |
|
|
5861
|
+
| <code><a href="#@btc-embedded/cdk-extensions.PrefixFilterRule.property.prefix">prefix</a></code> | <code>string \| <a href="#@btc-embedded/cdk-extensions.FilterEqualsIgnoreCase">FilterEqualsIgnoreCase</a></code> | *No description.* |
|
|
5862
|
+
|
|
5863
|
+
---
|
|
5864
|
+
|
|
5865
|
+
##### `prefix`<sup>Required</sup> <a name="prefix" id="@btc-embedded/cdk-extensions.PrefixFilterRule.property.prefix"></a>
|
|
5866
|
+
|
|
5867
|
+
```typescript
|
|
5868
|
+
public readonly prefix: string | FilterEqualsIgnoreCase;
|
|
5869
|
+
```
|
|
5870
|
+
|
|
5871
|
+
- *Type:* string | <a href="#@btc-embedded/cdk-extensions.FilterEqualsIgnoreCase">FilterEqualsIgnoreCase</a>
|
|
5872
|
+
|
|
5873
|
+
---
|
|
5874
|
+
|
|
4483
5875
|
### PrivateDnsNamespaceProps <a name="PrivateDnsNamespaceProps" id="@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps"></a>
|
|
4484
5876
|
|
|
4485
5877
|
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps.Initializer"></a>
|
|
@@ -4725,69 +6117,211 @@ public readonly hostedZone: IHostedZone;
|
|
|
4725
6117
|
- *Type:* aws-cdk-lib.aws_route53.IHostedZone
|
|
4726
6118
|
- *Default:* fqdn output of base platform stack is used to import the hosted zone
|
|
4727
6119
|
|
|
4728
|
-
hosted zone for the subdomain An optional parameter.
|
|
6120
|
+
hosted zone for the subdomain An optional parameter.
|
|
6121
|
+
|
|
6122
|
+
---
|
|
6123
|
+
|
|
6124
|
+
### SharedVolumeExtensionProps <a name="SharedVolumeExtensionProps" id="@btc-embedded/cdk-extensions.SharedVolumeExtensionProps"></a>
|
|
6125
|
+
|
|
6126
|
+
Properties for defining an ephermal shared volume.
|
|
6127
|
+
|
|
6128
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.Initializer"></a>
|
|
6129
|
+
|
|
6130
|
+
```typescript
|
|
6131
|
+
import { SharedVolumeExtensionProps } from '@btc-embedded/cdk-extensions'
|
|
6132
|
+
|
|
6133
|
+
const sharedVolumeExtensionProps: SharedVolumeExtensionProps = { ... }
|
|
6134
|
+
```
|
|
6135
|
+
|
|
6136
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
6137
|
+
|
|
6138
|
+
| **Name** | **Type** | **Description** |
|
|
6139
|
+
| --- | --- | --- |
|
|
6140
|
+
| <code><a href="#@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.path">path</a></code> | <code>string</code> | The path inside the container to mount the volume. |
|
|
6141
|
+
| <code><a href="#@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.readonly">readonly</a></code> | <code>boolean</code> | Whether the volume should be read-only. |
|
|
6142
|
+
| <code><a href="#@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.scope">scope</a></code> | <code>aws-cdk-lib.aws_ecs.Scope</code> | Scope of the volume. |
|
|
6143
|
+
|
|
6144
|
+
---
|
|
6145
|
+
|
|
6146
|
+
##### `path`<sup>Required</sup> <a name="path" id="@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.path"></a>
|
|
6147
|
+
|
|
6148
|
+
```typescript
|
|
6149
|
+
public readonly path: string;
|
|
6150
|
+
```
|
|
6151
|
+
|
|
6152
|
+
- *Type:* string
|
|
6153
|
+
|
|
6154
|
+
The path inside the container to mount the volume.
|
|
6155
|
+
|
|
6156
|
+
---
|
|
6157
|
+
|
|
6158
|
+
##### `readonly`<sup>Optional</sup> <a name="readonly" id="@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.readonly"></a>
|
|
6159
|
+
|
|
6160
|
+
```typescript
|
|
6161
|
+
public readonly readonly: boolean;
|
|
6162
|
+
```
|
|
6163
|
+
|
|
6164
|
+
- *Type:* boolean
|
|
6165
|
+
|
|
6166
|
+
Whether the volume should be read-only.
|
|
6167
|
+
|
|
6168
|
+
Default: false.
|
|
6169
|
+
|
|
6170
|
+
---
|
|
6171
|
+
|
|
6172
|
+
##### `scope`<sup>Optional</sup> <a name="scope" id="@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.scope"></a>
|
|
6173
|
+
|
|
6174
|
+
```typescript
|
|
6175
|
+
public readonly scope: Scope;
|
|
6176
|
+
```
|
|
6177
|
+
|
|
6178
|
+
- *Type:* aws-cdk-lib.aws_ecs.Scope
|
|
6179
|
+
|
|
6180
|
+
Scope of the volume.
|
|
6181
|
+
|
|
6182
|
+
Default: SHARED.
|
|
6183
|
+
|
|
6184
|
+
---
|
|
6185
|
+
|
|
6186
|
+
### SuffixFilterRule <a name="SuffixFilterRule" id="@btc-embedded/cdk-extensions.SuffixFilterRule"></a>
|
|
6187
|
+
|
|
6188
|
+
Rule that a property has to end with a suffix.
|
|
6189
|
+
|
|
6190
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.SuffixFilterRule.Initializer"></a>
|
|
6191
|
+
|
|
6192
|
+
```typescript
|
|
6193
|
+
import { SuffixFilterRule } from '@btc-embedded/cdk-extensions'
|
|
6194
|
+
|
|
6195
|
+
const suffixFilterRule: SuffixFilterRule = { ... }
|
|
6196
|
+
```
|
|
6197
|
+
|
|
6198
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
6199
|
+
|
|
6200
|
+
| **Name** | **Type** | **Description** |
|
|
6201
|
+
| --- | --- | --- |
|
|
6202
|
+
| <code><a href="#@btc-embedded/cdk-extensions.SuffixFilterRule.property.suffix">suffix</a></code> | <code>string \| <a href="#@btc-embedded/cdk-extensions.FilterEqualsIgnoreCase">FilterEqualsIgnoreCase</a></code> | *No description.* |
|
|
6203
|
+
|
|
6204
|
+
---
|
|
6205
|
+
|
|
6206
|
+
##### `suffix`<sup>Required</sup> <a name="suffix" id="@btc-embedded/cdk-extensions.SuffixFilterRule.property.suffix"></a>
|
|
6207
|
+
|
|
6208
|
+
```typescript
|
|
6209
|
+
public readonly suffix: string | FilterEqualsIgnoreCase;
|
|
6210
|
+
```
|
|
6211
|
+
|
|
6212
|
+
- *Type:* string | <a href="#@btc-embedded/cdk-extensions.FilterEqualsIgnoreCase">FilterEqualsIgnoreCase</a>
|
|
6213
|
+
|
|
6214
|
+
---
|
|
6215
|
+
|
|
6216
|
+
### TargetQueue <a name="TargetQueue" id="@btc-embedded/cdk-extensions.TargetQueue"></a>
|
|
6217
|
+
|
|
6218
|
+
SQS queue as pipe target.
|
|
6219
|
+
|
|
6220
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.TargetQueue.Initializer"></a>
|
|
6221
|
+
|
|
6222
|
+
```typescript
|
|
6223
|
+
import { TargetQueue } from '@btc-embedded/cdk-extensions'
|
|
6224
|
+
|
|
6225
|
+
const targetQueue: TargetQueue = { ... }
|
|
6226
|
+
```
|
|
6227
|
+
|
|
6228
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
6229
|
+
|
|
6230
|
+
| **Name** | **Type** | **Description** |
|
|
6231
|
+
| --- | --- | --- |
|
|
6232
|
+
| <code><a href="#@btc-embedded/cdk-extensions.TargetQueue.property.queue">queue</a></code> | <code>aws-cdk-lib.aws_sqs.IQueue</code> | *No description.* |
|
|
6233
|
+
|
|
6234
|
+
---
|
|
6235
|
+
|
|
6236
|
+
##### `queue`<sup>Required</sup> <a name="queue" id="@btc-embedded/cdk-extensions.TargetQueue.property.queue"></a>
|
|
6237
|
+
|
|
6238
|
+
```typescript
|
|
6239
|
+
public readonly queue: IQueue;
|
|
6240
|
+
```
|
|
6241
|
+
|
|
6242
|
+
- *Type:* aws-cdk-lib.aws_sqs.IQueue
|
|
4729
6243
|
|
|
4730
6244
|
---
|
|
4731
6245
|
|
|
4732
|
-
###
|
|
6246
|
+
### TargetStepFunction <a name="TargetStepFunction" id="@btc-embedded/cdk-extensions.TargetStepFunction"></a>
|
|
4733
6247
|
|
|
4734
|
-
|
|
6248
|
+
StepFunction as pipe target.
|
|
4735
6249
|
|
|
4736
|
-
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.
|
|
6250
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.TargetStepFunction.Initializer"></a>
|
|
4737
6251
|
|
|
4738
6252
|
```typescript
|
|
4739
|
-
import {
|
|
6253
|
+
import { TargetStepFunction } from '@btc-embedded/cdk-extensions'
|
|
4740
6254
|
|
|
4741
|
-
const
|
|
6255
|
+
const targetStepFunction: TargetStepFunction = { ... }
|
|
4742
6256
|
```
|
|
4743
6257
|
|
|
4744
6258
|
#### Properties <a name="Properties" id="Properties"></a>
|
|
4745
6259
|
|
|
4746
6260
|
| **Name** | **Type** | **Description** |
|
|
4747
6261
|
| --- | --- | --- |
|
|
4748
|
-
| <code><a href="#@btc-embedded/cdk-extensions.
|
|
4749
|
-
| <code><a href="#@btc-embedded/cdk-extensions.
|
|
4750
|
-
| <code><a href="#@btc-embedded/cdk-extensions.SharedVolumeExtensionProps.property.scope">scope</a></code> | <code>aws-cdk-lib.aws_ecs.Scope</code> | Scope of the volume. |
|
|
6262
|
+
| <code><a href="#@btc-embedded/cdk-extensions.TargetStepFunction.property.stepFunction">stepFunction</a></code> | <code>aws-cdk-lib.aws_stepfunctions.IStateMachine</code> | *No description.* |
|
|
6263
|
+
| <code><a href="#@btc-embedded/cdk-extensions.TargetStepFunction.property.parameters">parameters</a></code> | <code><a href="#@btc-embedded/cdk-extensions.TargetStepFunctionParameters">TargetStepFunctionParameters</a></code> | *No description.* |
|
|
4751
6264
|
|
|
4752
6265
|
---
|
|
4753
6266
|
|
|
4754
|
-
##### `
|
|
6267
|
+
##### `stepFunction`<sup>Required</sup> <a name="stepFunction" id="@btc-embedded/cdk-extensions.TargetStepFunction.property.stepFunction"></a>
|
|
4755
6268
|
|
|
4756
6269
|
```typescript
|
|
4757
|
-
public readonly
|
|
6270
|
+
public readonly stepFunction: IStateMachine;
|
|
4758
6271
|
```
|
|
4759
6272
|
|
|
4760
|
-
- *Type:*
|
|
4761
|
-
|
|
4762
|
-
The path inside the container to mount the volume.
|
|
6273
|
+
- *Type:* aws-cdk-lib.aws_stepfunctions.IStateMachine
|
|
4763
6274
|
|
|
4764
6275
|
---
|
|
4765
6276
|
|
|
4766
|
-
##### `
|
|
6277
|
+
##### `parameters`<sup>Optional</sup> <a name="parameters" id="@btc-embedded/cdk-extensions.TargetStepFunction.property.parameters"></a>
|
|
4767
6278
|
|
|
4768
6279
|
```typescript
|
|
4769
|
-
public readonly
|
|
6280
|
+
public readonly parameters: TargetStepFunctionParameters;
|
|
4770
6281
|
```
|
|
4771
6282
|
|
|
4772
|
-
- *Type:*
|
|
6283
|
+
- *Type:* <a href="#@btc-embedded/cdk-extensions.TargetStepFunctionParameters">TargetStepFunctionParameters</a>
|
|
4773
6284
|
|
|
4774
|
-
|
|
6285
|
+
---
|
|
4775
6286
|
|
|
4776
|
-
|
|
6287
|
+
### TargetStepFunctionParameters <a name="TargetStepFunctionParameters" id="@btc-embedded/cdk-extensions.TargetStepFunctionParameters"></a>
|
|
6288
|
+
|
|
6289
|
+
Parameters for a step function target.
|
|
6290
|
+
|
|
6291
|
+
#### Initializer <a name="Initializer" id="@btc-embedded/cdk-extensions.TargetStepFunctionParameters.Initializer"></a>
|
|
6292
|
+
|
|
6293
|
+
```typescript
|
|
6294
|
+
import { TargetStepFunctionParameters } from '@btc-embedded/cdk-extensions'
|
|
6295
|
+
|
|
6296
|
+
const targetStepFunctionParameters: TargetStepFunctionParameters = { ... }
|
|
6297
|
+
```
|
|
6298
|
+
|
|
6299
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
6300
|
+
|
|
6301
|
+
| **Name** | **Type** | **Description** |
|
|
6302
|
+
| --- | --- | --- |
|
|
6303
|
+
| <code><a href="#@btc-embedded/cdk-extensions.TargetStepFunctionParameters.property.inputTemplate">inputTemplate</a></code> | <code><a href="#@btc-embedded/cdk-extensions.InputTemplate">InputTemplate</a></code> | *No description.* |
|
|
6304
|
+
| <code><a href="#@btc-embedded/cdk-extensions.TargetStepFunctionParameters.property.invocationType">invocationType</a></code> | <code><a href="#@btc-embedded/cdk-extensions.InvocationType">InvocationType</a></code> | *No description.* |
|
|
4777
6305
|
|
|
4778
6306
|
---
|
|
4779
6307
|
|
|
4780
|
-
##### `
|
|
6308
|
+
##### `inputTemplate`<sup>Optional</sup> <a name="inputTemplate" id="@btc-embedded/cdk-extensions.TargetStepFunctionParameters.property.inputTemplate"></a>
|
|
4781
6309
|
|
|
4782
6310
|
```typescript
|
|
4783
|
-
public readonly
|
|
6311
|
+
public readonly inputTemplate: InputTemplate;
|
|
4784
6312
|
```
|
|
4785
6313
|
|
|
4786
|
-
- *Type:*
|
|
6314
|
+
- *Type:* <a href="#@btc-embedded/cdk-extensions.InputTemplate">InputTemplate</a>
|
|
4787
6315
|
|
|
4788
|
-
|
|
6316
|
+
---
|
|
4789
6317
|
|
|
4790
|
-
|
|
6318
|
+
##### `invocationType`<sup>Optional</sup> <a name="invocationType" id="@btc-embedded/cdk-extensions.TargetStepFunctionParameters.property.invocationType"></a>
|
|
6319
|
+
|
|
6320
|
+
```typescript
|
|
6321
|
+
public readonly invocationType: InvocationType;
|
|
6322
|
+
```
|
|
6323
|
+
|
|
6324
|
+
- *Type:* <a href="#@btc-embedded/cdk-extensions.InvocationType">InvocationType</a>
|
|
4791
6325
|
|
|
4792
6326
|
---
|
|
4793
6327
|
|
|
@@ -5957,6 +7491,237 @@ public readonly serviceName: string;
|
|
|
5957
7491
|
---
|
|
5958
7492
|
|
|
5959
7493
|
|
|
7494
|
+
### DeactivatableServiceExtension <a name="DeactivatableServiceExtension" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension"></a>
|
|
7495
|
+
|
|
7496
|
+
Extension that allows the service to be deactivated, if the environment variable contains its ID.
|
|
7497
|
+
|
|
7498
|
+
Deactivation is implemented by setting the desired count to zero, i.e. the
|
|
7499
|
+
construct is still present in the stack.
|
|
7500
|
+
|
|
7501
|
+
#### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.Initializer"></a>
|
|
7502
|
+
|
|
7503
|
+
```typescript
|
|
7504
|
+
import { DeactivatableServiceExtension } from '@btc-embedded/cdk-extensions'
|
|
7505
|
+
|
|
7506
|
+
new DeactivatableServiceExtension()
|
|
7507
|
+
```
|
|
7508
|
+
|
|
7509
|
+
| **Name** | **Type** | **Description** |
|
|
7510
|
+
| --- | --- | --- |
|
|
7511
|
+
|
|
7512
|
+
---
|
|
7513
|
+
|
|
7514
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
7515
|
+
|
|
7516
|
+
| **Name** | **Description** |
|
|
7517
|
+
| --- | --- |
|
|
7518
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.addContainerMutatingHook">addContainerMutatingHook</a></code> | This hook allows another service extension to register a mutating hook for changing the primary container of this extension. |
|
|
7519
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.addHooks">addHooks</a></code> | A hook that allows the extension to add hooks to other extensions that are registered. |
|
|
7520
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.connectToService">connectToService</a></code> | This hook allows the extension to establish a connection to extensions from another service. |
|
|
7521
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.modifyServiceProps">modifyServiceProps</a></code> | Prior to launching the task definition as a service, this hook is called on each extension to give it a chance to mutate the properties of the service to be created. |
|
|
7522
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.modifyTaskDefinitionProps">modifyTaskDefinitionProps</a></code> | This is a hook which allows extensions to modify the settings of the task definition prior to it being created. |
|
|
7523
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.prehook">prehook</a></code> | A hook that is called for each extension ahead of time to allow for any initial setup, such as creating resources in advance. |
|
|
7524
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.resolveContainerDependencies">resolveContainerDependencies</a></code> | Once all containers are added to the task definition, this hook is called for each extension to give it a chance to resolve its dependency graph so that its container starts in the right order based on the other extensions that were enabled. |
|
|
7525
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.useService">useService</a></code> | When this hook is implemented by extension, it allows the extension to use the service which has been created. |
|
|
7526
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.useTaskDefinition">useTaskDefinition</a></code> | Once the task definition is created, this hook is called for each extension to give it a chance to add containers to the task definition, change the task definition's role to add permissions, etc. |
|
|
7527
|
+
|
|
7528
|
+
---
|
|
7529
|
+
|
|
7530
|
+
##### `addContainerMutatingHook` <a name="addContainerMutatingHook" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.addContainerMutatingHook"></a>
|
|
7531
|
+
|
|
7532
|
+
```typescript
|
|
7533
|
+
public addContainerMutatingHook(hook: ContainerMutatingHook): void
|
|
7534
|
+
```
|
|
7535
|
+
|
|
7536
|
+
This hook allows another service extension to register a mutating hook for changing the primary container of this extension.
|
|
7537
|
+
|
|
7538
|
+
This is primarily used
|
|
7539
|
+
for the application extension. For example, the Firelens extension wants to
|
|
7540
|
+
be able to modify the settings of the application container to
|
|
7541
|
+
route logs through Firelens.
|
|
7542
|
+
|
|
7543
|
+
###### `hook`<sup>Required</sup> <a name="hook" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.addContainerMutatingHook.parameter.hook"></a>
|
|
7544
|
+
|
|
7545
|
+
- *Type:* @aws-cdk-containers/ecs-service-extensions.ContainerMutatingHook
|
|
7546
|
+
|
|
7547
|
+
---
|
|
7548
|
+
|
|
7549
|
+
##### `addHooks` <a name="addHooks" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.addHooks"></a>
|
|
7550
|
+
|
|
7551
|
+
```typescript
|
|
7552
|
+
public addHooks(): void
|
|
7553
|
+
```
|
|
7554
|
+
|
|
7555
|
+
A hook that allows the extension to add hooks to other extensions that are registered.
|
|
7556
|
+
|
|
7557
|
+
##### `connectToService` <a name="connectToService" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.connectToService"></a>
|
|
7558
|
+
|
|
7559
|
+
```typescript
|
|
7560
|
+
public connectToService(service: Service, connectToProps?: ConnectToProps): void
|
|
7561
|
+
```
|
|
7562
|
+
|
|
7563
|
+
This hook allows the extension to establish a connection to extensions from another service.
|
|
7564
|
+
|
|
7565
|
+
Usually used for things like
|
|
7566
|
+
allowing one service to talk to the load balancer or service mesh
|
|
7567
|
+
proxy for another service.
|
|
7568
|
+
|
|
7569
|
+
###### `service`<sup>Required</sup> <a name="service" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.connectToService.parameter.service"></a>
|
|
7570
|
+
|
|
7571
|
+
- *Type:* @aws-cdk-containers/ecs-service-extensions.Service
|
|
7572
|
+
|
|
7573
|
+
The other service to connect to.
|
|
7574
|
+
|
|
7575
|
+
---
|
|
7576
|
+
|
|
7577
|
+
###### `connectToProps`<sup>Optional</sup> <a name="connectToProps" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.connectToService.parameter.connectToProps"></a>
|
|
7578
|
+
|
|
7579
|
+
- *Type:* @aws-cdk-containers/ecs-service-extensions.ConnectToProps
|
|
7580
|
+
|
|
7581
|
+
---
|
|
7582
|
+
|
|
7583
|
+
##### `modifyServiceProps` <a name="modifyServiceProps" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.modifyServiceProps"></a>
|
|
7584
|
+
|
|
7585
|
+
```typescript
|
|
7586
|
+
public modifyServiceProps(props: ServiceBuild): ServiceBuild
|
|
7587
|
+
```
|
|
7588
|
+
|
|
7589
|
+
Prior to launching the task definition as a service, this hook is called on each extension to give it a chance to mutate the properties of the service to be created.
|
|
7590
|
+
|
|
7591
|
+
###### `props`<sup>Required</sup> <a name="props" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.modifyServiceProps.parameter.props"></a>
|
|
7592
|
+
|
|
7593
|
+
- *Type:* @aws-cdk-containers/ecs-service-extensions.ServiceBuild
|
|
7594
|
+
|
|
7595
|
+
---
|
|
7596
|
+
|
|
7597
|
+
##### `modifyTaskDefinitionProps` <a name="modifyTaskDefinitionProps" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.modifyTaskDefinitionProps"></a>
|
|
7598
|
+
|
|
7599
|
+
```typescript
|
|
7600
|
+
public modifyTaskDefinitionProps(props: TaskDefinitionProps): TaskDefinitionProps
|
|
7601
|
+
```
|
|
7602
|
+
|
|
7603
|
+
This is a hook which allows extensions to modify the settings of the task definition prior to it being created.
|
|
7604
|
+
|
|
7605
|
+
For example, the App Mesh
|
|
7606
|
+
extension needs to configure an Envoy proxy in the task definition,
|
|
7607
|
+
or the Application extension wants to set the overall resource for
|
|
7608
|
+
the task.
|
|
7609
|
+
|
|
7610
|
+
###### `props`<sup>Required</sup> <a name="props" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.modifyTaskDefinitionProps.parameter.props"></a>
|
|
7611
|
+
|
|
7612
|
+
- *Type:* aws-cdk-lib.aws_ecs.TaskDefinitionProps
|
|
7613
|
+
|
|
7614
|
+
Properties of the task definition to be created.
|
|
7615
|
+
|
|
7616
|
+
---
|
|
7617
|
+
|
|
7618
|
+
##### `prehook` <a name="prehook" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.prehook"></a>
|
|
7619
|
+
|
|
7620
|
+
```typescript
|
|
7621
|
+
public prehook(parent: Service, scope: Construct): void
|
|
7622
|
+
```
|
|
7623
|
+
|
|
7624
|
+
A hook that is called for each extension ahead of time to allow for any initial setup, such as creating resources in advance.
|
|
7625
|
+
|
|
7626
|
+
###### `parent`<sup>Required</sup> <a name="parent" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.prehook.parameter.parent"></a>
|
|
7627
|
+
|
|
7628
|
+
- *Type:* @aws-cdk-containers/ecs-service-extensions.Service
|
|
7629
|
+
|
|
7630
|
+
The parent service which this extension has been added to.
|
|
7631
|
+
|
|
7632
|
+
---
|
|
7633
|
+
|
|
7634
|
+
###### `scope`<sup>Required</sup> <a name="scope" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.prehook.parameter.scope"></a>
|
|
7635
|
+
|
|
7636
|
+
- *Type:* constructs.Construct
|
|
7637
|
+
|
|
7638
|
+
The scope that this extension should create resources in.
|
|
7639
|
+
|
|
7640
|
+
---
|
|
7641
|
+
|
|
7642
|
+
##### `resolveContainerDependencies` <a name="resolveContainerDependencies" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.resolveContainerDependencies"></a>
|
|
7643
|
+
|
|
7644
|
+
```typescript
|
|
7645
|
+
public resolveContainerDependencies(): void
|
|
7646
|
+
```
|
|
7647
|
+
|
|
7648
|
+
Once all containers are added to the task definition, this hook is called for each extension to give it a chance to resolve its dependency graph so that its container starts in the right order based on the other extensions that were enabled.
|
|
7649
|
+
|
|
7650
|
+
##### `useService` <a name="useService" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.useService"></a>
|
|
7651
|
+
|
|
7652
|
+
```typescript
|
|
7653
|
+
public useService(service: Ec2Service | FargateService): void
|
|
7654
|
+
```
|
|
7655
|
+
|
|
7656
|
+
When this hook is implemented by extension, it allows the extension to use the service which has been created.
|
|
7657
|
+
|
|
7658
|
+
It is generally used to
|
|
7659
|
+
create any final resources which might depend on the service itself.
|
|
7660
|
+
|
|
7661
|
+
###### `service`<sup>Required</sup> <a name="service" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.useService.parameter.service"></a>
|
|
7662
|
+
|
|
7663
|
+
- *Type:* aws-cdk-lib.aws_ecs.Ec2Service | aws-cdk-lib.aws_ecs.FargateService
|
|
7664
|
+
|
|
7665
|
+
The generated service.
|
|
7666
|
+
|
|
7667
|
+
---
|
|
7668
|
+
|
|
7669
|
+
##### `useTaskDefinition` <a name="useTaskDefinition" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.useTaskDefinition"></a>
|
|
7670
|
+
|
|
7671
|
+
```typescript
|
|
7672
|
+
public useTaskDefinition(taskDefinition: TaskDefinition): void
|
|
7673
|
+
```
|
|
7674
|
+
|
|
7675
|
+
Once the task definition is created, this hook is called for each extension to give it a chance to add containers to the task definition, change the task definition's role to add permissions, etc.
|
|
7676
|
+
|
|
7677
|
+
###### `taskDefinition`<sup>Required</sup> <a name="taskDefinition" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.useTaskDefinition.parameter.taskDefinition"></a>
|
|
7678
|
+
|
|
7679
|
+
- *Type:* aws-cdk-lib.aws_ecs.TaskDefinition
|
|
7680
|
+
|
|
7681
|
+
The created task definition to add containers to.
|
|
7682
|
+
|
|
7683
|
+
---
|
|
7684
|
+
|
|
7685
|
+
|
|
7686
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
7687
|
+
|
|
7688
|
+
| **Name** | **Type** | **Description** |
|
|
7689
|
+
| --- | --- | --- |
|
|
7690
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.property.name">name</a></code> | <code>string</code> | The name of the extension. |
|
|
7691
|
+
| <code><a href="#@btc-embedded/cdk-extensions.DeactivatableServiceExtension.property.container">container</a></code> | <code>aws-cdk-lib.aws_ecs.ContainerDefinition</code> | The container for this extension. |
|
|
7692
|
+
|
|
7693
|
+
---
|
|
7694
|
+
|
|
7695
|
+
##### `name`<sup>Required</sup> <a name="name" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.property.name"></a>
|
|
7696
|
+
|
|
7697
|
+
```typescript
|
|
7698
|
+
public readonly name: string;
|
|
7699
|
+
```
|
|
7700
|
+
|
|
7701
|
+
- *Type:* string
|
|
7702
|
+
|
|
7703
|
+
The name of the extension.
|
|
7704
|
+
|
|
7705
|
+
---
|
|
7706
|
+
|
|
7707
|
+
##### `container`<sup>Optional</sup> <a name="container" id="@btc-embedded/cdk-extensions.DeactivatableServiceExtension.property.container"></a>
|
|
7708
|
+
|
|
7709
|
+
```typescript
|
|
7710
|
+
public readonly container: ContainerDefinition;
|
|
7711
|
+
```
|
|
7712
|
+
|
|
7713
|
+
- *Type:* aws-cdk-lib.aws_ecs.ContainerDefinition
|
|
7714
|
+
|
|
7715
|
+
The container for this extension.
|
|
7716
|
+
|
|
7717
|
+
Most extensions have a container, but not
|
|
7718
|
+
every extension is required to have a container. Some extensions may just
|
|
7719
|
+
modify the properties of the service, or create external resources
|
|
7720
|
+
connected to the service.
|
|
7721
|
+
|
|
7722
|
+
---
|
|
7723
|
+
|
|
7724
|
+
|
|
5960
7725
|
### DocumentDbAccessExtension <a name="DocumentDbAccessExtension" id="@btc-embedded/cdk-extensions.DocumentDbAccessExtension"></a>
|
|
5961
7726
|
|
|
5962
7727
|
#### Initializers <a name="Initializers" id="@btc-embedded/cdk-extensions.DocumentDbAccessExtension.Initializer"></a>
|
|
@@ -8813,3 +10578,40 @@ public readonly props: TcpKeepAliveExtensionProps;
|
|
|
8813
10578
|
|
|
8814
10579
|
|
|
8815
10580
|
|
|
10581
|
+
## Enums <a name="Enums" id="Enums"></a>
|
|
10582
|
+
|
|
10583
|
+
### InvocationType <a name="InvocationType" id="@btc-embedded/cdk-extensions.InvocationType"></a>
|
|
10584
|
+
|
|
10585
|
+
The invocation type of the step function.
|
|
10586
|
+
|
|
10587
|
+
#### Members <a name="Members" id="Members"></a>
|
|
10588
|
+
|
|
10589
|
+
| **Name** | **Description** |
|
|
10590
|
+
| --- | --- |
|
|
10591
|
+
| <code><a href="#@btc-embedded/cdk-extensions.InvocationType.REQUEST_RESPONSE">REQUEST_RESPONSE</a></code> | (default) - Invoke synchronously. |
|
|
10592
|
+
| <code><a href="#@btc-embedded/cdk-extensions.InvocationType.FIRE_AND_FORGET">FIRE_AND_FORGET</a></code> | Invoke asynchronously. |
|
|
10593
|
+
|
|
10594
|
+
---
|
|
10595
|
+
|
|
10596
|
+
##### `REQUEST_RESPONSE` <a name="REQUEST_RESPONSE" id="@btc-embedded/cdk-extensions.InvocationType.REQUEST_RESPONSE"></a>
|
|
10597
|
+
|
|
10598
|
+
(default) - Invoke synchronously.
|
|
10599
|
+
|
|
10600
|
+
For more information, see
|
|
10601
|
+
[StartSyncExecution](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartSyncExecution.html)
|
|
10602
|
+
in the *AWS Step Functions API Reference*.
|
|
10603
|
+
> `REQUEST_RESPONSE` is not supported for `STANDARD` state machine workflows.
|
|
10604
|
+
|
|
10605
|
+
---
|
|
10606
|
+
|
|
10607
|
+
|
|
10608
|
+
##### `FIRE_AND_FORGET` <a name="FIRE_AND_FORGET" id="@btc-embedded/cdk-extensions.InvocationType.FIRE_AND_FORGET"></a>
|
|
10609
|
+
|
|
10610
|
+
Invoke asynchronously.
|
|
10611
|
+
|
|
10612
|
+
For more information, see
|
|
10613
|
+
[StartExecution](https://docs.aws.amazon.com/step-functions/latest/apireference/API_StartExecution.html)
|
|
10614
|
+
in the *AWS Step Functions API Reference*.
|
|
10615
|
+
|
|
10616
|
+
---
|
|
10617
|
+
|