@btc-embedded/cdk-extensions 0.15.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/.jsii +151 -149
  2. package/API.md +137 -137
  3. package/CHANGELOG.md +16 -0
  4. package/lib/constructs/EventPipe.js +1 -1
  5. package/lib/constructs/S3Bucket.js +1 -1
  6. package/lib/constructs/SecureRestApi.js +1 -1
  7. package/lib/constructs/SecureRestApiV2.js +1 -1
  8. package/lib/extensions/ApiGatewayExtension.js +1 -1
  9. package/lib/extensions/ApplicationLoadBalancerExtension.js +1 -1
  10. package/lib/extensions/ApplicationLoadBalancerExtensionV2.js +1 -1
  11. package/lib/extensions/CloudMapExtension.js +1 -1
  12. package/lib/extensions/DeactivatableServiceExtension.js +1 -1
  13. package/lib/extensions/DocumentDbAccessExtension.js +1 -1
  14. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  15. package/lib/extensions/EfsMountExtension.js +1 -1
  16. package/lib/extensions/ExtraContainerExtension.js +1 -1
  17. package/lib/extensions/HTTPApiExtension.d.ts +9 -2
  18. package/lib/extensions/HTTPApiExtension.js +22 -21
  19. package/lib/extensions/LogExtension.js +1 -1
  20. package/lib/extensions/ModifyContainerDefinitionExtension.js +1 -1
  21. package/lib/extensions/ModifyTaskDefinitionExtension.js +1 -1
  22. package/lib/extensions/OpenTelemetryExtension.js +1 -1
  23. package/lib/extensions/PostgresDbAccessExtension.d.ts +0 -4
  24. package/lib/extensions/PostgresDbAccessExtension.js +4 -3
  25. package/lib/extensions/SharedVolumeExtension.js +1 -1
  26. package/lib/extensions/TcpKeepAliveExtension.js +1 -1
  27. package/lib/platform/ApiGateway.js +1 -1
  28. package/lib/platform/{ApiGatewayV2.d.ts → ApiGatewayVpcLink.d.ts} +13 -13
  29. package/lib/platform/ApiGatewayVpcLink.js +78 -0
  30. package/lib/platform/ApplicationLoadBalancer.js +1 -1
  31. package/lib/platform/ApplicationLoadBalancerV2.js +2 -2
  32. package/lib/platform/BTCLogGroup.js +1 -1
  33. package/lib/platform/CognitoUserPool.js +2 -2
  34. package/lib/platform/DefaultUserPoolClients.js +1 -1
  35. package/lib/platform/DocumentDB.js +2 -2
  36. package/lib/platform/EfsFileSystem.js +1 -1
  37. package/lib/platform/PrivateDnsNamespace.js +1 -1
  38. package/lib/platform/ResourceServer.js +1 -1
  39. package/lib/platform/Vpc.js +1 -1
  40. package/lib/platform/index.d.ts +1 -1
  41. package/lib/platform/index.js +2 -2
  42. package/lib/utils/StackParameter.js +1 -1
  43. package/package.json +1 -1
  44. package/lib/platform/ApiGatewayV2.js +0 -78
