@btc-embedded/cdk-extensions 0.3.0 → 0.4.1

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 (37) hide show
  1. package/.jsii +858 -208
  2. package/API.md +1016 -116
  3. package/CHANGELOG.md +29 -0
  4. package/lib/extensions/ApiGatewayExtension.js +3 -7
  5. package/lib/extensions/ApplicationLoadBalancerExtension.js +4 -4
  6. package/lib/extensions/CloudMapExtension.d.ts +1 -0
  7. package/lib/extensions/CloudMapExtension.js +6 -8
  8. package/lib/extensions/DocumentDbAccessExtension.js +5 -6
  9. package/lib/extensions/DomainEventMessagingExtension.js +1 -1
  10. package/lib/extensions/ExtraContainerExtension.d.ts +24 -0
  11. package/lib/extensions/ExtraContainerExtension.js +6 -2
  12. package/lib/extensions/LogExtension.js +4 -6
  13. package/lib/extensions/PostgresDbAccessExtension.d.ts +22 -0
  14. package/lib/extensions/PostgresDbAccessExtension.js +52 -0
  15. package/lib/extensions/SharedVolumeExtension.d.ts +30 -0
  16. package/lib/extensions/SharedVolumeExtension.js +36 -0
  17. package/lib/extensions/TcpKeepAliveExtension.js +5 -7
  18. package/lib/extensions/index.d.ts +3 -1
  19. package/lib/extensions/index.js +4 -2
  20. package/lib/platform/ApiGateway.d.ts +1 -1
  21. package/lib/platform/ApiGateway.js +2 -2
  22. package/lib/platform/ApplicationLoadBalancer.d.ts +2 -0
  23. package/lib/platform/ApplicationLoadBalancer.js +11 -9
  24. package/lib/platform/DefaultUserPoolClients.d.ts +1 -0
  25. package/lib/platform/DefaultUserPoolClients.js +11 -4
  26. package/lib/platform/DocumentDB.js +1 -1
  27. package/lib/platform/PrivateDnsNamespace.d.ts +17 -0
  28. package/lib/platform/PrivateDnsNamespace.js +50 -0
  29. package/lib/platform/Vpc.d.ts +13 -0
  30. package/lib/platform/Vpc.js +44 -0
  31. package/lib/platform/index.d.ts +2 -1
  32. package/lib/platform/index.js +3 -2
  33. package/lib/utils/functions.d.ts +9 -0
  34. package/lib/utils/functions.js +14 -0
  35. package/lib/utils/index.d.ts +1 -0
  36. package/lib/utils/index.js +2 -1
  37. package/package.json +1 -1
package/.jsii CHANGED
@@ -4170,7 +4170,7 @@
4170
4170
  "abstract": true,
4171
4171
  "docs": {
4172
4172
  "stability": "experimental",
4173
- "summary": "Hosted Zone where the A record for the domain will be created."
4173
+ "summary": "Hosted Zone to create the gateway domain A record."
4174
4174
  },
4175
4175
  "immutable": true,
4176
4176
  "locationInModule": {
@@ -4285,7 +4285,7 @@
4285
4285
  },
4286
4286
  "locationInModule": {
4287
4287
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4288
- "line": 38
4288
+ "line": 40
4289
4289
  },