@@ -1,78 +0,0 @@
1
- "use strict";
2
- var _a, _b;
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.ApiGatewayV2 = exports.ApiGatewayV2Base = void 0;
5
- const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
- const aws_apigatewayv2_1 = require("aws-cdk-lib/aws-apigatewayv2");
7
- const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
8
- const constructs_1 = require("constructs");
9
- const utils_1 = require("../utils");
10
- class ApiGatewayV2Base extends constructs_1.Construct {
11
- allowAccessTo(other, port, description = "Allow HTTP Traffic") {
12
- this.securityGroup.connections.allowTo(other, aws_ec2_1.Port.tcp(port), description);
13
- }
14
- }
15
- exports.ApiGatewayV2Base = ApiGatewayV2Base;
16
- _a = JSII_RTTI_SYMBOL_1;
17
- ApiGatewayV2Base[_a] = { fqn: "@btc-embedded/cdk-extensions.ApiGatewayV2Base", version: "0.15.0" };
18
- /**
19
- * Constructs an API Gateway V2 resource for use in base platforms.
20
- *
21
- * This construct creates:
22
- * - A VPC Link for the API Gateway to connect to services within the specified VPC.
23
- * - A Security Group associated with the VPC Link to control network traffic.
24
- *
25
- * Additionally, the following parameters are exposed as CloudFormation outputs:
26
- * - The VPC Link ID.
27
- * - The Security Group ID.
28
- *
29
- * These outputs can be utilized by other CDK extensions provided in this library.
30
- */
31
- class ApiGatewayV2 extends ApiGatewayV2Base {
32
- static fromBasePlatform(scope, id, options) {
33
- const { vpc, basePlatform } = options;
34
- const vpcLink = aws_apigatewayv2_1.VpcLink.fromVpcLinkAttributes(scope, "VPCLink", {
35
- vpc,
36
- vpcLinkId: ApiGatewayV2.vpcLinkParameter.import(basePlatform),
37
- });
38
- const securityGroup = aws_ec2_1.SecurityGroup.fromSecurityGroupId(scope, "SecurityGroup", ApiGatewayV2.securityGroupIdParameter.import(basePlatform), { allowAllOutbound: false });
39
- class Import extends ApiGatewayV2Base {
40
- constructor() {
41
- super(...arguments);
42
- this.securityGroup = securityGroup;
43
- this.vpcLink = vpcLink;
44
- }
45
- }
46
- return new Import(scope, id);
47
- }
48
- constructor(scope, id, props) {
49
- super(scope, id);
50
- this.securityGroup = new aws_ec2_1.SecurityGroup(this, "VpcLinkSecurityGroup", {
51
- vpc: props.vpc,
52
- allowAllOutbound: false,
53
- });
54
- this.vpcLink = new aws_apigatewayv2_1.VpcLink(this, "VpcLink", {
55
- vpc: props.vpc,
56
- vpcLinkName: props.vpcLinkName,
57
- securityGroups: [this.securityGroup],
58
- });
59
- ApiGatewayV2.vpcLinkParameter.export(this, this.vpcLink.vpcLinkId);
60
- ApiGatewayV2.securityGroupIdParameter.export(this, this.securityGroup.securityGroupId);
61
- }
62
- }
63
- exports.ApiGatewayV2 = ApiGatewayV2;
64
- _b = JSII_RTTI_SYMBOL_1;
65
- ApiGatewayV2[_b] = { fqn: "@btc-embedded/cdk-extensions.ApiGatewayV2", version: "0.15.0" };
66
- ApiGatewayV2.vpcLinkParameter = new utils_1.StackParameter({
67
- name: "APIGateway VPCLink Id",
68
- key: "vpc-link-id",
69
- prefix: "api-gateway",
70
- version: 2,
71
- });
72
- ApiGatewayV2.securityGroupIdParameter = new utils_1.StackParameter({
73
- name: "APIGateway Security Group Id",
74
- key: "security-group-id",
75
- prefix: "api-gateway",
76
- version: 2,
77
- });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpR2F0ZXdheVYyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BsYXRmb3JtL0FwaUdhdGV3YXlWMi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1FQUFpRTtBQUNqRSxpREFNNkI7QUFDN0IsMkNBQXVDO0FBQ3ZDLG9DQUEwQztBQXlCMUMsTUFBc0IsZ0JBQ3BCLFNBQVEsc0JBQVM7SUFNakIsYUFBYSxDQUNYLEtBQW1CLEVBQ25CLElBQVksRUFDWixjQUFzQixvQkFBb0I7UUFFMUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxjQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzdFLENBQUM7O0FBYkgsNENBY0M7OztBQUNEOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE1BQWEsWUFBYSxTQUFRLGdCQUFnQjtJQUN6QyxNQUFNLENBQUMsZ0JBQWdCLENBQzVCLEtBQWdCLEVBQ2hCLEVBQVUsRUFDVixPQUFrQztRQUVsQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUV0QyxNQUFNLE9BQU8sR0FBRywwQkFBTyxDQUFDLHFCQUFxQixDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUU7WUFDOUQsR0FBRztZQUNILFNBQVMsRUFBRSxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQztTQUM5RCxDQUFDLENBQUM7UUFFSCxNQUFNLGFBQWEsR0FBRyx1QkFBYSxDQUFDLG1CQUFtQixDQUNyRCxLQUFLLEVBQ0wsZUFBZSxFQUNmLFlBQVksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQzFELEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLENBQzVCLENBQUM7UUFFRixNQUFNLE1BQU8sU0FBUSxnQkFBZ0I7WUFBckM7O2dCQUNrQixrQkFBYSxHQUFtQixhQUFhLENBQUM7Z0JBQzlDLFlBQU8sR0FBYSxPQUFPLENBQUM7WUFDOUMsQ0FBQztTQUFBO1FBRUQsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQW1CRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXdCO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLHVCQUFhLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFO1lBQ25FLEdBQUcsRUFBRSxLQUFLLENBQUMsR0FBRztZQUNkLGdCQUFnQixFQUFFLEtBQUs7U0FDeEIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLDBCQUFPLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRTtZQUMxQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUc7WUFDZCxXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsY0FBYyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztTQUNyQyxDQUFDLENBQUM7UUFFSCxZQUFZLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ25FLFlBQVksQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQzFDLElBQUksRUFDSixJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FDbkMsQ0FBQztJQUNKLENBQUM7O0FBaEVILG9DQWlFQzs7O0FBckN5Qiw2QkFBZ0IsR0FBRyxJQUFJLHNCQUFjLENBQUM7SUFDNUQsSUFBSSxFQUFFLHVCQUF1QjtJQUM3QixHQUFHLEVBQUUsYUFBYTtJQUNsQixNQUFNLEVBQUUsYUFBYTtJQUNyQixPQUFPLEVBQUUsQ0FBQztDQUNYLENBQUMsQ0FBQztBQUVxQixxQ0FBd0IsR0FBRyxJQUFJLHNCQUFjLENBQUM7SUFDcEUsSUFBSSxFQUFFLDhCQUE4QjtJQUNwQyxHQUFHLEVBQUUsbUJBQW1CO0lBQ3hCLE1BQU0sRUFBRSxhQUFhO0lBQ3JCLE9BQU8sRUFBRSxDQUFDO0NBQ1gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVZwY0xpbmssIFZwY0xpbmsgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWFwaWdhdGV3YXl2MlwiO1xuaW1wb3J0IHtcbiAgSUNvbm5lY3RhYmxlLFxuICBJU2VjdXJpdHlHcm91cCxcbiAgSVZwYyxcbiAgUG9ydCxcbiAgU2VjdXJpdHlHcm91cCxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBTdGFja1BhcmFtZXRlciB9IGZyb20gXCIuLi91dGlsc1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUdhdGV3YXlQcm9wc1YyIHtcbiAgLyoqXG4gICAqIFZQQyB3aGVyZSB0aGUgQVBJIEdXIFNlY3VyaXR5IGdyb3VwIGFuZCBWUEMgTGluayB3aWxsIGJlIGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSB2cGM6IElWcGM7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIG5hbWUgZm9yIHRoZSBWUEMgTGluay5cbiAgICovXG4gIHJlYWRvbmx5IHZwY0xpbmtOYW1lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBcGlHYXRld2F5VjIge1xuICByZWFkb25seSB2cGNMaW5rOiBJVnBjTGluaztcbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cDogSVNlY3VyaXR5R3JvdXA7XG4gIGFsbG93QWNjZXNzVG8oc291cmNlOiBJQ29ubmVjdGFibGUsIHBvcnQ6IG51bWJlciwgZGVzY3JpcHRpb24/OiBzdHJpbmcpOiB2b2lkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUdhdGV3YXlWMkxvb2t1cE9wdGlvbnMge1xuICByZWFkb25seSBiYXNlUGxhdGZvcm06IHN0cmluZztcbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQXBpR2F0ZXdheVYyQmFzZVxuICBleHRlbmRzIENvbnN0cnVjdFxuICBpbXBsZW1lbnRzIElBcGlHYXRld2F5VjJcbntcbiAgYWJzdHJhY3QgcmVhZG9ubHkgdnBjTGluazogSVZwY0xpbms7XG4gIGFic3RyYWN0IHJlYWRvbmx5IHNlY3VyaXR5R3JvdXA6IElTZWN1cml0eUdyb3VwO1xuXG4gIGFsbG93QWNjZXNzVG8oXG4gICAgb3RoZXI6IElDb25uZWN0YWJsZSxcbiAgICBwb3J0OiBudW1iZXIsXG4gICAgZGVzY3JpcHRpb246IHN0cmluZyA9IFwiQWxsb3cgSFRUUCBUcmFmZmljXCIsXG4gICkge1xuICAgIHRoaXMuc2VjdXJpdHlHcm91cC5jb25uZWN0aW9ucy5hbGxvd1RvKG90aGVyLCBQb3J0LnRjcChwb3J0KSwgZGVzY3JpcHRpb24pO1xuICB9XG59XG4vKipcbiAqIENvbnN0cnVjdHMgYW4gQVBJIEdhdGV3YXkgVjIgcmVzb3VyY2UgZm9yIHVzZSBpbiBiYXNlIHBsYXRmb3Jtcy5cbiAqXG4gKiBUaGlzIGNvbnN0cnVjdCBjcmVhdGVzOlxuICogLSBBIFZQQyBMaW5rIGZvciB0aGUgQVBJIEdhdGV3YXkgdG8gY29ubmVjdCB0byBzZXJ2aWNlcyB3aXRoaW4gdGhlIHNwZWNpZmllZCBWUEMuXG4gKiAtIEEgU2VjdXJpdHkgR3JvdXAgYXNzb2NpYXRlZCB3aXRoIHRoZSBWUEMgTGluayB0byBjb250cm9sIG5ldHdvcmsgdHJhZmZpYy5cbiAqXG4gKiBBZGRpdGlvbmFsbHksIHRoZSBmb2xsb3dpbmcgcGFyYW1ldGVycyBhcmUgZXhwb3NlZCBhcyBDbG91ZEZvcm1hdGlvbiBvdXRwdXRzOlxuICogLSBUaGUgVlBDIExpbmsgSUQuXG4gKiAtIFRoZSBTZWN1cml0eSBHcm91cCBJRC5cbiAqXG4gKiBUaGVzZSBvdXRwdXRzIGNhbiBiZSB1dGlsaXplZCBieSBvdGhlciBDREsgZXh0ZW5zaW9ucyBwcm92aWRlZCBpbiB0aGlzIGxpYnJhcnkuXG4gKi9cbmV4cG9ydCBjbGFzcyBBcGlHYXRld2F5VjIgZXh0ZW5kcyBBcGlHYXRld2F5VjJCYXNlIHtcbiAgcHVibGljIHN0YXRpYyBmcm9tQmFzZVBsYXRmb3JtKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBvcHRpb25zOiBBcGlHYXRld2F5VjJMb29rdXBPcHRpb25zLFxuICApOiBJQXBpR2F0ZXdheVYyIHtcbiAgICBjb25zdCB7IHZwYywgYmFzZVBsYXRmb3JtIH0gPSBvcHRpb25zO1xuXG4gICAgY29uc3QgdnBjTGluayA9IFZwY0xpbmsuZnJvbVZwY0xpbmtBdHRyaWJ1dGVzKHNjb3BlLCBcIlZQQ0xpbmtcIiwge1xuICAgICAgdnBjLFxuICAgICAgdnBjTGlua0lkOiBBcGlHYXRld2F5VjIudnBjTGlua1BhcmFtZXRlci5pbXBvcnQoYmFzZVBsYXRmb3JtKSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHNlY3VyaXR5R3JvdXAgPSBTZWN1cml0eUdyb3VwLmZyb21TZWN1cml0eUdyb3VwSWQoXG4gICAgICBzY29wZSxcbiAgICAgIFwiU2VjdXJpdHlHcm91cFwiLFxuICAgICAgQXBpR2F0ZXdheVYyLnNlY3VyaXR5R3JvdXBJZFBhcmFtZXRlci5pbXBvcnQoYmFzZVBsYXRmb3JtKSxcbiAgICAgIHsgYWxsb3dBbGxPdXRib3VuZDogZmFsc2UgfSwgLy8gc2VlIGJlbG93XG4gICAgKTtcblxuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIEFwaUdhdGV3YXlWMkJhc2Uge1xuICAgICAgcHVibGljIHJlYWRvbmx5IHNlY3VyaXR5R3JvdXA6IElTZWN1cml0eUdyb3VwID0gc2VjdXJpdHlHcm91cDtcbiAgICAgIHB1YmxpYyByZWFkb25seSB2cGNMaW5rOiBJVnBjTGluayA9IHZwY0xpbms7XG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBJbXBvcnQoc2NvcGUsIGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIHJlYWRvbmx5IHZwY0xpbmtQYXJhbWV0ZXIgPSBuZXcgU3RhY2tQYXJhbWV0ZXIoe1xuICAgIG5hbWU6IFwiQVBJR2F0ZXdheSBWUENMaW5rIElkXCIsXG4gICAga2V5OiBcInZwYy1saW5rLWlkXCIsXG4gICAgcHJlZml4OiBcImFwaS1nYXRld2F5XCIsXG4gICAgdmVyc2lvbjogMixcbiAgfSk7XG5cbiAgcHJpdmF0ZSBzdGF0aWMgcmVhZG9ubHkgc2VjdXJpdHlHcm91cElkUGFyYW1ldGVyID0gbmV3IFN0YWNrUGFyYW1ldGVyKHtcbiAgICBuYW1lOiBcIkFQSUdhdGV3YXkgU2VjdXJpdHkgR3JvdXAgSWRcIixcbiAgICBrZXk6IFwic2VjdXJpdHktZ3JvdXAtaWRcIixcbiAgICBwcmVmaXg6IFwiYXBpLWdhdGV3YXlcIixcbiAgICB2ZXJzaW9uOiAyLFxuICB9KTtcblxuICBwdWJsaWMgcmVhZG9ubHkgc2VjdXJpdHlHcm91cDogSVNlY3VyaXR5R3JvdXA7XG4gIHB1YmxpYyByZWFkb25seSB2cGNMaW5rOiBJVnBjTGluaztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXBpR2F0ZXdheVByb3BzVjIpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy5zZWN1cml0eUdyb3VwID0gbmV3IFNlY3VyaXR5R3JvdXAodGhpcywgXCJWcGNMaW5rU2VjdXJpdHlHcm91cFwiLCB7XG4gICAgICB2cGM6IHByb3BzLnZwYyxcbiAgICAgIGFsbG93QWxsT3V0Ym91bmQ6IGZhbHNlLFxuICAgIH0pO1xuXG4gICAgdGhpcy52cGNMaW5rID0gbmV3IFZwY0xpbmsodGhpcywgXCJWcGNMaW5rXCIsIHtcbiAgICAgIHZwYzogcHJvcHMudnBjLFxuICAgICAgdnBjTGlua05hbWU6IHByb3BzLnZwY0xpbmtOYW1lLFxuICAgICAgc2VjdXJpdHlHcm91cHM6IFt0aGlzLnNlY3VyaXR5R3JvdXBdLFxuICAgIH0pO1xuXG4gICAgQXBpR2F0ZXdheVYyLnZwY0xpbmtQYXJhbWV0ZXIuZXhwb3J0KHRoaXMsIHRoaXMudnBjTGluay52cGNMaW5rSWQpO1xuICAgIEFwaUdhdGV3YXlWMi5zZWN1cml0eUdyb3VwSWRQYXJhbWV0ZXIuZXhwb3J0KFxuICAgICAgdGhpcyxcbiAgICAgIHRoaXMuc2VjdXJpdHlHcm91cC5zZWN1cml0eUdyb3VwSWQsXG4gICAgKTtcbiAgfVxufVxuIl19