4290
4290
  "parameters": [
4291
4291
  {
@@ -4311,7 +4311,7 @@
4311
4311
  "kind": "class",
4312
4312
  "locationInModule": {
4313
4313
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4314
- "line": 31
4314
+ "line": 33
4315
4315
  },
4316
4316
  "name": "ApplicationLoadBalancer",
4317
4317
  "properties": [
@@ -4322,7 +4322,7 @@
4322
4322
  "immutable": true,
4323
4323
  "locationInModule": {
4324
4324
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4325
- "line": 32
4325
+ "line": 34
4326
4326
  },
4327
4327
  "name": "loadbalancer",
4328
4328
  "type": {
@@ -4336,7 +4336,7 @@
4336
4336
  "immutable": true,
4337
4337
  "locationInModule": {
4338
4338
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4339
- "line": 34
4339
+ "line": 36
4340
4340
  },
4341
4341
  "name": "loadBalancer",
4342
4342
  "type": {
@@ -4647,7 +4647,7 @@
4647
4647
  "kind": "interface",
4648
4648
  "locationInModule": {
4649
4649
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4650
- "line": 23
4650
+ "line": 24
4651
4651
  },
4652
4652
  "name": "ApplicationLoadBalancerProps",
4653
4653
  "properties": [
@@ -4659,7 +4659,7 @@
4659
4659
  "immutable": true,
4660
4660
  "locationInModule": {
4661
4661
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4662
- "line": 24
4662
+ "line": 25
4663
4663
  },
4664
4664
  "name": "fqdn",
4665
4665
  "type": {
@@ -4674,11 +4674,11 @@
4674
4674
  "immutable": true,
4675
4675
  "locationInModule": {
4676
4676
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4677
- "line": 26
4677
+ "line": 30
4678
4678
  },
4679
- "name": "userPool",
4679
+ "name": "hostedZone",
4680
4680
  "type": {
4681
- "fqn": "aws-cdk-lib.aws_cognito.IUserPool"
4681
+ "fqn": "aws-cdk-lib.aws_route53.IHostedZone"
4682
4682
  }
4683
4683
  },
4684
4684
  {
@@ -4691,9 +4691,9 @@
4691
4691
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4692
4692
  "line": 27
4693
4693
  },
4694
- "name": "userPoolClient",
4694
+ "name": "userPool",
4695
4695
  "type": {
4696
- "fqn": "aws-cdk-lib.aws_cognito.IUserPoolClient"
4696
+ "fqn": "aws-cdk-lib.aws_cognito.IUserPool"
4697
4697
  }
4698
4698
  },
4699
4699
  {
@@ -4706,9 +4706,9 @@
4706
4706
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4707
4707
  "line": 28
4708
4708
  },
4709
- "name": "userPoolDomain",
4709
+ "name": "userPoolClient",
4710
4710
  "type": {
4711
- "fqn": "aws-cdk-lib.aws_cognito.IUserPoolDomain"
4711
+ "fqn": "aws-cdk-lib.aws_cognito.IUserPoolClient"
4712
4712
  }
4713
4713
  },
4714
4714
  {
@@ -4719,75 +4719,30 @@
4719
4719
  "immutable": true,
4720
4720
  "locationInModule": {
4721
4721
  "filename": "src/platform/ApplicationLoadBalancer.ts",
4722
- "line": 25
4722
+ "line": 29
4723
4723
  },
4724
- "name": "vpc",
4724
+ "name": "userPoolDomain",
4725
4725
  "type": {
4726
- "fqn": "aws-cdk-lib.aws_ec2.IVpc"
4726
+ "fqn": "aws-cdk-lib.aws_cognito.IUserPoolDomain"
4727
4727
  }
4728
- }
4729
- ],
4730
- "symbolId": "src/platform/ApplicationLoadBalancer:ApplicationLoadBalancerProps"
4731
- },
4732
- "@btc-embedded/cdk-extensions.CloudMap": {
4733
- "assembly": "@btc-embedded/cdk-extensions",
4734
- "base": "constructs.Construct",
4735
- "docs": {
4736
- "stability": "experimental"
4737
- },
4738
- "fqn": "@btc-embedded/cdk-extensions.CloudMap",
4739
- "initializer": {
4740
- "docs": {
4741
- "stability": "experimental"
4742
- },
4743
- "locationInModule": {
4744
- "filename": "src/platform/CloudMap.ts",
4745
- "line": 19
4746
4728
  },
4747
- "parameters": [
4748
- {
4749
- "name": "scope",
4750
- "type": {
4751
- "fqn": "constructs.Construct"
4752
- }
4753
- },
4754
- {
4755
- "name": "id",
4756
- "type": {
4757
- "primitive": "string"
4758
- }
4759
- },
4760
- {
4761
- "name": "props",
4762
- "type": {
4763
- "fqn": "@btc-embedded/cdk-extensions.CloudMapProps"
4764
- }
4765
- }
4766
- ]
4767
- },
4768
- "kind": "class",
4769
- "locationInModule": {
4770
- "filename": "src/platform/CloudMap.ts",
4771
- "line": 17
4772
- },
4773
- "name": "CloudMap",
4774
- "properties": [
4775
4729
  {
4730
+ "abstract": true,
4776
4731
  "docs": {
4777
4732
  "stability": "experimental"
4778
4733
  },
4779
4734
  "immutable": true,
4780
4735
  "locationInModule": {
4781
- "filename": "src/platform/CloudMap.ts",
4782
- "line": 18
4736
+ "filename": "src/platform/ApplicationLoadBalancer.ts",
4737
+ "line": 26
4783
4738
  },
4784
- "name": "namespace",
4739
+ "name": "vpc",
4785
4740
  "type": {
4786
- "fqn": "aws-cdk-lib.aws_servicediscovery.PrivateDnsNamespace"
4741
+ "fqn": "aws-cdk-lib.aws_ec2.IVpc"
4787
4742
  }
4788
4743
  }
4789
4744
  ],
4790
- "symbolId": "src/platform/CloudMap:CloudMap"
4745
+ "symbolId": "src/platform/ApplicationLoadBalancer:ApplicationLoadBalancerProps"
4791
4746
  },
4792
4747
  "@btc-embedded/cdk-extensions.CloudMapExtension": {
4793
4748
  "assembly": "@btc-embedded/cdk-extensions",
@@ -4802,7 +4757,7 @@
4802
4757
  },
4803
4758
  "locationInModule": {
4804
4759
  "filename": "src/extensions/CloudMapExtension.ts",
4805
- "line": 25
4760
+ "line": 28
4806
4761
  },
4807
4762
  "parameters": [
4808
4763
  {
@@ -4816,7 +4771,7 @@
4816
4771
  "kind": "class",
4817
4772
  "locationInModule": {
4818
4773
  "filename": "src/extensions/CloudMapExtension.ts",
4819
- "line": 22
4774
+ "line": 23
4820
4775
  },
4821
4776
  "methods": [
4822
4777
  {
@@ -4826,7 +4781,7 @@
4826
4781
  },
4827
4782
  "locationInModule": {
4828
4783
  "filename": "src/extensions/CloudMapExtension.ts",
4829
- "line": 118
4784
+ "line": 119
4830
4785
  },
4831
4786
  "name": "connectToService",
4832
4787
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -4853,7 +4808,7 @@
4853
4808
  },
4854
4809
  "locationInModule": {
4855
4810
  "filename": "src/extensions/CloudMapExtension.ts",
4856
- "line": 31
4811
+ "line": 34
4857
4812
  },
4858
4813
  "name": "modifyServiceProps",
4859
4814
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -4879,7 +4834,7 @@
4879
4834
  },
4880
4835
  "locationInModule": {
4881
4836
  "filename": "src/extensions/CloudMapExtension.ts",
4882
- "line": 72
4837
+ "line": 77
4883
4838
  },
4884
4839
  "name": "useService",
4885
4840
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -4910,12 +4865,25 @@
4910
4865
  },
4911
4866
  "locationInModule": {
4912
4867
  "filename": "src/extensions/CloudMapExtension.ts",
4913
- "line": 23
4868
+ "line": 24
4914
4869
  },
4915
4870
  "name": "props",
4916
4871
  "type": {
4917
4872
  "fqn": "@btc-embedded/cdk-extensions.CloudMapExtensionProps"
4918
4873
  }
4874
+ },
4875
+ {
4876
+ "docs": {
4877
+ "stability": "experimental"
4878
+ },
4879
+ "locationInModule": {
4880
+ "filename": "src/extensions/CloudMapExtension.ts",
4881
+ "line": 26
4882
+ },
4883
+ "name": "serviceName",
4884
+ "type": {
4885
+ "primitive": "string"
4886
+ }
4919
4887
  }
4920
4888
  ],
4921
4889
  "symbolId": "src/extensions/CloudMapExtension:CloudMapExtension"
@@ -4930,7 +4898,7 @@
4930
4898
  "kind": "interface",
4931
4899
  "locationInModule": {
4932
4900
  "filename": "src/extensions/CloudMapExtension.ts",
4933
- "line": 18
4901
+ "line": 19
4934
4902
  },
4935
4903
  "name": "CloudMapExtensionProps",
4936
4904
  "properties": [
@@ -4942,7 +4910,7 @@
4942
4910
  "immutable": true,
4943
4911
  "locationInModule": {
4944
4912
  "filename": "src/extensions/CloudMapExtension.ts",
4945
- "line": 19
4913
+ "line": 20
4946
4914
  },
4947
4915
  "name": "platformStackName",
4948
4916
  "type": {
@@ -4952,53 +4920,59 @@
4952
4920
  ],
4953
4921
  "symbolId": "src/extensions/CloudMapExtension:CloudMapExtensionProps"
4954
4922
  },
4955
- "@btc-embedded/cdk-extensions.CloudMapProps": {
4923
+ "@btc-embedded/cdk-extensions.ContainerDependency": {
4956
4924
  "assembly": "@btc-embedded/cdk-extensions",
4957
4925
  "datatype": true,
4958
4926
  "docs": {
4959
- "stability": "experimental"
4927
+ "see": "https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDependency.html",
4928
+ "stability": "experimental",
4929
+ "summary": "The details of a dependency on another container in the task definition."
4960
4930
  },
4961
- "fqn": "@btc-embedded/cdk-extensions.CloudMapProps",
4931
+ "fqn": "@btc-embedded/cdk-extensions.ContainerDependency",
4962
4932
  "kind": "interface",
4963
4933
  "locationInModule": {
4964
- "filename": "src/platform/CloudMap.ts",
4965
- "line": 12
4934
+ "filename": "src/extensions/ExtraContainerExtension.ts",
4935
+ "line": 11
4966
4936
  },
4967
- "name": "CloudMapProps",
4937
+ "name": "ContainerDependency",
4968
4938
  "properties": [
4969
4939
  {
4970
4940
  "abstract": true,
4971
4941
  "docs": {
4972
- "stability": "experimental"
4942
+ "stability": "experimental",
4943
+ "summary": "The container extension to depend on."
4973
4944
  },
4974
4945
  "immutable": true,
4975
4946
  "locationInModule": {
4976
- "filename": "src/platform/CloudMap.ts",
4977
- "line": 14
4947
+ "filename": "src/extensions/ExtraContainerExtension.ts",
4948
+ "line": 15
4978
4949
  },
4979
- "name": "vpc",
4950
+ "name": "ext",
4980
4951
  "type": {
4981
- "fqn": "aws-cdk-lib.aws_ec2.IVpc"
4952
+ "fqn": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension"
4982
4953
  }
4983
4954
  },
4984
4955
  {
4985
4956
  "abstract": true,
4986
4957
  "docs": {
4987
- "stability": "experimental"
4958
+ "default": "ContainerDependencyCondition.HEALTHY",
4959
+ "remarks": "Valid values are ContainerDependencyCondition.START, ContainerDependencyCondition.COMPLETE,\nContainerDependencyCondition.SUCCESS and ContainerDependencyCondition.HEALTHY.",
4960
+ "stability": "experimental",
4961
+ "summary": "The state the container needs to be in to satisfy the dependency and proceed with startup."
4988
4962
  },
4989
4963
  "immutable": true,
4990
4964
  "locationInModule": {
4991
- "filename": "src/platform/CloudMap.ts",
4992
- "line": 13
4965
+ "filename": "src/extensions/ExtraContainerExtension.ts",
4966
+ "line": 24
4993
4967
  },
4994
- "name": "privateDnsNamespace",
4968
+ "name": "condition",
4995
4969
  "optional": true,
4996
4970
  "type": {
4997
- "fqn": "@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps"
4971
+ "fqn": "aws-cdk-lib.aws_ecs.ContainerDependencyCondition"
4998
4972
  }
4999
4973
  }
5000
4974
  ],
5001
- "symbolId": "src/platform/CloudMap:CloudMapProps"
4975
+ "symbolId": "src/extensions/ExtraContainerExtension:ContainerDependency"
5002
4976
  },
5003
4977
  "@btc-embedded/cdk-extensions.ContainerProps": {
5004
4978
  "assembly": "@btc-embedded/cdk-extensions",
@@ -5013,10 +4987,32 @@
5013
4987
  "kind": "interface",
5014
4988
  "locationInModule": {
5015
4989
  "filename": "src/extensions/ExtraContainerExtension.ts",
5016
- "line": 6
4990
+ "line": 27
5017
4991
  },
5018
4992
  "name": "ContainerProps",
5019
4993
  "properties": [
4994
+ {
4995
+ "abstract": true,
4996
+ "docs": {
4997
+ "stability": "experimental",
4998
+ "summary": "Specify additional container dependencies which should be added after the container has been created in the task definition."
4999
+ },
5000
+ "immutable": true,
5001
+ "locationInModule": {
5002
+ "filename": "src/extensions/ExtraContainerExtension.ts",
5003
+ "line": 39
5004
+ },
5005
+ "name": "containerDependencies",
5006
+ "optional": true,
5007
+ "type": {
5008
+ "collection": {
5009
+ "elementtype": {
5010
+ "fqn": "@btc-embedded/cdk-extensions.ContainerDependency"
5011
+ },
5012
+ "kind": "array"
5013
+ }
5014
+ }
5015
+ },
5020
5016
  {
5021
5017
  "abstract": true,
5022
5018
  "docs": {
@@ -5027,7 +5023,7 @@
5027
5023
  "immutable": true,
5028
5024
  "locationInModule": {
5029
5025
  "filename": "src/extensions/ExtraContainerExtension.ts",
5030
- "line": 12
5026
+ "line": 33
5031
5027
  },
5032
5028
  "name": "logGroup",
5033
5029
  "optional": true,
@@ -5052,7 +5048,7 @@
5052
5048
  },
5053
5049
  "locationInModule": {
5054
5050
  "filename": "src/platform/DefaultUserPoolClients.ts",
5055
- "line": 26
5051
+ "line": 27
5056
5052
  },
5057
5053
  "parameters": [
5058
5054
  {
@@ -5078,7 +5074,7 @@
5078
5074
  "kind": "class",
5079
5075
  "locationInModule": {
5080
5076
  "filename": "src/platform/DefaultUserPoolClients.ts",
5081
- "line": 22
5077
+ "line": 23
5082
5078
  },
5083
5079
  "name": "DefaultUserPoolClients",
5084
5080
  "properties": [
@@ -5088,7 +5084,7 @@
5088
5084
  },
5089
5085
  "locationInModule": {
5090
5086
  "filename": "src/platform/DefaultUserPoolClients.ts",
5091
- "line": 24
5087
+ "line": 25
5092
5088
  },
5093
5089
  "name": "apiClient",
5094
5090
  "type": {
@@ -5101,7 +5097,7 @@
5101
5097
  },
5102
5098
  "locationInModule": {
5103
5099
  "filename": "src/platform/DefaultUserPoolClients.ts",
5104
- "line": 23
5100
+ "line": 24
5105
5101
  },
5106
5102
  "name": "frontendClient",
5107
5103
  "type": {
@@ -5194,6 +5190,27 @@
5194
5190
  "type": {
5195
5191
  "fqn": "aws-cdk-lib.aws_cognito.IUserPool"
5196
5192
  }
5193
+ },
5194
+ {
5195
+ "abstract": true,
5196
+ "docs": {
5197
+ "stability": "experimental"
5198
+ },
5199
+ "immutable": true,
5200
+ "locationInModule": {
5201
+ "filename": "src/platform/DefaultUserPoolClients.ts",
5202
+ "line": 17
5203
+ },
5204
+ "name": "additonalUserPoolIdentityProviders",
5205
+ "optional": true,
5206
+ "type": {
5207
+ "collection": {
5208
+ "elementtype": {
5209
+ "primitive": "string"
5210
+ },
5211
+ "kind": "array"
5212
+ }
5213
+ }
5197
5214
  }
5198
5215
  ],
5199
5216
  "symbolId": "src/platform/DefaultUserPoolClients:DefaultUserPoolClientsProps"
@@ -5332,7 +5349,7 @@
5332
5349
  },
5333
5350
  "locationInModule": {
5334
5351
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5335
- "line": 56
5352
+ "line": 55
5336
5353
  },
5337
5354
  "parameters": [
5338
5355
  {
@@ -5346,7 +5363,7 @@
5346
5363
  "kind": "class",
5347
5364
  "locationInModule": {
5348
5365
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5349
- "line": 51
5366
+ "line": 50
5350
5367
  },
5351
5368
  "methods": [
5352
5369
  {
@@ -5356,7 +5373,7 @@
5356
5373
  },
5357
5374
  "locationInModule": {
5358
5375
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5359
- "line": 72
5376
+ "line": 71
5360
5377
  },
5361
5378
  "name": "addHooks",
5362
5379
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension"
@@ -5368,7 +5385,7 @@
5368
5385
  },
5369
5386
  "locationInModule": {
5370
5387
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5371
- "line": 61
5388
+ "line": 60
5372
5389
  },
5373
5390
  "name": "prehook",
5374
5391
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -5395,7 +5412,7 @@
5395
5412
  },
5396
5413
  "locationInModule": {
5397
5414
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5398
- "line": 90
5415
+ "line": 87
5399
5416
  },
5400
5417
  "name": "useService",
5401
5418
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -5427,7 +5444,7 @@
5427
5444
  "immutable": true,
5428
5445
  "locationInModule": {
5429
5446
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5430
- "line": 52
5447
+ "line": 51
5431
5448
  },
5432
5449
  "name": "props",
5433
5450
  "type": {
@@ -5440,7 +5457,7 @@
5440
5457
  },
5441
5458
  "locationInModule": {
5442
5459
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5443
- "line": 54
5460
+ "line": 53
5444
5461
  },
5445
5462
  "name": "secretArn",
5446
5463
  "type": {
@@ -5460,7 +5477,7 @@
5460
5477
  "kind": "interface",
5461
5478
  "locationInModule": {
5462
5479
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5463
- "line": 14
5480
+ "line": 13
5464
5481
  },
5465
5482
  "name": "DocumentDbAccessExtensionProps",
5466
5483
  "properties": [
@@ -5472,7 +5489,7 @@
5472
5489
  "immutable": true,
5473
5490
  "locationInModule": {
5474
5491
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5475
- "line": 15
5492
+ "line": 14
5476
5493
  },
5477
5494
  "name": "basePlatformStackName",
5478
5495
  "type": {
@@ -5487,7 +5504,7 @@
5487
5504
  "immutable": true,
5488
5505
  "locationInModule": {
5489
5506
  "filename": "src/extensions/DocumentDbAccessExtension.ts",
5490
- "line": 16
5507
+ "line": 15
5491
5508
  },
5492
5509
  "name": "securityGroupId",
5493
5510
  "type": {
@@ -5795,7 +5812,7 @@
5795
5812
  },
5796
5813
  "locationInModule": {
5797
5814
  "filename": "src/extensions/ExtraContainerExtension.ts",
5798
- "line": 30
5815
+ "line": 57
5799
5816
  },
5800
5817
  "parameters": [
5801
5818
  {
@@ -5818,7 +5835,7 @@
5818
5835
  "kind": "class",
5819
5836
  "locationInModule": {
5820
5837
  "filename": "src/extensions/ExtraContainerExtension.ts",
5821
- "line": 26
5838
+ "line": 53
5822
5839
  },
5823
5840
  "methods": [
5824
5841
  {
@@ -5829,7 +5846,7 @@
5829
5846
  },
5830
5847
  "locationInModule": {
5831
5848
  "filename": "src/extensions/ExtraContainerExtension.ts",
5832
- "line": 40
5849
+ "line": 67
5833
5850
  },
5834
5851
  "name": "useService",
5835
5852
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -5858,7 +5875,7 @@
5858
5875
  },
5859
5876
  "locationInModule": {
5860
5877
  "filename": "src/extensions/ExtraContainerExtension.ts",
5861
- "line": 49
5878
+ "line": 76
5862
5879
  },
5863
5880
  "name": "useTaskDefinition",
5864
5881
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
@@ -5881,7 +5898,7 @@
5881
5898
  "immutable": true,
5882
5899
  "locationInModule": {
5883
5900
  "filename": "src/extensions/ExtraContainerExtension.ts",
5884
- "line": 27
5901
+ "line": 54
5885
5902
  },
5886
5903
  "name": "containerName",
5887
5904
  "type": {
@@ -5895,7 +5912,7 @@
5895
5912
  "immutable": true,
5896
5913
  "locationInModule": {
5897
5914
  "filename": "src/extensions/ExtraContainerExtension.ts",
5898
- "line": 36
5915
+ "line": 63
5899
5916
  },
5900
5917
  "name": "dbAccess",
5901
5918
  "type": {
@@ -5909,7 +5926,7 @@
5909
5926
  "immutable": true,
5910
5927
  "locationInModule": {
5911
5928
  "filename": "src/extensions/ExtraContainerExtension.ts",
5912
- "line": 84
5929
+ "line": 118
5913
5930
  },
5914
5931
  "name": "healthCondition",
5915
5932
  "type": {
@@ -5923,7 +5940,7 @@
5923
5940
  "immutable": true,
5924
5941
  "locationInModule": {
5925
5942
  "filename": "src/extensions/ExtraContainerExtension.ts",
5926
- "line": 28
5943
+ "line": 55
5927
5944
  },
5928
5945
  "name": "props",
5929
5946
  "type": {
@@ -5943,7 +5960,7 @@
5943
5960
  "kind": "interface",
5944
5961
  "locationInModule": {
5945
5962
  "filename": "src/extensions/ExtraContainerExtension.ts",
5946
- "line": 15
5963
+ "line": 42
5947
5964
  },
5948
5965
  "name": "ExtraContainerExtensionProps",
5949
5966
  "properties": [
@@ -5955,7 +5972,7 @@
5955
5972
  "immutable": true,
5956
5973
  "locationInModule": {
5957
5974
  "filename": "src/extensions/ExtraContainerExtension.ts",
5958
- "line": 16
5975
+ "line": 43
5959
5976
  },
5960
5977
  "name": "container",
5961
5978
  "type": {
@@ -5970,7 +5987,7 @@
5970
5987
  "immutable": true,
5971
5988
  "locationInModule": {
5972
5989
  "filename": "src/extensions/ExtraContainerExtension.ts",
5973
- "line": 23
5990
+ "line": 50
5974
5991
  },
5975
5992
  "name": "dbAccess",
5976
5993
  "optional": true,
@@ -5988,7 +6005,7 @@
5988
6005
  "immutable": true,
5989
6006
  "locationInModule": {
5990
6007
  "filename": "src/extensions/ExtraContainerExtension.ts",
5991
- "line": 22
6008
+ "line": 49
5992
6009
  },
5993
6010
  "name": "healthCheckCondition",
5994
6011
  "optional": true,
@@ -6012,13 +6029,13 @@
6012
6029
  },
6013
6030
  "locationInModule": {
6014
6031
  "filename": "src/extensions/LogExtension.ts",
6015
- "line": 31
6032
+ "line": 32
6016
6033
  }
6017
6034
  },
6018
6035
  "kind": "class",
6019
6036
  "locationInModule": {
6020
6037
  "filename": "src/extensions/LogExtension.ts",
6021
- "line": 30
6038
+ "line": 31
6022
6039
  },
6023
6040
  "methods": [
6024
6041
  {
@@ -6028,7 +6045,7 @@
6028
6045
  },
6029
6046
  "locationInModule": {
6030
6047
  "filename": "src/extensions/LogExtension.ts",
6031
- "line": 35
6048
+ "line": 36
6032
6049
  },
6033
6050
  "name": "addHooks",
6034
6051
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension"
@@ -6037,97 +6054,34 @@
6037
6054
  "name": "LogExtension",
6038
6055
  "symbolId": "src/extensions/LogExtension:LogExtension"
6039
6056
  },
6040
- "@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps": {
6041
- "assembly": "@btc-embedded/cdk-extensions",
6042
- "datatype": true,
6043
- "docs": {
6044
- "stability": "experimental"
6045
- },
6046
- "fqn": "@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps",
6047
- "kind": "interface",
6048
- "locationInModule": {
6049
- "filename": "src/platform/CloudMap.ts",
6050
- "line": 6
6051
- },
6052
- "name": "PrivateDnsNamespaceProps",
6053
- "properties": [
6054
- {
6055
- "abstract": true,
6056
- "docs": {
6057
- "stability": "experimental"
6058
- },
6059
- "immutable": true,
6060
- "locationInModule": {
6061
- "filename": "src/platform/CloudMap.ts",
6062
- "line": 7
6063
- },
6064
- "name": "arn",
6065
- "type": {
6066
- "primitive": "string"
6067
- }
6068
- },
6069
- {
6070
- "abstract": true,
6071
- "docs": {
6072
- "stability": "experimental"
6073
- },
6074
- "immutable": true,
6075
- "locationInModule": {
6076
- "filename": "src/platform/CloudMap.ts",
6077
- "line": 8
6078
- },
6079
- "name": "id",
6080
- "type": {
6081
- "primitive": "string"
6082
- }
6083
- },
6084
- {
6085
- "abstract": true,
6086
- "docs": {
6087
- "stability": "experimental"
6088
- },
6089
- "immutable": true,
6090
- "locationInModule": {
6091
- "filename": "src/platform/CloudMap.ts",
6092
- "line": 9
6093
- },
6094
- "name": "namespace",
6095
- "type": {
6096
- "primitive": "string"
6097
- }
6098
- }
6099
- ],
6100
- "symbolId": "src/platform/CloudMap:PrivateDnsNamespaceProps"
6101
- },
6102
- "@btc-embedded/cdk-extensions.TcpKeepAliveExtension": {
6057
+ "@btc-embedded/cdk-extensions.PostgresDbAccessExtension": {
6103
6058
  "assembly": "@btc-embedded/cdk-extensions",
6104
6059
  "base": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6105
6060
  "docs": {
6106
6061
  "stability": "experimental"
6107
6062
  },
6108
- "fqn": "@btc-embedded/cdk-extensions.TcpKeepAliveExtension",
6063
+ "fqn": "@btc-embedded/cdk-extensions.PostgresDbAccessExtension",
6109
6064
  "initializer": {
6110
6065
  "docs": {
6111
6066
  "stability": "experimental"
6112
6067
  },
6113
6068
  "locationInModule": {
6114
- "filename": "src/extensions/TcpKeepAliveExtension.ts",
6115
- "line": 44
6069
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6070
+ "line": 59
6116
6071
  },
6117
6072
  "parameters": [
6118
6073
  {
6119
6074
  "name": "props",
6120
- "optional": true,
6121
6075
  "type": {
6122
- "fqn": "@btc-embedded/cdk-extensions.TcpKeepAliveExtensionProps"
6076
+ "fqn": "@btc-embedded/cdk-extensions.PostgresDbAccessExtensionProps"
6123
6077
  }
6124
6078
  }
6125
6079
  ]
6126
6080
  },
6127
6081
  "kind": "class",
6128
6082
  "locationInModule": {
6129
- "filename": "src/extensions/TcpKeepAliveExtension.ts",
6130
- "line": 41
6083
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6084
+ "line": 54
6131
6085
  },
6132
6086
  "methods": [
6133
6087
  {
@@ -6136,23 +6090,582 @@
6136
6090
  "summary": "A hook that allows the extension to add hooks to other extensions that are registered."
6137
6091
  },
6138
6092
  "locationInModule": {
6139
- "filename": "src/extensions/TcpKeepAliveExtension.ts",
6140
- "line": 58
6093
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6094
+ "line": 75
6141
6095
  },
6142
6096
  "name": "addHooks",
6143
6097
  "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension"
6144
- }
6145
- ],
6146
- "name": "TcpKeepAliveExtension",
6147
- "properties": [
6098
+ },
6148
6099
  {
6149
6100
  "docs": {
6150
- "stability": "experimental"
6101
+ "stability": "experimental",
6102
+ "summary": "A hook that is called for each extension ahead of time to allow for any initial setup, such as creating resources in advance."
6103
+ },
6104
+ "locationInModule": {
6105
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6106
+ "line": 64
6107
+ },
6108
+ "name": "prehook",
6109
+ "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6110
+ "parameters": [
6111
+ {
6112
+ "name": "parent",
6113
+ "type": {
6114
+ "fqn": "@aws-cdk-containers/ecs-service-extensions.Service"
6115
+ }
6116
+ },
6117
+ {
6118
+ "name": "scope",
6119
+ "type": {
6120
+ "fqn": "constructs.Construct"
6121
+ }
6122
+ }
6123
+ ]
6124
+ },
6125
+ {
6126
+ "docs": {
6127
+ "remarks": "It is generally used to\ncreate any final resources which might depend on the service itself.",
6128
+ "stability": "experimental",
6129
+ "summary": "When this hook is implemented by extension, it allows the extension to use the service which has been created."
6130
+ },
6131
+ "locationInModule": {
6132
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6133
+ "line": 91
6134
+ },
6135
+ "name": "useService",
6136
+ "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6137
+ "parameters": [
6138
+ {
6139
+ "name": "service",
6140
+ "type": {
6141
+ "union": {
6142
+ "types": [
6143
+ {
6144
+ "fqn": "aws-cdk-lib.aws_ecs.Ec2Service"
6145
+ },
6146
+ {
6147
+ "fqn": "aws-cdk-lib.aws_ecs.FargateService"
6148
+ }
6149
+ ]
6150
+ }
6151
+ }
6152
+ }
6153
+ ]
6154
+ }
6155
+ ],
6156
+ "name": "PostgresDbAccessExtension",
6157
+ "properties": [
6158
+ {
6159
+ "docs": {
6160
+ "stability": "experimental"
6161
+ },
6162
+ "immutable": true,
6163
+ "locationInModule": {
6164
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6165
+ "line": 55
6166
+ },
6167
+ "name": "props",
6168
+ "type": {
6169
+ "fqn": "@btc-embedded/cdk-extensions.PostgresDbAccessExtensionProps"
6170
+ }
6171
+ },
6172
+ {
6173
+ "docs": {
6174
+ "stability": "experimental"
6175
+ },
6176
+ "locationInModule": {
6177
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6178
+ "line": 57
6179
+ },
6180
+ "name": "secretArn",
6181
+ "type": {
6182
+ "primitive": "string"
6183
+ }
6184
+ }
6185
+ ],
6186
+ "symbolId": "src/extensions/PostgresDbAccessExtension:PostgresDbAccessExtension"
6187
+ },
6188
+ "@btc-embedded/cdk-extensions.PostgresDbAccessExtensionProps": {
6189
+ "assembly": "@btc-embedded/cdk-extensions",
6190
+ "datatype": true,
6191
+ "docs": {
6192
+ "stability": "experimental"
6193
+ },
6194
+ "fqn": "@btc-embedded/cdk-extensions.PostgresDbAccessExtensionProps",
6195
+ "kind": "interface",
6196
+ "locationInModule": {
6197
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6198
+ "line": 13
6199
+ },
6200
+ "name": "PostgresDbAccessExtensionProps",
6201
+ "properties": [
6202
+ {
6203
+ "abstract": true,
6204
+ "docs": {
6205
+ "remarks": "This name is used to look up output\nparameters.",
6206
+ "stability": "experimental",
6207
+ "summary": "The name of the base platform stack."
6208
+ },
6209
+ "immutable": true,
6210
+ "locationInModule": {
6211
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6212
+ "line": 18
6213
+ },
6214
+ "name": "basePlatformStackName",
6215
+ "type": {
6216
+ "primitive": "string"
6217
+ }
6218
+ },
6219
+ {
6220
+ "abstract": true,
6221
+ "docs": {
6222
+ "stability": "experimental",
6223
+ "summary": "Security group ID of the Postgres DB cluster."
6224
+ },
6225
+ "immutable": true,
6226
+ "locationInModule": {
6227
+ "filename": "src/extensions/PostgresDbAccessExtension.ts",
6228
+ "line": 23
6229
+ },
6230
+ "name": "securityGroupId",
6231
+ "type": {
6232
+ "primitive": "string"
6233
+ }
6234
+ }
6235
+ ],
6236
+ "symbolId": "src/extensions/PostgresDbAccessExtension:PostgresDbAccessExtensionProps"
6237
+ },
6238
+ "@btc-embedded/cdk-extensions.PredefinedPrivateDnsNamespaceProps": {
6239
+ "assembly": "@btc-embedded/cdk-extensions",
6240
+ "datatype": true,
6241
+ "docs": {
6242
+ "stability": "experimental"
6243
+ },
6244
+ "fqn": "@btc-embedded/cdk-extensions.PredefinedPrivateDnsNamespaceProps",
6245
+ "kind": "interface",
6246
+ "locationInModule": {
6247
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6248
+ "line": 9
6249
+ },
6250
+ "name": "PredefinedPrivateDnsNamespaceProps",
6251
+ "properties": [
6252
+ {
6253
+ "abstract": true,
6254
+ "docs": {
6255
+ "stability": "experimental"
6256
+ },
6257
+ "immutable": true,
6258
+ "locationInModule": {
6259
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6260
+ "line": 10
6261
+ },
6262
+ "name": "arn",
6263
+ "type": {
6264
+ "primitive": "string"
6265
+ }
6266
+ },
6267
+ {
6268
+ "abstract": true,
6269
+ "docs": {
6270
+ "stability": "experimental"
6271
+ },
6272
+ "immutable": true,
6273
+ "locationInModule": {
6274
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6275
+ "line": 11
6276
+ },
6277
+ "name": "id",
6278
+ "type": {
6279
+ "primitive": "string"
6280
+ }
6281
+ },
6282
+ {
6283
+ "abstract": true,
6284
+ "docs": {
6285
+ "stability": "experimental"
6286
+ },
6287
+ "immutable": true,
6288
+ "locationInModule": {
6289
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6290
+ "line": 12
6291
+ },
6292
+ "name": "namespace",
6293
+ "type": {
6294
+ "primitive": "string"
6295
+ }
6296
+ }
6297
+ ],
6298
+ "symbolId": "src/platform/PrivateDnsNamespace:PredefinedPrivateDnsNamespaceProps"
6299
+ },
6300
+ "@btc-embedded/cdk-extensions.PrivateDnsNamespace": {
6301
+ "assembly": "@btc-embedded/cdk-extensions",
6302
+ "base": "constructs.Construct",
6303
+ "docs": {
6304
+ "stability": "experimental"
6305
+ },
6306
+ "fqn": "@btc-embedded/cdk-extensions.PrivateDnsNamespace",
6307
+ "initializer": {
6308
+ "docs": {
6309
+ "stability": "experimental"
6310
+ },
6311
+ "locationInModule": {
6312
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6313
+ "line": 23
6314
+ },
6315
+ "parameters": [
6316
+ {
6317
+ "name": "scope",
6318
+ "type": {
6319
+ "fqn": "constructs.Construct"
6320
+ }
6321
+ },
6322
+ {
6323
+ "name": "id",
6324
+ "type": {
6325
+ "primitive": "string"
6326
+ }
6327
+ },
6328
+ {
6329
+ "name": "props",
6330
+ "type": {
6331
+ "fqn": "@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps"
6332
+ }
6333
+ }
6334
+ ]
6335
+ },
6336
+ "kind": "class",
6337
+ "locationInModule": {
6338
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6339
+ "line": 21
6340
+ },
6341
+ "name": "PrivateDnsNamespace",
6342
+ "properties": [
6343
+ {
6344
+ "docs": {
6345
+ "stability": "experimental"
6346
+ },
6347
+ "immutable": true,
6348
+ "locationInModule": {
6349
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6350
+ "line": 22
6351
+ },
6352
+ "name": "namespace",
6353
+ "type": {
6354
+ "fqn": "aws-cdk-lib.aws_servicediscovery.IPrivateDnsNamespace"
6355
+ }
6356
+ }
6357
+ ],
6358
+ "symbolId": "src/platform/PrivateDnsNamespace:PrivateDnsNamespace"
6359
+ },
6360
+ "@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps": {
6361
+ "assembly": "@btc-embedded/cdk-extensions",
6362
+ "datatype": true,
6363
+ "docs": {
6364
+ "stability": "experimental"
6365
+ },
6366
+ "fqn": "@btc-embedded/cdk-extensions.PrivateDnsNamespaceProps",
6367
+ "kind": "interface",
6368
+ "locationInModule": {
6369
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6370
+ "line": 15
6371
+ },
6372
+ "name": "PrivateDnsNamespaceProps",
6373
+ "properties": [
6374
+ {
6375
+ "abstract": true,
6376
+ "docs": {
6377
+ "stability": "experimental"
6378
+ },
6379
+ "immutable": true,
6380
+ "locationInModule": {
6381
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6382
+ "line": 18
6383
+ },
6384
+ "name": "vpc",
6385
+ "type": {
6386
+ "fqn": "aws-cdk-lib.aws_ec2.IVpc"
6387
+ }
6388
+ },
6389
+ {
6390
+ "abstract": true,
6391
+ "docs": {
6392
+ "stability": "experimental"
6393
+ },
6394
+ "immutable": true,
6395
+ "locationInModule": {
6396
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6397
+ "line": 16
6398
+ },
6399
+ "name": "definedPrivateDnsNamespace",
6400
+ "optional": true,
6401
+ "type": {
6402
+ "fqn": "@btc-embedded/cdk-extensions.PredefinedPrivateDnsNamespaceProps"
6403
+ }
6404
+ },
6405
+ {
6406
+ "abstract": true,
6407
+ "docs": {
6408
+ "stability": "experimental"
6409
+ },
6410
+ "immutable": true,
6411
+ "locationInModule": {
6412
+ "filename": "src/platform/PrivateDnsNamespace.ts",
6413
+ "line": 17
6414
+ },
6415
+ "name": "namespaceName",
6416
+ "optional": true,
6417
+ "type": {
6418
+ "primitive": "string"
6419
+ }
6420
+ }
6421
+ ],
6422
+ "symbolId": "src/platform/PrivateDnsNamespace:PrivateDnsNamespaceProps"
6423
+ },
6424
+ "@btc-embedded/cdk-extensions.SharedVolumeExtension": {
6425
+ "assembly": "@btc-embedded/cdk-extensions",
6426
+ "base": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6427
+ "docs": {
6428
+ "stability": "experimental",
6429
+ "summary": "Create a shared volume and attach it to all containers in this task definition."
6430
+ },
6431
+ "fqn": "@btc-embedded/cdk-extensions.SharedVolumeExtension",
6432
+ "initializer": {
6433
+ "docs": {
6434
+ "stability": "experimental"
6435
+ },
6436
+ "locationInModule": {
6437
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6438
+ "line": 34
6439
+ },
6440
+ "parameters": [
6441
+ {
6442
+ "name": "volumeName",
6443
+ "type": {
6444
+ "primitive": "string"
6445
+ }
6446
+ },
6447
+ {
6448
+ "name": "props",
6449
+ "type": {
6450
+ "fqn": "@btc-embedded/cdk-extensions.SharedVolumeExtensionProps"
6451
+ }
6452
+ }
6453
+ ]
6454
+ },
6455
+ "kind": "class",
6456
+ "locationInModule": {
6457
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6458
+ "line": 29
6459
+ },
6460
+ "methods": [
6461
+ {
6462
+ "docs": {
6463
+ "remarks": "It is generally used to\ncreate any final resources which might depend on the service itself.",
6464
+ "stability": "experimental",
6465
+ "summary": "When this hook is implemented by extension, it allows the extension to use the service which has been created."
6466
+ },
6467
+ "locationInModule": {
6468
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6469
+ "line": 46
6470
+ },
6471
+ "name": "useService",
6472
+ "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6473
+ "parameters": [
6474
+ {
6475
+ "name": "_service",
6476
+ "type": {
6477
+ "union": {
6478
+ "types": [
6479
+ {
6480
+ "fqn": "aws-cdk-lib.aws_ecs.Ec2Service"
6481
+ },
6482
+ {
6483
+ "fqn": "aws-cdk-lib.aws_ecs.FargateService"
6484
+ }
6485
+ ]
6486
+ }
6487
+ }
6488
+ }
6489
+ ]
6490
+ },
6491
+ {
6492
+ "docs": {
6493
+ "stability": "experimental",
6494
+ "summary": "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."
6495
+ },
6496
+ "locationInModule": {
6497
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6498
+ "line": 40
6499
+ },
6500
+ "name": "useTaskDefinition",
6501
+ "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6502
+ "parameters": [
6503
+ {
6504
+ "name": "taskDefinition",
6505
+ "type": {
6506
+ "fqn": "aws-cdk-lib.aws_ecs.TaskDefinition"
6507
+ }
6508
+ }
6509
+ ]
6510
+ }
6511
+ ],
6512
+ "name": "SharedVolumeExtension",
6513
+ "properties": [
6514
+ {
6515
+ "docs": {
6516
+ "stability": "experimental"
6517
+ },
6518
+ "immutable": true,
6519
+ "locationInModule": {
6520
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6521
+ "line": 30
6522
+ },
6523
+ "name": "props",
6524
+ "type": {
6525
+ "fqn": "@btc-embedded/cdk-extensions.SharedVolumeExtensionProps"
6526
+ }
6527
+ },
6528
+ {
6529
+ "docs": {
6530
+ "stability": "experimental"
6531
+ },
6532
+ "immutable": true,
6533
+ "locationInModule": {
6534
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6535
+ "line": 32
6536
+ },
6537
+ "name": "volumeName",
6538
+ "type": {
6539
+ "primitive": "string"
6540
+ }
6541
+ }
6542
+ ],
6543
+ "symbolId": "src/extensions/SharedVolumeExtension:SharedVolumeExtension"
6544
+ },
6545
+ "@btc-embedded/cdk-extensions.SharedVolumeExtensionProps": {
6546
+ "assembly": "@btc-embedded/cdk-extensions",
6547
+ "datatype": true,
6548
+ "docs": {
6549
+ "stability": "experimental",
6550
+ "summary": "Properties for defining an ephermal shared volume."
6551
+ },
6552
+ "fqn": "@btc-embedded/cdk-extensions.SharedVolumeExtensionProps",
6553
+ "kind": "interface",
6554
+ "locationInModule": {
6555
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6556
+ "line": 8
6557
+ },
6558
+ "name": "SharedVolumeExtensionProps",
6559
+ "properties": [
6560
+ {
6561
+ "abstract": true,
6562
+ "docs": {
6563
+ "stability": "experimental",
6564
+ "summary": "The path inside the container to mount the volume."
6565
+ },
6566
+ "immutable": true,
6567
+ "locationInModule": {
6568
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6569
+ "line": 12
6570
+ },
6571
+ "name": "path",
6572
+ "type": {
6573
+ "primitive": "string"
6574
+ }
6575
+ },
6576
+ {
6577
+ "abstract": true,
6578
+ "docs": {
6579
+ "remarks": "Default: false.",
6580
+ "stability": "experimental",
6581
+ "summary": "Whether the volume should be read-only."
6582
+ },
6583
+ "immutable": true,
6584
+ "locationInModule": {
6585
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6586
+ "line": 17
6587
+ },
6588
+ "name": "readonly",
6589
+ "optional": true,
6590
+ "type": {
6591
+ "primitive": "boolean"
6592
+ }
6593
+ },
6594
+ {
6595
+ "abstract": true,
6596
+ "docs": {
6597
+ "remarks": "Default: SHARED.",
6598
+ "stability": "experimental",
6599
+ "summary": "Scope of the volume."
6151
6600
  },
6152
6601
  "immutable": true,
6602
+ "locationInModule": {
6603
+ "filename": "src/extensions/SharedVolumeExtension.ts",
6604
+ "line": 22
6605
+ },
6606
+ "name": "scope",
6607
+ "optional": true,
6608
+ "type": {
6609
+ "fqn": "aws-cdk-lib.aws_ecs.Scope"
6610
+ }
6611
+ }
6612
+ ],
6613
+ "symbolId": "src/extensions/SharedVolumeExtension:SharedVolumeExtensionProps"
6614
+ },
6615
+ "@btc-embedded/cdk-extensions.TcpKeepAliveExtension": {
6616
+ "assembly": "@btc-embedded/cdk-extensions",
6617
+ "base": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension",
6618
+ "docs": {
6619
+ "stability": "experimental"
6620
+ },
6621
+ "fqn": "@btc-embedded/cdk-extensions.TcpKeepAliveExtension",
6622
+ "initializer": {
6623
+ "docs": {
6624
+ "stability": "experimental"
6625
+ },
6626
+ "locationInModule": {
6627
+ "filename": "src/extensions/TcpKeepAliveExtension.ts",
6628
+ "line": 45
6629
+ },
6630
+ "parameters": [
6631
+ {
6632
+ "name": "props",
6633
+ "optional": true,
6634
+ "type": {
6635
+ "fqn": "@btc-embedded/cdk-extensions.TcpKeepAliveExtensionProps"
6636
+ }
6637
+ }
6638
+ ]
6639
+ },
6640
+ "kind": "class",
6641
+ "locationInModule": {
6642
+ "filename": "src/extensions/TcpKeepAliveExtension.ts",
6643
+ "line": 42
6644
+ },
6645
+ "methods": [
6646
+ {
6647
+ "docs": {
6648
+ "stability": "experimental",
6649
+ "summary": "A hook that allows the extension to add hooks to other extensions that are registered."
6650
+ },
6153
6651
  "locationInModule": {
6154
6652
  "filename": "src/extensions/TcpKeepAliveExtension.ts",
6155
- "line": 42
6653
+ "line": 59
6654
+ },
6655
+ "name": "addHooks",
6656
+ "overrides": "@aws-cdk-containers/ecs-service-extensions.ServiceExtension"
6657
+ }
6658
+ ],
6659
+ "name": "TcpKeepAliveExtension",
6660
+ "properties": [
6661
+ {
6662
+ "docs": {
6663
+ "stability": "experimental"
6664
+ },
6665
+ "immutable": true,
6666
+ "locationInModule": {
6667
+ "filename": "src/extensions/TcpKeepAliveExtension.ts",
6668
+ "line": 43
6156
6669
  },
6157
6670
  "name": "props",
6158
6671
  "type": {
@@ -6172,7 +6685,7 @@
6172
6685
  "kind": "interface",
6173
6686
  "locationInModule": {
6174
6687
  "filename": "src/extensions/TcpKeepAliveExtension.ts",
6175
- "line": 7
6688
+ "line": 8
6176
6689
  },
6177
6690
  "name": "TcpKeepAliveExtensionProps",
6178
6691
  "properties": [
@@ -6184,7 +6697,7 @@
6184
6697
  "immutable": true,
6185
6698
  "locationInModule": {
6186
6699
  "filename": "src/extensions/TcpKeepAliveExtension.ts",
6187
- "line": 9
6700
+ "line": 10
6188
6701
  },
6189
6702
  "name": "interval",
6190
6703
  "type": {
@@ -6199,7 +6712,7 @@
6199
6712
  "immutable": true,
6200
6713
  "locationInModule": {
6201
6714
  "filename": "src/extensions/TcpKeepAliveExtension.ts",
6202
- "line": 10
6715
+ "line": 11
6203
6716
  },
6204
6717
  "name": "probes",
6205
6718
  "type": {
@@ -6214,7 +6727,7 @@
6214
6727
  "immutable": true,
6215
6728
  "locationInModule": {
6216
6729
  "filename": "src/extensions/TcpKeepAliveExtension.ts",
6217
- "line": 8
6730
+ "line": 9
6218
6731
  },
6219
6732
  "name": "time",
6220
6733
  "type": {
@@ -6223,8 +6736,145 @@
6223
6736
  }
6224
6737
  ],
6225
6738
  "symbolId": "src/extensions/TcpKeepAliveExtension:TcpKeepAliveExtensionProps"
6739
+ },
6740
+ "@btc-embedded/cdk-extensions.Vpc": {
6741
+ "assembly": "@btc-embedded/cdk-extensions",
6742
+ "base": "constructs.Construct",
6743
+ "docs": {
6744
+ "stability": "experimental"
6745
+ },
6746
+ "fqn": "@btc-embedded/cdk-extensions.Vpc",
6747
+ "initializer": {
6748
+ "docs": {
6749
+ "stability": "experimental"
6750
+ },
6751
+ "locationInModule": {
6752
+ "filename": "src/platform/Vpc.ts",
6753
+ "line": 16
6754
+ },
6755
+ "parameters": [
6756
+ {
6757
+ "name": "scope",
6758
+ "type": {
6759
+ "fqn": "constructs.Construct"
6760
+ }
6761
+ },
6762
+ {
6763
+ "name": "id",
6764
+ "type": {
6765
+ "primitive": "string"
6766
+ }
6767
+ },
6768
+ {
6769
+ "name": "props",
6770
+ "type": {
6771
+ "fqn": "@btc-embedded/cdk-extensions.VpcProps"
6772
+ }
6773
+ }
6774
+ ]
6775
+ },
6776
+ "kind": "class",
6777
+ "locationInModule": {
6778
+ "filename": "src/platform/Vpc.ts",
6779
+ "line": 12
6780
+ },
6781
+ "name": "Vpc",
6782
+ "properties": [
6783
+ {
6784
+ "docs": {
6785
+ "stability": "experimental"
6786
+ },
6787
+ "locationInModule": {
6788
+ "filename": "src/platform/Vpc.ts",
6789
+ "line": 14
6790
+ },
6791
+ "name": "cluster",
6792
+ "type": {
6793
+ "fqn": "aws-cdk-lib.aws_ecs.ICluster"
6794
+ }
6795
+ },
6796
+ {
6797
+ "docs": {
6798
+ "stability": "experimental"
6799
+ },
6800
+ "locationInModule": {
6801
+ "filename": "src/platform/Vpc.ts",
6802
+ "line": 13
6803
+ },
6804
+ "name": "vpcInstance",
6805
+ "type": {
6806
+ "fqn": "aws-cdk-lib.aws_ec2.IVpc"
6807
+ }
6808
+ }
6809
+ ],
6810
+ "symbolId": "src/platform/Vpc:Vpc"
6811
+ },
6812
+ "@btc-embedded/cdk-extensions.VpcProps": {
6813
+ "assembly": "@btc-embedded/cdk-extensions",
6814
+ "datatype": true,
6815
+ "docs": {
6816
+ "stability": "experimental"
6817
+ },
6818
+ "fqn": "@btc-embedded/cdk-extensions.VpcProps",
6819
+ "kind": "interface",
6820
+ "locationInModule": {
6821
+ "filename": "src/platform/Vpc.ts",
6822
+ "line": 6
6823
+ },
6824
+ "name": "VpcProps",
6825
+ "properties": [
6826
+ {
6827
+ "abstract": true,
6828
+ "docs": {
6829
+ "stability": "experimental"
6830
+ },
6831
+ "immutable": true,
6832
+ "locationInModule": {
6833
+ "filename": "src/platform/Vpc.ts",
6834
+ "line": 7
6835
+ },
6836
+ "name": "definedVpcName",
6837
+ "optional": true,
6838
+ "type": {
6839
+ "primitive": "string"
6840
+ }
6841
+ },
6842
+ {
6843
+ "abstract": true,
6844
+ "docs": {
6845
+ "stability": "experimental"
6846
+ },
6847
+ "immutable": true,
6848
+ "locationInModule": {
6849
+ "filename": "src/platform/Vpc.ts",
6850
+ "line": 9
6851
+ },
6852
+ "name": "maxAzs",
6853
+ "optional": true,
6854
+ "type": {
6855
+ "primitive": "number"
6856
+ }
6857
+ },
6858
+ {
6859
+ "abstract": true,
6860
+ "docs": {
6861
+ "stability": "experimental"
6862
+ },
6863
+ "immutable": true,
6864
+ "locationInModule": {
6865
+ "filename": "src/platform/Vpc.ts",
6866
+ "line": 8
6867
+ },
6868
+ "name": "vpcCidr",
6869
+ "optional": true,
6870
+ "type": {
6871
+ "fqn": "aws-cdk-lib.aws_ec2.IIpAddresses"
6872
+ }
6873
+ }
6874
+ ],
6875
+ "symbolId": "src/platform/Vpc:VpcProps"
6226
6876
  }
6227
6877
  },
6228
- "version": "0.3.0",
6229
- "fingerprint": "0AM71TVyNCK8jiZYx/YZthuh2Wlbpn7NP2IzsB+Tk5I="
6878
+ "version": "0.4.1",
6879
+ "fingerprint": "Nfuem/hp0j5jPLOw0y2NYuZkW3GHl8b+D+ZDI1frTcU="
6230
6880
  }