@gradientedge/cdk-utils 10.8.0 → 11.0.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.
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +4 -0
- package/package.json +26 -117
- package/.eslintrc.json +0 -40
- package/.husky/pre-commit +0 -4
- package/README.md +0 -122
- package/app/api-destined-function/node_modules/.bin/mkdirp +0 -21
- package/app/api-destined-function/node_modules/.bin/rimraf +0 -21
- package/app/api-destined-function/node_modules/.bin/uuid +0 -21
- package/app/api-destined-function/package.json +0 -27
- package/app/api-destined-function/src/lib/lambda.ts +0 -29
- package/babel.config.mjs +0 -16
- package/dist/app/api-destined-function/src/lib/lambda.d.ts +0 -17
- package/dist/app/api-destined-function/src/lib/lambda.d.ts.map +0 -1
- package/dist/app/api-destined-function/src/lib/lambda.js +0 -28
- package/dist/app/api-destined-function/src/lib/lambda.js.map +0 -1
- package/dist/app/api-destined-function/tsconfig.tsbuildinfo +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +0 -1
- package/dist/src/lib/aws/common/construct.d.ts +0 -85
- package/dist/src/lib/aws/common/construct.js +0 -125
- package/dist/src/lib/aws/common/index.d.ts +0 -4
- package/dist/src/lib/aws/common/index.js +0 -4
- package/dist/src/lib/aws/common/resource-name-formatter.d.ts +0 -13
- package/dist/src/lib/aws/common/resource-name-formatter.js +0 -30
- package/dist/src/lib/aws/common/stack.d.ts +0 -62
- package/dist/src/lib/aws/common/stack.js +0 -139
- package/dist/src/lib/aws/common/types.d.ts +0 -30
- package/dist/src/lib/aws/common/types.js +0 -1
- package/dist/src/lib/aws/construct/api-to-any-target/index.d.ts +0 -3
- package/dist/src/lib/aws/construct/api-to-any-target/index.js +0 -3
- package/dist/src/lib/aws/construct/api-to-any-target/main.d.ts +0 -47
- package/dist/src/lib/aws/construct/api-to-any-target/main.js +0 -154
- package/dist/src/lib/aws/construct/api-to-any-target/target.d.ts +0 -23
- package/dist/src/lib/aws/construct/api-to-any-target/target.js +0 -14
- package/dist/src/lib/aws/construct/api-to-any-target/types.d.ts +0 -60
- package/dist/src/lib/aws/construct/api-to-any-target/types.js +0 -1
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/api.d.ts +0 -34
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/api.js +0 -23
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/event.d.ts +0 -15
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/event.js +0 -12
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/index.d.ts +0 -4
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/index.js +0 -4
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/main.d.ts +0 -121
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/main.js +0 -442
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/types.d.ts +0 -100
- package/dist/src/lib/aws/construct/api-to-eventbridge-target/types.js +0 -1
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.d.ts +0 -16
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.js +0 -12
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/index.d.ts +0 -3
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/index.js +0 -3
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/main.d.ts +0 -159
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/main.js +0 -547
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/types.d.ts +0 -22
- package/dist/src/lib/aws/construct/api-to-eventbridge-target-with-sns/types.js +0 -1
- package/dist/src/lib/aws/construct/api-to-lambda-target/api.d.ts +0 -35
- package/dist/src/lib/aws/construct/api-to-lambda-target/api.js +0 -24
- package/dist/src/lib/aws/construct/api-to-lambda-target/index.d.ts +0 -3
- package/dist/src/lib/aws/construct/api-to-lambda-target/index.js +0 -3
- package/dist/src/lib/aws/construct/api-to-lambda-target/main.d.ts +0 -70
- package/dist/src/lib/aws/construct/api-to-lambda-target/main.js +0 -218
- package/dist/src/lib/aws/construct/api-to-lambda-target/types.d.ts +0 -62
- package/dist/src/lib/aws/construct/api-to-lambda-target/types.js +0 -1
- package/dist/src/lib/aws/construct/application-configuration/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/application-configuration/index.js +0 -2
- package/dist/src/lib/aws/construct/application-configuration/main.d.ts +0 -23
- package/dist/src/lib/aws/construct/application-configuration/main.js +0 -79
- package/dist/src/lib/aws/construct/application-configuration/types.d.ts +0 -6
- package/dist/src/lib/aws/construct/application-configuration/types.js +0 -1
- package/dist/src/lib/aws/construct/event-handler/handler.d.ts +0 -29
- package/dist/src/lib/aws/construct/event-handler/handler.js +0 -21
- package/dist/src/lib/aws/construct/event-handler/index.d.ts +0 -3
- package/dist/src/lib/aws/construct/event-handler/index.js +0 -3
- package/dist/src/lib/aws/construct/event-handler/main.d.ts +0 -91
- package/dist/src/lib/aws/construct/event-handler/main.js +0 -196
- package/dist/src/lib/aws/construct/event-handler/types.d.ts +0 -41
- package/dist/src/lib/aws/construct/event-handler/types.js +0 -1
- package/dist/src/lib/aws/construct/index.d.ts +0 -14
- package/dist/src/lib/aws/construct/index.js +0 -14
- package/dist/src/lib/aws/construct/lambda-with-iam-access/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/lambda-with-iam-access/index.js +0 -2
- package/dist/src/lib/aws/construct/lambda-with-iam-access/main.d.ts +0 -78
- package/dist/src/lib/aws/construct/lambda-with-iam-access/main.js +0 -182
- package/dist/src/lib/aws/construct/lambda-with-iam-access/types.d.ts +0 -20
- package/dist/src/lib/aws/construct/lambda-with-iam-access/types.js +0 -1
- package/dist/src/lib/aws/construct/piped-event-handler/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/piped-event-handler/index.js +0 -2
- package/dist/src/lib/aws/construct/piped-event-handler/main.d.ts +0 -38
- package/dist/src/lib/aws/construct/piped-event-handler/main.js +0 -62
- package/dist/src/lib/aws/construct/piped-event-handler/types.d.ts +0 -9
- package/dist/src/lib/aws/construct/piped-event-handler/types.js +0 -1
- package/dist/src/lib/aws/construct/rest-api-lambda/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/rest-api-lambda/index.js +0 -2
- package/dist/src/lib/aws/construct/rest-api-lambda/main.d.ts +0 -96
- package/dist/src/lib/aws/construct/rest-api-lambda/main.js +0 -170
- package/dist/src/lib/aws/construct/rest-api-lambda/types.d.ts +0 -23
- package/dist/src/lib/aws/construct/rest-api-lambda/types.js +0 -1
- package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/index.js +0 -2
- package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/main.d.ts +0 -56
- package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/main.js +0 -118
- package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/types.d.ts +0 -11
- package/dist/src/lib/aws/construct/rest-api-lambda-with-cache/types.js +0 -1
- package/dist/src/lib/aws/construct/site-with-ecs-backend/constants.d.ts +0 -4
- package/dist/src/lib/aws/construct/site-with-ecs-backend/constants.js +0 -5
- package/dist/src/lib/aws/construct/site-with-ecs-backend/index.d.ts +0 -3
- package/dist/src/lib/aws/construct/site-with-ecs-backend/index.js +0 -3
- package/dist/src/lib/aws/construct/site-with-ecs-backend/main.d.ts +0 -154
- package/dist/src/lib/aws/construct/site-with-ecs-backend/main.js +0 -437
- package/dist/src/lib/aws/construct/site-with-ecs-backend/types.d.ts +0 -49
- package/dist/src/lib/aws/construct/site-with-ecs-backend/types.js +0 -1
- package/dist/src/lib/aws/construct/site-with-lambda-backend/constants.d.ts +0 -5
- package/dist/src/lib/aws/construct/site-with-lambda-backend/constants.js +0 -6
- package/dist/src/lib/aws/construct/site-with-lambda-backend/index.d.ts +0 -3
- package/dist/src/lib/aws/construct/site-with-lambda-backend/index.js +0 -3
- package/dist/src/lib/aws/construct/site-with-lambda-backend/main.d.ts +0 -116
- package/dist/src/lib/aws/construct/site-with-lambda-backend/main.js +0 -316
- package/dist/src/lib/aws/construct/site-with-lambda-backend/types.d.ts +0 -45
- package/dist/src/lib/aws/construct/site-with-lambda-backend/types.js +0 -1
- package/dist/src/lib/aws/construct/static-asset-deployment/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/static-asset-deployment/index.js +0 -2
- package/dist/src/lib/aws/construct/static-asset-deployment/main.d.ts +0 -41
- package/dist/src/lib/aws/construct/static-asset-deployment/main.js +0 -113
- package/dist/src/lib/aws/construct/static-asset-deployment/types.d.ts +0 -41
- package/dist/src/lib/aws/construct/static-asset-deployment/types.js +0 -1
- package/dist/src/lib/aws/construct/static-site/index.d.ts +0 -2
- package/dist/src/lib/aws/construct/static-site/index.js +0 -2
- package/dist/src/lib/aws/construct/static-site/main.d.ts +0 -84
- package/dist/src/lib/aws/construct/static-site/main.js +0 -136
- package/dist/src/lib/aws/construct/static-site/types.d.ts +0 -30
- package/dist/src/lib/aws/construct/static-site/types.js +0 -1
- package/dist/src/lib/aws/index.d.ts +0 -5
- package/dist/src/lib/aws/index.js +0 -5
- package/dist/src/lib/aws/services/api-gateway/index.d.ts +0 -2
- package/dist/src/lib/aws/services/api-gateway/index.js +0 -2
- package/dist/src/lib/aws/services/api-gateway/main.d.ts +0 -68
- package/dist/src/lib/aws/services/api-gateway/main.js +0 -173
- package/dist/src/lib/aws/services/api-gateway/types.d.ts +0 -10
- package/dist/src/lib/aws/services/api-gateway/types.js +0 -1
- package/dist/src/lib/aws/services/appconfig/constants.d.ts +0 -12
- package/dist/src/lib/aws/services/appconfig/constants.js +0 -51
- package/dist/src/lib/aws/services/appconfig/index.d.ts +0 -3
- package/dist/src/lib/aws/services/appconfig/index.js +0 -3
- package/dist/src/lib/aws/services/appconfig/main.d.ts +0 -63
- package/dist/src/lib/aws/services/appconfig/main.js +0 -119
- package/dist/src/lib/aws/services/appconfig/types.d.ts +0 -17
- package/dist/src/lib/aws/services/appconfig/types.js +0 -1
- package/dist/src/lib/aws/services/certificate-manager/index.d.ts +0 -2
- package/dist/src/lib/aws/services/certificate-manager/index.js +0 -2
- package/dist/src/lib/aws/services/certificate-manager/main.d.ts +0 -41
- package/dist/src/lib/aws/services/certificate-manager/main.js +0 -62
- package/dist/src/lib/aws/services/certificate-manager/types.d.ts +0 -11
- package/dist/src/lib/aws/services/certificate-manager/types.js +0 -1
- package/dist/src/lib/aws/services/cloudfront/index.d.ts +0 -2
- package/dist/src/lib/aws/services/cloudfront/index.js +0 -2
- package/dist/src/lib/aws/services/cloudfront/main.d.ts +0 -96
- package/dist/src/lib/aws/services/cloudfront/main.js +0 -233
- package/dist/src/lib/aws/services/cloudfront/types.d.ts +0 -13
- package/dist/src/lib/aws/services/cloudfront/types.js +0 -1
- package/dist/src/lib/aws/services/cloudtrail/index.d.ts +0 -2
- package/dist/src/lib/aws/services/cloudtrail/index.js +0 -2
- package/dist/src/lib/aws/services/cloudtrail/main.d.ts +0 -44
- package/dist/src/lib/aws/services/cloudtrail/main.js +0 -71
- package/dist/src/lib/aws/services/cloudtrail/types.d.ts +0 -5
- package/dist/src/lib/aws/services/cloudtrail/types.js +0 -1
- package/dist/src/lib/aws/services/cloudwatch/index.d.ts +0 -3
- package/dist/src/lib/aws/services/cloudwatch/index.js +0 -3
- package/dist/src/lib/aws/services/cloudwatch/logs.d.ts +0 -47
- package/dist/src/lib/aws/services/cloudwatch/logs.js +0 -98
- package/dist/src/lib/aws/services/cloudwatch/main.d.ts +0 -207
- package/dist/src/lib/aws/services/cloudwatch/main.js +0 -552
- package/dist/src/lib/aws/services/cloudwatch/types.d.ts +0 -89
- package/dist/src/lib/aws/services/cloudwatch/types.js +0 -1
- package/dist/src/lib/aws/services/codebuild/index.d.ts +0 -1
- package/dist/src/lib/aws/services/codebuild/index.js +0 -1
- package/dist/src/lib/aws/services/codebuild/main.d.ts +0 -36
- package/dist/src/lib/aws/services/codebuild/main.js +0 -67
- package/dist/src/lib/aws/services/constants.d.ts +0 -4
- package/dist/src/lib/aws/services/constants.js +0 -5
- package/dist/src/lib/aws/services/dynamodb/index.d.ts +0 -2
- package/dist/src/lib/aws/services/dynamodb/index.js +0 -2
- package/dist/src/lib/aws/services/dynamodb/main.d.ts +0 -35
- package/dist/src/lib/aws/services/dynamodb/main.js +0 -72
- package/dist/src/lib/aws/services/dynamodb/types.d.ts +0 -10
- package/dist/src/lib/aws/services/dynamodb/types.js +0 -1
- package/dist/src/lib/aws/services/elastic-container-registry/index.d.ts +0 -1
- package/dist/src/lib/aws/services/elastic-container-registry/index.js +0 -1
- package/dist/src/lib/aws/services/elastic-container-registry/main.d.ts +0 -27
- package/dist/src/lib/aws/services/elastic-container-registry/main.js +0 -33
- package/dist/src/lib/aws/services/elastic-container-service/index.d.ts +0 -2
- package/dist/src/lib/aws/services/elastic-container-service/index.js +0 -2
- package/dist/src/lib/aws/services/elastic-container-service/main.d.ts +0 -56
- package/dist/src/lib/aws/services/elastic-container-service/main.js +0 -149
- package/dist/src/lib/aws/services/elastic-container-service/types.d.ts +0 -45
- package/dist/src/lib/aws/services/elastic-container-service/types.js +0 -1
- package/dist/src/lib/aws/services/elastic-file-system/index.d.ts +0 -2
- package/dist/src/lib/aws/services/elastic-file-system/index.js +0 -2
- package/dist/src/lib/aws/services/elastic-file-system/main.d.ts +0 -42
- package/dist/src/lib/aws/services/elastic-file-system/main.js +0 -76
- package/dist/src/lib/aws/services/elastic-file-system/types.d.ts +0 -15
- package/dist/src/lib/aws/services/elastic-file-system/types.js +0 -1
- package/dist/src/lib/aws/services/elastic-kubernetes-service/index.d.ts +0 -2
- package/dist/src/lib/aws/services/elastic-kubernetes-service/index.js +0 -2
- package/dist/src/lib/aws/services/elastic-kubernetes-service/main.d.ts +0 -32
- package/dist/src/lib/aws/services/elastic-kubernetes-service/main.js +0 -85
- package/dist/src/lib/aws/services/elastic-kubernetes-service/types.d.ts +0 -7
- package/dist/src/lib/aws/services/elastic-kubernetes-service/types.js +0 -1
- package/dist/src/lib/aws/services/elasticache/index.d.ts +0 -2
- package/dist/src/lib/aws/services/elasticache/index.js +0 -2
- package/dist/src/lib/aws/services/elasticache/main.d.ts +0 -47
- package/dist/src/lib/aws/services/elasticache/main.js +0 -90
- package/dist/src/lib/aws/services/elasticache/types.d.ts +0 -9
- package/dist/src/lib/aws/services/elasticache/types.js +0 -1
- package/dist/src/lib/aws/services/eventbridge/index.d.ts +0 -3
- package/dist/src/lib/aws/services/eventbridge/index.js +0 -3
- package/dist/src/lib/aws/services/eventbridge/main.d.ts +0 -93
- package/dist/src/lib/aws/services/eventbridge/main.js +0 -295
- package/dist/src/lib/aws/services/eventbridge/target.d.ts +0 -57
- package/dist/src/lib/aws/services/eventbridge/target.js +0 -61
- package/dist/src/lib/aws/services/eventbridge/types.d.ts +0 -43
- package/dist/src/lib/aws/services/eventbridge/types.js +0 -1
- package/dist/src/lib/aws/services/evidently/index.d.ts +0 -2
- package/dist/src/lib/aws/services/evidently/index.js +0 -2
- package/dist/src/lib/aws/services/evidently/main.d.ts +0 -56
- package/dist/src/lib/aws/services/evidently/main.js +0 -114
- package/dist/src/lib/aws/services/evidently/types.d.ts +0 -21
- package/dist/src/lib/aws/services/evidently/types.js +0 -1
- package/dist/src/lib/aws/services/identity-access-management/index.d.ts +0 -1
- package/dist/src/lib/aws/services/identity-access-management/index.js +0 -1
- package/dist/src/lib/aws/services/identity-access-management/main.d.ts +0 -263
- package/dist/src/lib/aws/services/identity-access-management/main.js +0 -609
- package/dist/src/lib/aws/services/index.d.ts +0 -28
- package/dist/src/lib/aws/services/index.js +0 -28
- package/dist/src/lib/aws/services/key-management-service/index.d.ts +0 -2
- package/dist/src/lib/aws/services/key-management-service/index.js +0 -2
- package/dist/src/lib/aws/services/key-management-service/main.d.ts +0 -28
- package/dist/src/lib/aws/services/key-management-service/main.js +0 -39
- package/dist/src/lib/aws/services/key-management-service/types.d.ts +0 -5
- package/dist/src/lib/aws/services/key-management-service/types.js +0 -1
- package/dist/src/lib/aws/services/lambda/index.d.ts +0 -2
- package/dist/src/lib/aws/services/lambda/index.js +0 -2
- package/dist/src/lib/aws/services/lambda/main.d.ts +0 -89
- package/dist/src/lib/aws/services/lambda/main.js +0 -232
- package/dist/src/lib/aws/services/lambda/types.d.ts +0 -48
- package/dist/src/lib/aws/services/lambda/types.js +0 -1
- package/dist/src/lib/aws/services/route53/index.d.ts +0 -2
- package/dist/src/lib/aws/services/route53/index.js +0 -2
- package/dist/src/lib/aws/services/route53/main.d.ts +0 -66
- package/dist/src/lib/aws/services/route53/main.js +0 -136
- package/dist/src/lib/aws/services/route53/types.d.ts +0 -6
- package/dist/src/lib/aws/services/route53/types.js +0 -1
- package/dist/src/lib/aws/services/secrets-manager/index.d.ts +0 -2
- package/dist/src/lib/aws/services/secrets-manager/index.js +0 -2
- package/dist/src/lib/aws/services/secrets-manager/main.d.ts +0 -43
- package/dist/src/lib/aws/services/secrets-manager/main.js +0 -71
- package/dist/src/lib/aws/services/secrets-manager/types.d.ts +0 -3
- package/dist/src/lib/aws/services/secrets-manager/types.js +0 -1
- package/dist/src/lib/aws/services/simple-notification-service/index.d.ts +0 -2
- package/dist/src/lib/aws/services/simple-notification-service/index.js +0 -2
- package/dist/src/lib/aws/services/simple-notification-service/main.d.ts +0 -38
- package/dist/src/lib/aws/services/simple-notification-service/main.js +0 -68
- package/dist/src/lib/aws/services/simple-notification-service/types.d.ts +0 -5
- package/dist/src/lib/aws/services/simple-notification-service/types.js +0 -1
- package/dist/src/lib/aws/services/simple-queue-service/index.d.ts +0 -2
- package/dist/src/lib/aws/services/simple-queue-service/index.js +0 -2
- package/dist/src/lib/aws/services/simple-queue-service/main.d.ts +0 -45
- package/dist/src/lib/aws/services/simple-queue-service/main.js +0 -101
- package/dist/src/lib/aws/services/simple-queue-service/types.d.ts +0 -15
- package/dist/src/lib/aws/services/simple-queue-service/types.js +0 -1
- package/dist/src/lib/aws/services/simple-storage-service/index.d.ts +0 -2
- package/dist/src/lib/aws/services/simple-storage-service/index.js +0 -2
- package/dist/src/lib/aws/services/simple-storage-service/main.d.ts +0 -79
- package/dist/src/lib/aws/services/simple-storage-service/main.js +0 -191
- package/dist/src/lib/aws/services/simple-storage-service/types.d.ts +0 -25
- package/dist/src/lib/aws/services/simple-storage-service/types.js +0 -1
- package/dist/src/lib/aws/services/step-function/index.d.ts +0 -2
- package/dist/src/lib/aws/services/step-function/index.js +0 -2
- package/dist/src/lib/aws/services/step-function/main.d.ts +0 -161
- package/dist/src/lib/aws/services/step-function/main.js +0 -380
- package/dist/src/lib/aws/services/step-function/types.d.ts +0 -88
- package/dist/src/lib/aws/services/step-function/types.js +0 -1
- package/dist/src/lib/aws/services/systems-manager/index.d.ts +0 -2
- package/dist/src/lib/aws/services/systems-manager/index.js +0 -2
- package/dist/src/lib/aws/services/systems-manager/main.d.ts +0 -55
- package/dist/src/lib/aws/services/systems-manager/main.js +0 -97
- package/dist/src/lib/aws/services/systems-manager/types.d.ts +0 -9
- package/dist/src/lib/aws/services/systems-manager/types.js +0 -1
- package/dist/src/lib/aws/services/virtual-private-cloud/index.d.ts +0 -2
- package/dist/src/lib/aws/services/virtual-private-cloud/index.js +0 -2
- package/dist/src/lib/aws/services/virtual-private-cloud/ipv6.d.ts +0 -7
- package/dist/src/lib/aws/services/virtual-private-cloud/ipv6.js +0 -38
- package/dist/src/lib/aws/services/virtual-private-cloud/main.d.ts +0 -43
- package/dist/src/lib/aws/services/virtual-private-cloud/main.js +0 -87
- package/dist/src/lib/aws/services/virtual-private-cloud/types.d.ts +0 -4
- package/dist/src/lib/aws/services/virtual-private-cloud/types.js +0 -1
- package/dist/src/lib/aws/services/web-application-firewall/index.d.ts +0 -2
- package/dist/src/lib/aws/services/web-application-firewall/index.js +0 -2
- package/dist/src/lib/aws/services/web-application-firewall/main.d.ts +0 -35
- package/dist/src/lib/aws/services/web-application-firewall/main.js +0 -61
- package/dist/src/lib/aws/services/web-application-firewall/types.d.ts +0 -9
- package/dist/src/lib/aws/services/web-application-firewall/types.js +0 -1
- package/dist/src/lib/aws/types/index.d.ts +0 -6
- package/dist/src/lib/aws/types/index.js +0 -1
- package/dist/src/lib/aws/utils/index.d.ts +0 -45
- package/dist/src/lib/aws/utils/index.js +0 -61
- package/dist/src/lib/azure/common/constants.d.ts +0 -83
- package/dist/src/lib/azure/common/constants.js +0 -87
- package/dist/src/lib/azure/common/construct.d.ts +0 -80
- package/dist/src/lib/azure/common/construct.js +0 -128
- package/dist/src/lib/azure/common/index.d.ts +0 -6
- package/dist/src/lib/azure/common/index.js +0 -6
- package/dist/src/lib/azure/common/resource-name-formatter.d.ts +0 -18
- package/dist/src/lib/azure/common/resource-name-formatter.js +0 -34
- package/dist/src/lib/azure/common/stack.d.ts +0 -46
- package/dist/src/lib/azure/common/stack.js +0 -120
- package/dist/src/lib/azure/common/tagging.d.ts +0 -29
- package/dist/src/lib/azure/common/tagging.js +0 -78
- package/dist/src/lib/azure/common/types.d.ts +0 -57
- package/dist/src/lib/azure/common/types.js +0 -1
- package/dist/src/lib/azure/construct/event-handler/index.d.ts +0 -2
- package/dist/src/lib/azure/construct/event-handler/index.js +0 -2
- package/dist/src/lib/azure/construct/event-handler/main.d.ts +0 -20
- package/dist/src/lib/azure/construct/event-handler/main.js +0 -139
- package/dist/src/lib/azure/construct/event-handler/types.d.ts +0 -35
- package/dist/src/lib/azure/construct/event-handler/types.js +0 -1
- package/dist/src/lib/azure/construct/function-app/index.d.ts +0 -2
- package/dist/src/lib/azure/construct/function-app/index.js +0 -2
- package/dist/src/lib/azure/construct/function-app/main.d.ts +0 -51
- package/dist/src/lib/azure/construct/function-app/main.js +0 -297
- package/dist/src/lib/azure/construct/function-app/types.d.ts +0 -33
- package/dist/src/lib/azure/construct/function-app/types.js +0 -1
- package/dist/src/lib/azure/construct/index.d.ts +0 -6
- package/dist/src/lib/azure/construct/index.js +0 -6
- package/dist/src/lib/azure/construct/rest-api/index.d.ts +0 -2
- package/dist/src/lib/azure/construct/rest-api/index.js +0 -2
- package/dist/src/lib/azure/construct/rest-api/main.d.ts +0 -20
- package/dist/src/lib/azure/construct/rest-api/main.js +0 -172
- package/dist/src/lib/azure/construct/rest-api/types.d.ts +0 -25
- package/dist/src/lib/azure/construct/rest-api/types.js +0 -1
- package/dist/src/lib/azure/construct/rest-api-function/index.d.ts +0 -2
- package/dist/src/lib/azure/construct/rest-api-function/index.js +0 -2
- package/dist/src/lib/azure/construct/rest-api-function/main.d.ts +0 -19
- package/dist/src/lib/azure/construct/rest-api-function/main.js +0 -255
- package/dist/src/lib/azure/construct/rest-api-function/types.d.ts +0 -29
- package/dist/src/lib/azure/construct/rest-api-function/types.js +0 -1
- package/dist/src/lib/azure/construct/rest-api-with-cache/index.d.ts +0 -2
- package/dist/src/lib/azure/construct/rest-api-with-cache/index.js +0 -2
- package/dist/src/lib/azure/construct/rest-api-with-cache/main.d.ts +0 -12
- package/dist/src/lib/azure/construct/rest-api-with-cache/main.js +0 -56
- package/dist/src/lib/azure/construct/rest-api-with-cache/types.d.ts +0 -13
- package/dist/src/lib/azure/construct/rest-api-with-cache/types.js +0 -1
- package/dist/src/lib/azure/construct/site-with-webapp/index.d.ts +0 -2
- package/dist/src/lib/azure/construct/site-with-webapp/index.js +0 -2
- package/dist/src/lib/azure/construct/site-with-webapp/main.d.ts +0 -19
- package/dist/src/lib/azure/construct/site-with-webapp/main.js +0 -135
- package/dist/src/lib/azure/construct/site-with-webapp/types.d.ts +0 -30
- package/dist/src/lib/azure/construct/site-with-webapp/types.js +0 -1
- package/dist/src/lib/azure/index.d.ts +0 -4
- package/dist/src/lib/azure/index.js +0 -4
- package/dist/src/lib/azure/services/api-management/index.d.ts +0 -2
- package/dist/src/lib/azure/services/api-management/index.js +0 -2
- package/dist/src/lib/azure/services/api-management/main.d.ts +0 -143
- package/dist/src/lib/azure/services/api-management/main.js +0 -244
- package/dist/src/lib/azure/services/api-management/types.d.ts +0 -72
- package/dist/src/lib/azure/services/api-management/types.js +0 -1
- package/dist/src/lib/azure/services/app-configuration/index.d.ts +0 -2
- package/dist/src/lib/azure/services/app-configuration/index.js +0 -2
- package/dist/src/lib/azure/services/app-configuration/main.d.ts +0 -41
- package/dist/src/lib/azure/services/app-configuration/main.js +0 -71
- package/dist/src/lib/azure/services/app-configuration/types.d.ts +0 -3
- package/dist/src/lib/azure/services/app-configuration/types.js +0 -1
- package/dist/src/lib/azure/services/app-service/index.d.ts +0 -2
- package/dist/src/lib/azure/services/app-service/index.js +0 -2
- package/dist/src/lib/azure/services/app-service/main.d.ts +0 -40
- package/dist/src/lib/azure/services/app-service/main.js +0 -90
- package/dist/src/lib/azure/services/app-service/types.d.ts +0 -6
- package/dist/src/lib/azure/services/app-service/types.js +0 -1
- package/dist/src/lib/azure/services/application-insights/index.d.ts +0 -2
- package/dist/src/lib/azure/services/application-insights/index.js +0 -2
- package/dist/src/lib/azure/services/application-insights/main.d.ts +0 -40
- package/dist/src/lib/azure/services/application-insights/main.js +0 -68
- package/dist/src/lib/azure/services/application-insights/types.d.ts +0 -6
- package/dist/src/lib/azure/services/application-insights/types.js +0 -1
- package/dist/src/lib/azure/services/authorisation/constants.d.ts +0 -13
- package/dist/src/lib/azure/services/authorisation/constants.js +0 -14
- package/dist/src/lib/azure/services/authorisation/index.d.ts +0 -3
- package/dist/src/lib/azure/services/authorisation/index.js +0 -3
- package/dist/src/lib/azure/services/authorisation/main.d.ts +0 -84
- package/dist/src/lib/azure/services/authorisation/main.js +0 -120
- package/dist/src/lib/azure/services/authorisation/types.d.ts +0 -3
- package/dist/src/lib/azure/services/authorisation/types.js +0 -1
- package/dist/src/lib/azure/services/cosmosdb/constants.d.ts +0 -8
- package/dist/src/lib/azure/services/cosmosdb/constants.js +0 -10
- package/dist/src/lib/azure/services/cosmosdb/index.d.ts +0 -3
- package/dist/src/lib/azure/services/cosmosdb/index.js +0 -3
- package/dist/src/lib/azure/services/cosmosdb/main.d.ts +0 -87
- package/dist/src/lib/azure/services/cosmosdb/main.js +0 -162
- package/dist/src/lib/azure/services/cosmosdb/types.d.ts +0 -9
- package/dist/src/lib/azure/services/cosmosdb/types.js +0 -1
- package/dist/src/lib/azure/services/dns/index.d.ts +0 -2
- package/dist/src/lib/azure/services/dns/index.js +0 -2
- package/dist/src/lib/azure/services/dns/main.d.ts +0 -58
- package/dist/src/lib/azure/services/dns/main.js +0 -107
- package/dist/src/lib/azure/services/dns/types.d.ts +0 -9
- package/dist/src/lib/azure/services/dns/types.js +0 -1
- package/dist/src/lib/azure/services/eventgrid/index.d.ts +0 -2
- package/dist/src/lib/azure/services/eventgrid/index.js +0 -2
- package/dist/src/lib/azure/services/eventgrid/main.d.ts +0 -69
- package/dist/src/lib/azure/services/eventgrid/main.js +0 -136
- package/dist/src/lib/azure/services/eventgrid/types.d.ts +0 -11
- package/dist/src/lib/azure/services/eventgrid/types.js +0 -1
- package/dist/src/lib/azure/services/function/index.d.ts +0 -2
- package/dist/src/lib/azure/services/function/index.js +0 -2
- package/dist/src/lib/azure/services/function/main.d.ts +0 -60
- package/dist/src/lib/azure/services/function/main.js +0 -223
- package/dist/src/lib/azure/services/function/types.d.ts +0 -20
- package/dist/src/lib/azure/services/function/types.js +0 -1
- package/dist/src/lib/azure/services/index.d.ts +0 -18
- package/dist/src/lib/azure/services/index.js +0 -18
- package/dist/src/lib/azure/services/key-vault/index.d.ts +0 -2
- package/dist/src/lib/azure/services/key-vault/index.js +0 -2
- package/dist/src/lib/azure/services/key-vault/main.d.ts +0 -49
- package/dist/src/lib/azure/services/key-vault/main.js +0 -83
- package/dist/src/lib/azure/services/key-vault/types.d.ts +0 -5
- package/dist/src/lib/azure/services/key-vault/types.js +0 -1
- package/dist/src/lib/azure/services/monitor/index.d.ts +0 -2
- package/dist/src/lib/azure/services/monitor/index.js +0 -2
- package/dist/src/lib/azure/services/monitor/main.d.ts +0 -31
- package/dist/src/lib/azure/services/monitor/main.js +0 -36
- package/dist/src/lib/azure/services/monitor/types.d.ts +0 -3
- package/dist/src/lib/azure/services/monitor/types.js +0 -1
- package/dist/src/lib/azure/services/operational-insights/index.d.ts +0 -2
- package/dist/src/lib/azure/services/operational-insights/index.js +0 -2
- package/dist/src/lib/azure/services/operational-insights/main.d.ts +0 -40
- package/dist/src/lib/azure/services/operational-insights/main.js +0 -64
- package/dist/src/lib/azure/services/operational-insights/types.d.ts +0 -5
- package/dist/src/lib/azure/services/operational-insights/types.js +0 -1
- package/dist/src/lib/azure/services/portal/error.d.ts +0 -5
- package/dist/src/lib/azure/services/portal/error.js +0 -10
- package/dist/src/lib/azure/services/portal/index.d.ts +0 -4
- package/dist/src/lib/azure/services/portal/index.js +0 -4
- package/dist/src/lib/azure/services/portal/main.d.ts +0 -33
- package/dist/src/lib/azure/services/portal/main.js +0 -51
- package/dist/src/lib/azure/services/portal/renderer.d.ts +0 -11
- package/dist/src/lib/azure/services/portal/renderer.js +0 -156
- package/dist/src/lib/azure/services/portal/types.d.ts +0 -40
- package/dist/src/lib/azure/services/portal/types.js +0 -1
- package/dist/src/lib/azure/services/redis/index.d.ts +0 -2
- package/dist/src/lib/azure/services/redis/index.js +0 -2
- package/dist/src/lib/azure/services/redis/main.d.ts +0 -31
- package/dist/src/lib/azure/services/redis/main.js +0 -52
- package/dist/src/lib/azure/services/redis/types.d.ts +0 -3
- package/dist/src/lib/azure/services/redis/types.js +0 -1
- package/dist/src/lib/azure/services/resource-group/index.d.ts +0 -2
- package/dist/src/lib/azure/services/resource-group/index.js +0 -2
- package/dist/src/lib/azure/services/resource-group/main.d.ts +0 -38
- package/dist/src/lib/azure/services/resource-group/main.js +0 -53
- package/dist/src/lib/azure/services/resource-group/types.d.ts +0 -3
- package/dist/src/lib/azure/services/resource-group/types.js +0 -1
- package/dist/src/lib/azure/services/security-center/index.d.ts +0 -2
- package/dist/src/lib/azure/services/security-center/index.js +0 -2
- package/dist/src/lib/azure/services/security-center/main.d.ts +0 -31
- package/dist/src/lib/azure/services/security-center/main.js +0 -33
- package/dist/src/lib/azure/services/security-center/types.d.ts +0 -3
- package/dist/src/lib/azure/services/security-center/types.js +0 -1
- package/dist/src/lib/azure/services/servicebus/index.d.ts +0 -2
- package/dist/src/lib/azure/services/servicebus/index.js +0 -2
- package/dist/src/lib/azure/services/servicebus/main.d.ts +0 -67
- package/dist/src/lib/azure/services/servicebus/main.js +0 -127
- package/dist/src/lib/azure/services/servicebus/types.d.ts +0 -11
- package/dist/src/lib/azure/services/servicebus/types.js +0 -1
- package/dist/src/lib/azure/services/storage/index.d.ts +0 -2
- package/dist/src/lib/azure/services/storage/index.js +0 -2
- package/dist/src/lib/azure/services/storage/main.d.ts +0 -88
- package/dist/src/lib/azure/services/storage/main.js +0 -173
- package/dist/src/lib/azure/services/storage/types.d.ts +0 -20
- package/dist/src/lib/azure/services/storage/types.js +0 -1
- package/dist/src/lib/azure/types/index.d.ts +0 -4
- package/dist/src/lib/azure/types/index.js +0 -1
- package/dist/src/lib/cloudflare/common/construct.d.ts +0 -47
- package/dist/src/lib/cloudflare/common/construct.js +0 -68
- package/dist/src/lib/cloudflare/common/index.d.ts +0 -3
- package/dist/src/lib/cloudflare/common/index.js +0 -3
- package/dist/src/lib/cloudflare/common/stack.d.ts +0 -43
- package/dist/src/lib/cloudflare/common/stack.js +0 -120
- package/dist/src/lib/cloudflare/common/types.d.ts +0 -9
- package/dist/src/lib/cloudflare/common/types.js +0 -1
- package/dist/src/lib/cloudflare/construct/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/construct/index.js +0 -2
- package/dist/src/lib/cloudflare/construct/pages-static-site/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/construct/pages-static-site/index.js +0 -2
- package/dist/src/lib/cloudflare/construct/pages-static-site/main.d.ts +0 -90
- package/dist/src/lib/cloudflare/construct/pages-static-site/main.js +0 -168
- package/dist/src/lib/cloudflare/construct/pages-static-site/types.d.ts +0 -11
- package/dist/src/lib/cloudflare/construct/pages-static-site/types.js +0 -1
- package/dist/src/lib/cloudflare/construct/worker-site/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/construct/worker-site/index.js +0 -2
- package/dist/src/lib/cloudflare/construct/worker-site/main.d.ts +0 -76
- package/dist/src/lib/cloudflare/construct/worker-site/main.js +0 -139
- package/dist/src/lib/cloudflare/construct/worker-site/types.d.ts +0 -11
- package/dist/src/lib/cloudflare/construct/worker-site/types.js +0 -1
- package/dist/src/lib/cloudflare/index.d.ts +0 -4
- package/dist/src/lib/cloudflare/index.js +0 -4
- package/dist/src/lib/cloudflare/services/access/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/access/index.js +0 -2
- package/dist/src/lib/cloudflare/services/access/main.d.ts +0 -108
- package/dist/src/lib/cloudflare/services/access/main.js +0 -237
- package/dist/src/lib/cloudflare/services/access/types.d.ts +0 -23
- package/dist/src/lib/cloudflare/services/access/types.js +0 -1
- package/dist/src/lib/cloudflare/services/api-shield/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/api-shield/index.js +0 -2
- package/dist/src/lib/cloudflare/services/api-shield/main.d.ts +0 -61
- package/dist/src/lib/cloudflare/services/api-shield/main.js +0 -111
- package/dist/src/lib/cloudflare/services/api-shield/types.d.ts +0 -11
- package/dist/src/lib/cloudflare/services/api-shield/types.js +0 -1
- package/dist/src/lib/cloudflare/services/argo/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/argo/index.js +0 -2
- package/dist/src/lib/cloudflare/services/argo/main.d.ts +0 -37
- package/dist/src/lib/cloudflare/services/argo/main.js +0 -56
- package/dist/src/lib/cloudflare/services/argo/types.d.ts +0 -5
- package/dist/src/lib/cloudflare/services/argo/types.js +0 -1
- package/dist/src/lib/cloudflare/services/filter/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/filter/index.js +0 -2
- package/dist/src/lib/cloudflare/services/filter/main.d.ts +0 -29
- package/dist/src/lib/cloudflare/services/filter/main.js +0 -38
- package/dist/src/lib/cloudflare/services/filter/types.d.ts +0 -3
- package/dist/src/lib/cloudflare/services/filter/types.js +0 -1
- package/dist/src/lib/cloudflare/services/firewall/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/firewall/index.js +0 -2
- package/dist/src/lib/cloudflare/services/firewall/main.d.ts +0 -29
- package/dist/src/lib/cloudflare/services/firewall/main.js +0 -38
- package/dist/src/lib/cloudflare/services/firewall/types.d.ts +0 -3
- package/dist/src/lib/cloudflare/services/firewall/types.js +0 -1
- package/dist/src/lib/cloudflare/services/index.d.ts +0 -10
- package/dist/src/lib/cloudflare/services/index.js +0 -10
- package/dist/src/lib/cloudflare/services/page/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/page/index.js +0 -2
- package/dist/src/lib/cloudflare/services/page/main.d.ts +0 -46
- package/dist/src/lib/cloudflare/services/page/main.js +0 -82
- package/dist/src/lib/cloudflare/services/page/types.d.ts +0 -14
- package/dist/src/lib/cloudflare/services/page/types.js +0 -1
- package/dist/src/lib/cloudflare/services/record/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/record/index.js +0 -2
- package/dist/src/lib/cloudflare/services/record/main.d.ts +0 -29
- package/dist/src/lib/cloudflare/services/record/main.js +0 -38
- package/dist/src/lib/cloudflare/services/record/types.d.ts +0 -3
- package/dist/src/lib/cloudflare/services/record/types.js +0 -1
- package/dist/src/lib/cloudflare/services/rule-set/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/rule-set/index.js +0 -2
- package/dist/src/lib/cloudflare/services/rule-set/main.d.ts +0 -29
- package/dist/src/lib/cloudflare/services/rule-set/main.js +0 -38
- package/dist/src/lib/cloudflare/services/rule-set/types.d.ts +0 -3
- package/dist/src/lib/cloudflare/services/rule-set/types.js +0 -1
- package/dist/src/lib/cloudflare/services/worker/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/worker/index.js +0 -2
- package/dist/src/lib/cloudflare/services/worker/main.d.ts +0 -69
- package/dist/src/lib/cloudflare/services/worker/main.js +0 -127
- package/dist/src/lib/cloudflare/services/worker/types.d.ts +0 -14
- package/dist/src/lib/cloudflare/services/worker/types.js +0 -1
- package/dist/src/lib/cloudflare/services/zone/index.d.ts +0 -2
- package/dist/src/lib/cloudflare/services/zone/index.js +0 -2
- package/dist/src/lib/cloudflare/services/zone/main.d.ts +0 -78
- package/dist/src/lib/cloudflare/services/zone/main.js +0 -153
- package/dist/src/lib/cloudflare/services/zone/types.d.ts +0 -19
- package/dist/src/lib/cloudflare/services/zone/types.js +0 -1
- package/dist/src/lib/cloudflare/types/index.d.ts +0 -3
- package/dist/src/lib/cloudflare/types/index.js +0 -1
- package/dist/src/lib/common/construct.d.ts +0 -29
- package/dist/src/lib/common/construct.js +0 -4
- package/dist/src/lib/common/index.d.ts +0 -5
- package/dist/src/lib/common/index.js +0 -12
- package/dist/src/lib/common/stack.d.ts +0 -21
- package/dist/src/lib/common/stack.js +0 -4
- package/dist/src/lib/common/types.d.ts +0 -13
- package/dist/src/lib/common/types.js +0 -1
- package/dist/src/lib/common/utils.d.ts +0 -37
- package/dist/src/lib/common/utils.js +0 -39
- package/dist/src/lib/index.d.ts +0 -4
- package/dist/src/lib/index.js +0 -4
- package/eslint.config.mjs +0 -63
- package/index.ts +0 -1
- package/pnpm-workspace.yaml +0 -3
- package/src/lib/aws/common/construct.ts +0 -167
- package/src/lib/aws/common/index.ts +0 -4
- package/src/lib/aws/common/resource-name-formatter.ts +0 -37
- package/src/lib/aws/common/stack.ts +0 -157
- package/src/lib/aws/common/types.ts +0 -30
- package/src/lib/aws/construct/api-to-any-target/index.ts +0 -3
- package/src/lib/aws/construct/api-to-any-target/main.ts +0 -235
- package/src/lib/aws/construct/api-to-any-target/target.ts +0 -29
- package/src/lib/aws/construct/api-to-any-target/types.ts +0 -69
- package/src/lib/aws/construct/api-to-eventbridge-target/api.ts +0 -40
- package/src/lib/aws/construct/api-to-eventbridge-target/event.ts +0 -16
- package/src/lib/aws/construct/api-to-eventbridge-target/index.ts +0 -4
- package/src/lib/aws/construct/api-to-eventbridge-target/main.ts +0 -547
- package/src/lib/aws/construct/api-to-eventbridge-target/types.ts +0 -113
- package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.ts +0 -17
- package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/index.ts +0 -3
- package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/main.ts +0 -675
- package/src/lib/aws/construct/api-to-eventbridge-target-with-sns/types.ts +0 -24
- package/src/lib/aws/construct/api-to-lambda-target/api.ts +0 -42
- package/src/lib/aws/construct/api-to-lambda-target/index.ts +0 -3
- package/src/lib/aws/construct/api-to-lambda-target/main.ts +0 -284
- package/src/lib/aws/construct/api-to-lambda-target/types.ts +0 -72
- package/src/lib/aws/construct/application-configuration/index.ts +0 -2
- package/src/lib/aws/construct/application-configuration/main.ts +0 -125
- package/src/lib/aws/construct/application-configuration/types.ts +0 -7
- package/src/lib/aws/construct/event-handler/handler.ts +0 -30
- package/src/lib/aws/construct/event-handler/index.ts +0 -3
- package/src/lib/aws/construct/event-handler/main.ts +0 -254
- package/src/lib/aws/construct/event-handler/types.ts +0 -50
- package/src/lib/aws/construct/index.ts +0 -14
- package/src/lib/aws/construct/lambda-with-iam-access/index.ts +0 -2
- package/src/lib/aws/construct/lambda-with-iam-access/main.ts +0 -241
- package/src/lib/aws/construct/lambda-with-iam-access/types.ts +0 -21
- package/src/lib/aws/construct/piped-event-handler/index.ts +0 -2
- package/src/lib/aws/construct/piped-event-handler/main.ts +0 -81
- package/src/lib/aws/construct/piped-event-handler/types.ts +0 -10
- package/src/lib/aws/construct/rest-api-lambda/index.ts +0 -2
- package/src/lib/aws/construct/rest-api-lambda/main.ts +0 -246
- package/src/lib/aws/construct/rest-api-lambda/types.ts +0 -24
- package/src/lib/aws/construct/rest-api-lambda-with-cache/index.ts +0 -2
- package/src/lib/aws/construct/rest-api-lambda-with-cache/main.ts +0 -166
- package/src/lib/aws/construct/rest-api-lambda-with-cache/types.ts +0 -12
- package/src/lib/aws/construct/site-with-ecs-backend/constants.ts +0 -4
- package/src/lib/aws/construct/site-with-ecs-backend/index.ts +0 -3
- package/src/lib/aws/construct/site-with-ecs-backend/main.ts +0 -587
- package/src/lib/aws/construct/site-with-ecs-backend/types.ts +0 -71
- package/src/lib/aws/construct/site-with-lambda-backend/constants.ts +0 -6
- package/src/lib/aws/construct/site-with-lambda-backend/index.ts +0 -3
- package/src/lib/aws/construct/site-with-lambda-backend/main.ts +0 -443
- package/src/lib/aws/construct/site-with-lambda-backend/types.ts +0 -63
- package/src/lib/aws/construct/static-asset-deployment/index.ts +0 -2
- package/src/lib/aws/construct/static-asset-deployment/main.ts +0 -131
- package/src/lib/aws/construct/static-asset-deployment/types.ts +0 -44
- package/src/lib/aws/construct/static-site/index.ts +0 -2
- package/src/lib/aws/construct/static-site/main.ts +0 -212
- package/src/lib/aws/construct/static-site/types.ts +0 -31
- package/src/lib/aws/index.ts +0 -5
- package/src/lib/aws/services/api-gateway/index.ts +0 -2
- package/src/lib/aws/services/api-gateway/main.ts +0 -225
- package/src/lib/aws/services/api-gateway/types.ts +0 -12
- package/src/lib/aws/services/appconfig/constants.ts +0 -52
- package/src/lib/aws/services/appconfig/index.ts +0 -3
- package/src/lib/aws/services/appconfig/main.ts +0 -155
- package/src/lib/aws/services/appconfig/types.ts +0 -25
- package/src/lib/aws/services/certificate-manager/index.ts +0 -2
- package/src/lib/aws/services/certificate-manager/main.ts +0 -73
- package/src/lib/aws/services/certificate-manager/types.ts +0 -12
- package/src/lib/aws/services/cloudfront/index.ts +0 -2
- package/src/lib/aws/services/cloudfront/main.ts +0 -315
- package/src/lib/aws/services/cloudfront/types.ts +0 -15
- package/src/lib/aws/services/cloudtrail/index.ts +0 -2
- package/src/lib/aws/services/cloudtrail/main.ts +0 -87
- package/src/lib/aws/services/cloudtrail/types.ts +0 -5
- package/src/lib/aws/services/cloudwatch/index.ts +0 -3
- package/src/lib/aws/services/cloudwatch/logs.ts +0 -109
- package/src/lib/aws/services/cloudwatch/main.ts +0 -612
- package/src/lib/aws/services/cloudwatch/types.ts +0 -99
- package/src/lib/aws/services/codebuild/index.ts +0 -1
- package/src/lib/aws/services/codebuild/main.ts +0 -78
- package/src/lib/aws/services/constants.ts +0 -4
- package/src/lib/aws/services/dynamodb/index.ts +0 -2
- package/src/lib/aws/services/dynamodb/main.ts +0 -80
- package/src/lib/aws/services/dynamodb/types.ts +0 -12
- package/src/lib/aws/services/elastic-container-registry/index.ts +0 -1
- package/src/lib/aws/services/elastic-container-registry/main.ts +0 -37
- package/src/lib/aws/services/elastic-container-service/index.ts +0 -2
- package/src/lib/aws/services/elastic-container-service/main.ts +0 -195
- package/src/lib/aws/services/elastic-container-service/types.ts +0 -57
- package/src/lib/aws/services/elastic-file-system/index.ts +0 -2
- package/src/lib/aws/services/elastic-file-system/main.ts +0 -92
- package/src/lib/aws/services/elastic-file-system/types.ts +0 -16
- package/src/lib/aws/services/elastic-kubernetes-service/index.ts +0 -2
- package/src/lib/aws/services/elastic-kubernetes-service/main.ts +0 -100
- package/src/lib/aws/services/elastic-kubernetes-service/types.ts +0 -8
- package/src/lib/aws/services/elasticache/index.ts +0 -2
- package/src/lib/aws/services/elasticache/main.ts +0 -115
- package/src/lib/aws/services/elasticache/types.ts +0 -9
- package/src/lib/aws/services/eventbridge/index.ts +0 -3
- package/src/lib/aws/services/eventbridge/main.ts +0 -387
- package/src/lib/aws/services/eventbridge/target.ts +0 -84
- package/src/lib/aws/services/eventbridge/types.ts +0 -48
- package/src/lib/aws/services/evidently/index.ts +0 -2
- package/src/lib/aws/services/evidently/main.ts +0 -123
- package/src/lib/aws/services/evidently/types.ts +0 -27
- package/src/lib/aws/services/identity-access-management/index.ts +0 -1
- package/src/lib/aws/services/identity-access-management/main.ts +0 -726
- package/src/lib/aws/services/index.ts +0 -28
- package/src/lib/aws/services/key-management-service/index.ts +0 -2
- package/src/lib/aws/services/key-management-service/main.ts +0 -43
- package/src/lib/aws/services/key-management-service/types.ts +0 -5
- package/src/lib/aws/services/lambda/index.ts +0 -2
- package/src/lib/aws/services/lambda/main.ts +0 -342
- package/src/lib/aws/services/lambda/types.ts +0 -54
- package/src/lib/aws/services/route53/index.ts +0 -2
- package/src/lib/aws/services/route53/main.ts +0 -179
- package/src/lib/aws/services/route53/types.ts +0 -7
- package/src/lib/aws/services/secrets-manager/index.ts +0 -2
- package/src/lib/aws/services/secrets-manager/main.ts +0 -77
- package/src/lib/aws/services/secrets-manager/types.ts +0 -3
- package/src/lib/aws/services/simple-notification-service/index.ts +0 -2
- package/src/lib/aws/services/simple-notification-service/main.ts +0 -87
- package/src/lib/aws/services/simple-notification-service/types.ts +0 -5
- package/src/lib/aws/services/simple-queue-service/index.ts +0 -2
- package/src/lib/aws/services/simple-queue-service/main.ts +0 -114
- package/src/lib/aws/services/simple-queue-service/types.ts +0 -16
- package/src/lib/aws/services/simple-storage-service/index.ts +0 -2
- package/src/lib/aws/services/simple-storage-service/main.ts +0 -223
- package/src/lib/aws/services/simple-storage-service/types.ts +0 -28
- package/src/lib/aws/services/step-function/index.ts +0 -2
- package/src/lib/aws/services/step-function/main.ts +0 -499
- package/src/lib/aws/services/step-function/types.ts +0 -120
- package/src/lib/aws/services/systems-manager/index.ts +0 -2
- package/src/lib/aws/services/systems-manager/main.ts +0 -115
- package/src/lib/aws/services/systems-manager/types.ts +0 -10
- package/src/lib/aws/services/virtual-private-cloud/index.ts +0 -2
- package/src/lib/aws/services/virtual-private-cloud/ipv6.ts +0 -61
- package/src/lib/aws/services/virtual-private-cloud/main.ts +0 -108
- package/src/lib/aws/services/virtual-private-cloud/types.ts +0 -5
- package/src/lib/aws/services/web-application-firewall/index.ts +0 -2
- package/src/lib/aws/services/web-application-firewall/main.ts +0 -67
- package/src/lib/aws/services/web-application-firewall/types.ts +0 -9
- package/src/lib/aws/types/index.ts +0 -6
- package/src/lib/aws/utils/index.ts +0 -73
- package/src/lib/azure/common/constants.ts +0 -93
- package/src/lib/azure/common/construct.ts +0 -163
- package/src/lib/azure/common/index.ts +0 -6
- package/src/lib/azure/common/resource-name-formatter.ts +0 -43
- package/src/lib/azure/common/stack.ts +0 -133
- package/src/lib/azure/common/tagging.ts +0 -91
- package/src/lib/azure/common/types.ts +0 -59
- package/src/lib/azure/construct/event-handler/index.ts +0 -2
- package/src/lib/azure/construct/event-handler/main.ts +0 -183
- package/src/lib/azure/construct/event-handler/types.ts +0 -49
- package/src/lib/azure/construct/function-app/index.ts +0 -2
- package/src/lib/azure/construct/function-app/main.ts +0 -410
- package/src/lib/azure/construct/function-app/types.ts +0 -45
- package/src/lib/azure/construct/index.ts +0 -6
- package/src/lib/azure/construct/rest-api/index.ts +0 -2
- package/src/lib/azure/construct/rest-api/main.ts +0 -205
- package/src/lib/azure/construct/rest-api/types.ts +0 -33
- package/src/lib/azure/construct/rest-api-function/index.ts +0 -2
- package/src/lib/azure/construct/rest-api-function/main.ts +0 -297
- package/src/lib/azure/construct/rest-api-function/types.ts +0 -39
- package/src/lib/azure/construct/rest-api-with-cache/index.ts +0 -2
- package/src/lib/azure/construct/rest-api-with-cache/main.ts +0 -75
- package/src/lib/azure/construct/rest-api-with-cache/types.ts +0 -15
- package/src/lib/azure/construct/site-with-webapp/index.ts +0 -2
- package/src/lib/azure/construct/site-with-webapp/main.ts +0 -160
- package/src/lib/azure/construct/site-with-webapp/types.ts +0 -33
- package/src/lib/azure/index.ts +0 -4
- package/src/lib/azure/services/api-management/index.ts +0 -2
- package/src/lib/azure/services/api-management/main.ts +0 -398
- package/src/lib/azure/services/api-management/types.ts +0 -93
- package/src/lib/azure/services/app-configuration/index.ts +0 -2
- package/src/lib/azure/services/app-configuration/main.ts +0 -90
- package/src/lib/azure/services/app-configuration/types.ts +0 -3
- package/src/lib/azure/services/app-service/index.ts +0 -2
- package/src/lib/azure/services/app-service/main.ts +0 -123
- package/src/lib/azure/services/app-service/types.ts +0 -6
- package/src/lib/azure/services/application-insights/index.ts +0 -2
- package/src/lib/azure/services/application-insights/main.ts +0 -97
- package/src/lib/azure/services/application-insights/types.ts +0 -7
- package/src/lib/azure/services/authorisation/constants.ts +0 -13
- package/src/lib/azure/services/authorisation/index.ts +0 -3
- package/src/lib/azure/services/authorisation/main.ts +0 -202
- package/src/lib/azure/services/authorisation/types.ts +0 -3
- package/src/lib/azure/services/cosmosdb/constants.ts +0 -9
- package/src/lib/azure/services/cosmosdb/index.ts +0 -3
- package/src/lib/azure/services/cosmosdb/main.ts +0 -277
- package/src/lib/azure/services/cosmosdb/types.ts +0 -14
- package/src/lib/azure/services/dns/index.ts +0 -2
- package/src/lib/azure/services/dns/main.ts +0 -154
- package/src/lib/azure/services/dns/types.ts +0 -9
- package/src/lib/azure/services/eventgrid/index.ts +0 -2
- package/src/lib/azure/services/eventgrid/main.ts +0 -221
- package/src/lib/azure/services/eventgrid/types.ts +0 -17
- package/src/lib/azure/services/function/index.ts +0 -2
- package/src/lib/azure/services/function/main.ts +0 -279
- package/src/lib/azure/services/function/types.ts +0 -23
- package/src/lib/azure/services/index.ts +0 -18
- package/src/lib/azure/services/key-vault/index.ts +0 -2
- package/src/lib/azure/services/key-vault/main.ts +0 -112
- package/src/lib/azure/services/key-vault/types.ts +0 -5
- package/src/lib/azure/services/monitor/index.ts +0 -2
- package/src/lib/azure/services/monitor/main.ts +0 -52
- package/src/lib/azure/services/monitor/types.ts +0 -3
- package/src/lib/azure/services/operational-insights/index.ts +0 -2
- package/src/lib/azure/services/operational-insights/main.ts +0 -87
- package/src/lib/azure/services/operational-insights/types.ts +0 -5
- package/src/lib/azure/services/portal/error.ts +0 -12
- package/src/lib/azure/services/portal/index.ts +0 -4
- package/src/lib/azure/services/portal/main.ts +0 -81
- package/src/lib/azure/services/portal/renderer.ts +0 -182
- package/src/lib/azure/services/portal/types.ts +0 -45
- package/src/lib/azure/services/redis/index.ts +0 -2
- package/src/lib/azure/services/redis/main.ts +0 -66
- package/src/lib/azure/services/redis/types.ts +0 -3
- package/src/lib/azure/services/resource-group/index.ts +0 -2
- package/src/lib/azure/services/resource-group/main.ts +0 -80
- package/src/lib/azure/services/resource-group/types.ts +0 -3
- package/src/lib/azure/services/security-center/index.ts +0 -2
- package/src/lib/azure/services/security-center/main.ts +0 -42
- package/src/lib/azure/services/security-center/types.ts +0 -3
- package/src/lib/azure/services/servicebus/index.ts +0 -2
- package/src/lib/azure/services/servicebus/main.ts +0 -209
- package/src/lib/azure/services/servicebus/types.ts +0 -17
- package/src/lib/azure/services/storage/index.ts +0 -2
- package/src/lib/azure/services/storage/main.ts +0 -258
- package/src/lib/azure/services/storage/types.ts +0 -30
- package/src/lib/azure/types/index.ts +0 -4
- package/src/lib/cloudflare/common/construct.ts +0 -91
- package/src/lib/cloudflare/common/index.ts +0 -3
- package/src/lib/cloudflare/common/stack.ts +0 -132
- package/src/lib/cloudflare/common/types.ts +0 -10
- package/src/lib/cloudflare/construct/index.ts +0 -2
- package/src/lib/cloudflare/construct/pages-static-site/index.ts +0 -2
- package/src/lib/cloudflare/construct/pages-static-site/main.ts +0 -188
- package/src/lib/cloudflare/construct/pages-static-site/types.ts +0 -12
- package/src/lib/cloudflare/construct/worker-site/index.ts +0 -2
- package/src/lib/cloudflare/construct/worker-site/main.ts +0 -155
- package/src/lib/cloudflare/construct/worker-site/types.ts +0 -18
- package/src/lib/cloudflare/index.ts +0 -4
- package/src/lib/cloudflare/services/access/index.ts +0 -2
- package/src/lib/cloudflare/services/access/main.ts +0 -342
- package/src/lib/cloudflare/services/access/types.ts +0 -25
- package/src/lib/cloudflare/services/api-shield/index.ts +0 -2
- package/src/lib/cloudflare/services/api-shield/main.ts +0 -158
- package/src/lib/cloudflare/services/api-shield/types.ts +0 -13
- package/src/lib/cloudflare/services/argo/index.ts +0 -2
- package/src/lib/cloudflare/services/argo/main.ts +0 -68
- package/src/lib/cloudflare/services/argo/types.ts +0 -4
- package/src/lib/cloudflare/services/filter/index.ts +0 -2
- package/src/lib/cloudflare/services/filter/main.ts +0 -45
- package/src/lib/cloudflare/services/filter/types.ts +0 -3
- package/src/lib/cloudflare/services/firewall/index.ts +0 -2
- package/src/lib/cloudflare/services/firewall/main.ts +0 -45
- package/src/lib/cloudflare/services/firewall/types.ts +0 -3
- package/src/lib/cloudflare/services/index.ts +0 -10
- package/src/lib/cloudflare/services/page/index.ts +0 -2
- package/src/lib/cloudflare/services/page/main.ts +0 -104
- package/src/lib/cloudflare/services/page/types.ts +0 -12
- package/src/lib/cloudflare/services/record/index.ts +0 -2
- package/src/lib/cloudflare/services/record/main.ts +0 -45
- package/src/lib/cloudflare/services/record/types.ts +0 -3
- package/src/lib/cloudflare/services/rule-set/index.ts +0 -2
- package/src/lib/cloudflare/services/rule-set/main.ts +0 -45
- package/src/lib/cloudflare/services/rule-set/types.ts +0 -3
- package/src/lib/cloudflare/services/worker/index.ts +0 -2
- package/src/lib/cloudflare/services/worker/main.ts +0 -176
- package/src/lib/cloudflare/services/worker/types.ts +0 -22
- package/src/lib/cloudflare/services/zone/index.ts +0 -2
- package/src/lib/cloudflare/services/zone/main.ts +0 -221
- package/src/lib/cloudflare/services/zone/types.ts +0 -21
- package/src/lib/cloudflare/types/index.ts +0 -3
- package/src/lib/common/construct.ts +0 -35
- package/src/lib/common/index.ts +0 -18
- package/src/lib/common/stack.ts +0 -26
- package/src/lib/common/types.ts +0 -14
- package/src/lib/common/utils.ts +0 -40
- package/src/lib/index.ts +0 -4
- package/tsconfig.prd.json +0 -8
- package/vitest.config.ts +0 -37
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
import { ICertificate } from 'aws-cdk-lib/aws-certificatemanager';
|
|
2
|
-
import { CachePolicy, Distribution, FunctionAssociation, IFunction, OriginRequestPolicy, ResponseHeadersPolicy } from 'aws-cdk-lib/aws-cloudfront';
|
|
3
|
-
import { HttpOrigin } from 'aws-cdk-lib/aws-cloudfront-origins';
|
|
4
|
-
import { IVpc } from 'aws-cdk-lib/aws-ec2';
|
|
5
|
-
import { AssetImage, Cluster, FargateService, FargateTaskDefinition } from 'aws-cdk-lib/aws-ecs';
|
|
6
|
-
import { FileSystem } from 'aws-cdk-lib/aws-efs';
|
|
7
|
-
import { ApplicationListener, ApplicationLoadBalancer, ApplicationTargetGroup } from 'aws-cdk-lib/aws-elasticloadbalancingv2';
|
|
8
|
-
import { PolicyDocument, Role } from 'aws-cdk-lib/aws-iam';
|
|
9
|
-
import { LogGroup } from 'aws-cdk-lib/aws-logs';
|
|
10
|
-
import { IHostedZone } from 'aws-cdk-lib/aws-route53';
|
|
11
|
-
import { IBucket } from 'aws-cdk-lib/aws-s3';
|
|
12
|
-
import { Construct } from 'constructs';
|
|
13
|
-
import { CommonConstruct } from '../../common/index.js';
|
|
14
|
-
import { SiteCachePolicyProps, SiteResponseHeadersPolicyProps, SiteWithEcsBackendProps } from './types.js';
|
|
15
|
-
/**
|
|
16
|
-
* @classdesc Provides a construct to create and deploy a site hosted with an clustered ECS/ELB backend
|
|
17
|
-
* @example
|
|
18
|
-
* import { SiteWithEcsBackend, SiteWithEcsBackendProps } '@gradientedge/cdk-utils'
|
|
19
|
-
* import { Construct } from 'constructs'
|
|
20
|
-
*
|
|
21
|
-
* class CustomConstruct extends SiteWithEcsBackend {
|
|
22
|
-
* constructor(parent: Construct, id: string, props: SiteWithEcsBackendProps) {
|
|
23
|
-
* super(parent, id, props)
|
|
24
|
-
* this.props = props
|
|
25
|
-
* this.id = id
|
|
26
|
-
* this.initResources()
|
|
27
|
-
* }
|
|
28
|
-
* }
|
|
29
|
-
*/
|
|
30
|
-
export declare class SiteWithEcsBackend extends CommonConstruct {
|
|
31
|
-
props: SiteWithEcsBackendProps;
|
|
32
|
-
id: string;
|
|
33
|
-
siteHostedZone: IHostedZone;
|
|
34
|
-
siteCertificate: ICertificate;
|
|
35
|
-
siteRegionalCertificate: ICertificate;
|
|
36
|
-
siteEcsPolicy: PolicyDocument;
|
|
37
|
-
siteEcsRole: Role;
|
|
38
|
-
siteEcsEnvironment: {
|
|
39
|
-
[key: string]: string;
|
|
40
|
-
};
|
|
41
|
-
siteVpc: IVpc;
|
|
42
|
-
siteSecrets: any;
|
|
43
|
-
siteEcsCluster: Cluster;
|
|
44
|
-
siteEcsLogGroup: LogGroup;
|
|
45
|
-
siteEcsBuildArgs: any;
|
|
46
|
-
siteEcsContainerImage: AssetImage;
|
|
47
|
-
siteEcsService: FargateService;
|
|
48
|
-
siteEcsTaskDefinition: FargateTaskDefinition;
|
|
49
|
-
siteEcsListener: ApplicationListener;
|
|
50
|
-
siteEcsLoadBalancer: ApplicationLoadBalancer;
|
|
51
|
-
siteEcsTargetGroup: ApplicationTargetGroup;
|
|
52
|
-
siteFileSystem: FileSystem;
|
|
53
|
-
siteLogBucket: IBucket;
|
|
54
|
-
siteOrigin: HttpOrigin;
|
|
55
|
-
siteDistribution: Distribution;
|
|
56
|
-
siteInternalDomainName: string;
|
|
57
|
-
siteExternalDomainName: string;
|
|
58
|
-
siteDomainNames: string[];
|
|
59
|
-
siteCloudfrontFunction: IFunction;
|
|
60
|
-
siteFunctionAssociations: FunctionAssociation[];
|
|
61
|
-
siteOriginRequestPolicy: OriginRequestPolicy;
|
|
62
|
-
siteOriginResponseHeadersPolicy?: ResponseHeadersPolicy;
|
|
63
|
-
siteCachePolicy: CachePolicy;
|
|
64
|
-
constructor(parent: Construct, id: string, props: SiteWithEcsBackendProps);
|
|
65
|
-
/**
|
|
66
|
-
* @summary Initialise and provision resources
|
|
67
|
-
*/
|
|
68
|
-
initResources(): void;
|
|
69
|
-
/**
|
|
70
|
-
* @summary Method to resolve a hosted zone based on domain attributes
|
|
71
|
-
*/
|
|
72
|
-
protected resolveHostedZone(): void;
|
|
73
|
-
/**
|
|
74
|
-
* @summary Method to resolve a certificate based on attributes
|
|
75
|
-
*/
|
|
76
|
-
protected resolveCertificate(): void;
|
|
77
|
-
protected resolveGlobalCertificate(): void;
|
|
78
|
-
protected resolveRegionalCertificate(): void;
|
|
79
|
-
/**
|
|
80
|
-
* @summary Method to resolve secrets from SecretsManager
|
|
81
|
-
* - To be implemented in the overriding method in the implementation class
|
|
82
|
-
*/
|
|
83
|
-
protected resolveSiteSecrets(): void;
|
|
84
|
-
/**
|
|
85
|
-
* @summary Method to resolve site domain names
|
|
86
|
-
*/
|
|
87
|
-
protected resolveSiteDomainNames(): void;
|
|
88
|
-
/**
|
|
89
|
-
* Create VPC
|
|
90
|
-
*/
|
|
91
|
-
protected createVpc(): void;
|
|
92
|
-
/**
|
|
93
|
-
* @summary Method to create iam policy for ECS Task
|
|
94
|
-
*/
|
|
95
|
-
protected createEcsPolicy(): void;
|
|
96
|
-
/**
|
|
97
|
-
* @summary Method to create iam role for ECS Task
|
|
98
|
-
*/
|
|
99
|
-
protected createEcsRole(): void;
|
|
100
|
-
/**
|
|
101
|
-
* @summary Method to create environment variables used by ECS task
|
|
102
|
-
*/
|
|
103
|
-
protected createEcsEnvironment(): void;
|
|
104
|
-
/**
|
|
105
|
-
* Method to create an ECS cluster
|
|
106
|
-
*/
|
|
107
|
-
protected createEcsCluster(): void;
|
|
108
|
-
/**
|
|
109
|
-
* Method to create log group used by ECS task
|
|
110
|
-
*/
|
|
111
|
-
protected createEcsLogGroup(): void;
|
|
112
|
-
/**
|
|
113
|
-
* Method to create docker build arguments for ECS Image step
|
|
114
|
-
*/
|
|
115
|
-
protected createEcsBuildArgs(): void;
|
|
116
|
-
/**
|
|
117
|
-
* Method to create container image for ECS task
|
|
118
|
-
*/
|
|
119
|
-
protected createEcsContainerImage(): void;
|
|
120
|
-
/**
|
|
121
|
-
* Method to create Application Load balanced ECS Fargate Service
|
|
122
|
-
*/
|
|
123
|
-
protected createEcsService(): void;
|
|
124
|
-
/**
|
|
125
|
-
* Method to create log bucket for site distribution
|
|
126
|
-
*/
|
|
127
|
-
protected createSiteLogBucket(): void;
|
|
128
|
-
protected createSiteCachePolicy(id: string, siteCachePolicy: SiteCachePolicyProps): CachePolicy;
|
|
129
|
-
protected createSiteOriginCachePolicy(): void;
|
|
130
|
-
protected createSiteOriginRequestPolicy(): void;
|
|
131
|
-
protected createResponseHeaderPolicy(props: SiteResponseHeadersPolicyProps): ResponseHeadersPolicy | undefined;
|
|
132
|
-
protected createSiteOriginResponseHeadersPolicy(): void;
|
|
133
|
-
protected createSiteOrigin(): void;
|
|
134
|
-
/**
|
|
135
|
-
* @summary Method to create a site cloudfront function
|
|
136
|
-
*/
|
|
137
|
-
protected createSiteCloudfrontFunction(): void;
|
|
138
|
-
/**
|
|
139
|
-
* @summary Method to create a site cloudfront function associations
|
|
140
|
-
*/
|
|
141
|
-
protected resolveSiteFunctionAssociations(): void;
|
|
142
|
-
/**
|
|
143
|
-
* Method to create Site distribution
|
|
144
|
-
*/
|
|
145
|
-
protected createDistribution(): void;
|
|
146
|
-
/**
|
|
147
|
-
* Method to create Route53 records for distribution
|
|
148
|
-
*/
|
|
149
|
-
protected createNetworkMappings(): void;
|
|
150
|
-
/**
|
|
151
|
-
* Method to invalidation the cloudfront distribution cache after a deployment
|
|
152
|
-
*/
|
|
153
|
-
protected invalidateDistributionCache(): void;
|
|
154
|
-
}
|
|
@@ -1,437 +0,0 @@
|
|
|
1
|
-
import { Duration } from 'aws-cdk-lib';
|
|
2
|
-
import { CachePolicy, FunctionEventType, OriginProtocolPolicy, OriginRequestPolicy, ResponseHeadersPolicy, } from 'aws-cdk-lib/aws-cloudfront';
|
|
3
|
-
import { HttpOrigin } from 'aws-cdk-lib/aws-cloudfront-origins';
|
|
4
|
-
import { ContainerImage, LogDriver, } from 'aws-cdk-lib/aws-ecs';
|
|
5
|
-
import { ApplicationLoadBalancedFargateService } from 'aws-cdk-lib/aws-ecs-patterns';
|
|
6
|
-
import { PolicyDocument, PolicyStatement } from 'aws-cdk-lib/aws-iam';
|
|
7
|
-
import _ from 'lodash';
|
|
8
|
-
import { CommonConstruct } from '../../common/index.js';
|
|
9
|
-
/**
|
|
10
|
-
* @classdesc Provides a construct to create and deploy a site hosted with an clustered ECS/ELB backend
|
|
11
|
-
* @example
|
|
12
|
-
* import { SiteWithEcsBackend, SiteWithEcsBackendProps } '@gradientedge/cdk-utils'
|
|
13
|
-
* import { Construct } from 'constructs'
|
|
14
|
-
*
|
|
15
|
-
* class CustomConstruct extends SiteWithEcsBackend {
|
|
16
|
-
* constructor(parent: Construct, id: string, props: SiteWithEcsBackendProps) {
|
|
17
|
-
* super(parent, id, props)
|
|
18
|
-
* this.props = props
|
|
19
|
-
* this.id = id
|
|
20
|
-
* this.initResources()
|
|
21
|
-
* }
|
|
22
|
-
* }
|
|
23
|
-
*/
|
|
24
|
-
export class SiteWithEcsBackend extends CommonConstruct {
|
|
25
|
-
/* site properties */
|
|
26
|
-
props;
|
|
27
|
-
id;
|
|
28
|
-
/* site resources */
|
|
29
|
-
siteHostedZone;
|
|
30
|
-
siteCertificate;
|
|
31
|
-
siteRegionalCertificate;
|
|
32
|
-
siteEcsPolicy;
|
|
33
|
-
siteEcsRole;
|
|
34
|
-
siteEcsEnvironment;
|
|
35
|
-
siteVpc;
|
|
36
|
-
siteSecrets;
|
|
37
|
-
siteEcsCluster;
|
|
38
|
-
siteEcsLogGroup;
|
|
39
|
-
siteEcsBuildArgs = {};
|
|
40
|
-
siteEcsContainerImage;
|
|
41
|
-
siteEcsService;
|
|
42
|
-
siteEcsTaskDefinition;
|
|
43
|
-
siteEcsListener;
|
|
44
|
-
siteEcsLoadBalancer;
|
|
45
|
-
siteEcsTargetGroup;
|
|
46
|
-
siteFileSystem;
|
|
47
|
-
siteLogBucket;
|
|
48
|
-
siteOrigin;
|
|
49
|
-
siteDistribution;
|
|
50
|
-
siteInternalDomainName;
|
|
51
|
-
siteExternalDomainName;
|
|
52
|
-
siteDomainNames;
|
|
53
|
-
siteCloudfrontFunction;
|
|
54
|
-
siteFunctionAssociations;
|
|
55
|
-
siteOriginRequestPolicy;
|
|
56
|
-
siteOriginResponseHeadersPolicy;
|
|
57
|
-
siteCachePolicy;
|
|
58
|
-
constructor(parent, id, props) {
|
|
59
|
-
super(parent, id, props);
|
|
60
|
-
this.props = props;
|
|
61
|
-
this.id = id;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* @summary Initialise and provision resources
|
|
65
|
-
*/
|
|
66
|
-
initResources() {
|
|
67
|
-
this.resolveHostedZone();
|
|
68
|
-
this.resolveCertificate();
|
|
69
|
-
this.resolveSiteSecrets();
|
|
70
|
-
this.resolveSiteDomainNames();
|
|
71
|
-
this.createSiteLogBucket();
|
|
72
|
-
this.createVpc();
|
|
73
|
-
this.createEcsPolicy();
|
|
74
|
-
this.createEcsRole();
|
|
75
|
-
this.createEcsEnvironment();
|
|
76
|
-
this.createEcsCluster();
|
|
77
|
-
this.createEcsLogGroup();
|
|
78
|
-
this.createEcsBuildArgs();
|
|
79
|
-
this.createEcsContainerImage();
|
|
80
|
-
this.createEcsService();
|
|
81
|
-
this.createSiteOriginCachePolicy();
|
|
82
|
-
this.createSiteOriginRequestPolicy();
|
|
83
|
-
this.createSiteOriginResponseHeadersPolicy();
|
|
84
|
-
this.createSiteOrigin();
|
|
85
|
-
this.createSiteCloudfrontFunction();
|
|
86
|
-
this.resolveSiteFunctionAssociations();
|
|
87
|
-
this.createDistribution();
|
|
88
|
-
this.createNetworkMappings();
|
|
89
|
-
this.invalidateDistributionCache();
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* @summary Method to resolve a hosted zone based on domain attributes
|
|
93
|
-
*/
|
|
94
|
-
resolveHostedZone() {
|
|
95
|
-
this.siteHostedZone = this.route53Manager.withHostedZoneFromFullyQualifiedDomainName(`${this.id}-hosted-zone`, this, this.props.useExistingHostedZone);
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* @summary Method to resolve a certificate based on attributes
|
|
99
|
-
*/
|
|
100
|
-
resolveCertificate() {
|
|
101
|
-
this.resolveGlobalCertificate();
|
|
102
|
-
this.resolveRegionalCertificate();
|
|
103
|
-
}
|
|
104
|
-
resolveGlobalCertificate() {
|
|
105
|
-
if (this.props.siteCertificate.useExistingCertificate &&
|
|
106
|
-
this.props.siteCertificate.certificateSsmName &&
|
|
107
|
-
this.props.siteCertificate.certificateRegion) {
|
|
108
|
-
this.props.siteCertificate.certificateArn = this.ssmManager.readStringParameterFromRegion(`${this.id}-certificate-parameter`, this, this.props.siteCertificate.certificateSsmName, this.props.siteCertificate.certificateRegion);
|
|
109
|
-
}
|
|
110
|
-
this.siteCertificate = this.acmManager.resolveCertificate(`${this.id}-certificate`, this, this.props.siteCertificate);
|
|
111
|
-
}
|
|
112
|
-
resolveRegionalCertificate() {
|
|
113
|
-
if (this.props.siteRegionalCertificate.useExistingCertificate &&
|
|
114
|
-
this.props.siteRegionalCertificate.certificateSsmName &&
|
|
115
|
-
this.props.siteRegionalCertificate.certificateRegion) {
|
|
116
|
-
this.props.siteRegionalCertificate.certificateArn = this.ssmManager.readStringParameterFromRegion(`${this.id}-regional-certificate-parameter`, this, this.props.siteRegionalCertificate.certificateSsmName, this.props.siteRegionalCertificate.certificateRegion);
|
|
117
|
-
}
|
|
118
|
-
this.siteRegionalCertificate = this.acmManager.resolveCertificate(`${this.id}-regional-certificate`, this, this.props.siteRegionalCertificate, this.siteHostedZone);
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* @summary Method to resolve secrets from SecretsManager
|
|
122
|
-
* - To be implemented in the overriding method in the implementation class
|
|
123
|
-
*/
|
|
124
|
-
resolveSiteSecrets() { }
|
|
125
|
-
/**
|
|
126
|
-
* @summary Method to resolve site domain names
|
|
127
|
-
*/
|
|
128
|
-
resolveSiteDomainNames() {
|
|
129
|
-
/* the internal domain name used by ELB */
|
|
130
|
-
this.siteInternalDomainName =
|
|
131
|
-
this.isProductionStage() || this.props.skipStageForARecords
|
|
132
|
-
? `${this.props.siteSubDomain}-internal.${this.fullyQualifiedDomainName}`
|
|
133
|
-
: `${this.props.siteSubDomain}-internal-${this.props.stage}.${this.fullyQualifiedDomainName}`;
|
|
134
|
-
/* the external domain name exposed to CloudFront */
|
|
135
|
-
this.siteExternalDomainName =
|
|
136
|
-
this.isProductionStage() || this.props.skipStageForARecords
|
|
137
|
-
? `${this.props.siteSubDomain}.${this.fullyQualifiedDomainName}`
|
|
138
|
-
: `${this.props.siteSubDomain}-${this.props.stage}.${this.fullyQualifiedDomainName}`;
|
|
139
|
-
this.siteDomainNames = [this.siteExternalDomainName];
|
|
140
|
-
}
|
|
141
|
-
/**
|
|
142
|
-
* Create VPC
|
|
143
|
-
*/
|
|
144
|
-
createVpc() {
|
|
145
|
-
if (this.props.useExistingVpc) {
|
|
146
|
-
this.siteVpc = this.vpcManager.retrieveCommonVpc(`${this.id}-vpc`, this, this.props.siteVpc.vpcName);
|
|
147
|
-
}
|
|
148
|
-
else {
|
|
149
|
-
this.siteVpc = this.vpcManager.createCommonVpc(`${this.id}-vpc`, this, this.props.siteVpc, this.props.siteVpc.vpcName);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* @summary Method to create iam policy for ECS Task
|
|
154
|
-
*/
|
|
155
|
-
createEcsPolicy() {
|
|
156
|
-
this.siteEcsPolicy = new PolicyDocument({
|
|
157
|
-
statements: [this.iamManager.statementForCreateAnyLogStream()],
|
|
158
|
-
});
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* @summary Method to create iam role for ECS Task
|
|
162
|
-
*/
|
|
163
|
-
createEcsRole() {
|
|
164
|
-
this.siteEcsRole = this.iamManager.createRoleForEcsExecution(`${this.id}-ecs-role`, this, this.siteEcsPolicy);
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* @summary Method to create environment variables used by ECS task
|
|
168
|
-
*/
|
|
169
|
-
createEcsEnvironment() {
|
|
170
|
-
this.siteEcsEnvironment = {
|
|
171
|
-
LOG_LEVEL: this.props.logLevel,
|
|
172
|
-
NODE_ENV: this.props.nodeEnv,
|
|
173
|
-
TZ: this.props.timezone,
|
|
174
|
-
};
|
|
175
|
-
}
|
|
176
|
-
/**
|
|
177
|
-
* Method to create an ECS cluster
|
|
178
|
-
*/
|
|
179
|
-
createEcsCluster() {
|
|
180
|
-
this.siteEcsCluster = this.ecsManager.createEcsCluster(`${this.id}-cluster`, this, this.props.siteCluster, this.siteVpc);
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* Method to create log group used by ECS task
|
|
184
|
-
*/
|
|
185
|
-
createEcsLogGroup() {
|
|
186
|
-
this.siteEcsLogGroup = this.logManager.createLogGroup(`${this.id}-ecs-log-group`, this, this.props.siteLog);
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Method to create docker build arguments for ECS Image step
|
|
190
|
-
*/
|
|
191
|
-
createEcsBuildArgs() {
|
|
192
|
-
this.siteEcsBuildArgs = {};
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Method to create container image for ECS task
|
|
196
|
-
*/
|
|
197
|
-
createEcsContainerImage() {
|
|
198
|
-
this.siteEcsContainerImage = ContainerImage.fromAsset(this.props.siteEcsContainerImagePath, {
|
|
199
|
-
buildArgs: this.siteEcsBuildArgs,
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* Method to create Application Load balanced ECS Fargate Service
|
|
204
|
-
*/
|
|
205
|
-
createEcsService() {
|
|
206
|
-
const fargateService = new ApplicationLoadBalancedFargateService(this, `${this.id}-ecs-service`, {
|
|
207
|
-
assignPublicIp: true,
|
|
208
|
-
certificate: this.siteRegionalCertificate,
|
|
209
|
-
cluster: this.siteEcsCluster,
|
|
210
|
-
cpu: this.props.siteTask.cpu,
|
|
211
|
-
desiredCount: this.props.siteTask.desiredCount,
|
|
212
|
-
domainName: this.siteInternalDomainName,
|
|
213
|
-
domainZone: this.siteHostedZone,
|
|
214
|
-
enableECSManagedTags: true,
|
|
215
|
-
healthCheckGracePeriod: Duration.seconds(60),
|
|
216
|
-
listenerPort: this.props.siteTask.listenerPort,
|
|
217
|
-
loadBalancerName: this.resourceNameFormatter.format(this.props.siteTask.loadBalancerName ?? this.id),
|
|
218
|
-
maxHealthyPercent: this.props.siteTask.maxHealthyPercent,
|
|
219
|
-
memoryLimitMiB: this.props.siteTask.memoryLimitMiB,
|
|
220
|
-
minHealthyPercent: this.props.siteTask.minHealthyPercent,
|
|
221
|
-
serviceName: this.resourceNameFormatter.format(this.props.siteTask.serviceName ?? this.id),
|
|
222
|
-
taskDefinition: this.props.siteTask.taskDefinition,
|
|
223
|
-
taskImageOptions: {
|
|
224
|
-
containerPort: this.props.siteTask.taskImageOptions?.containerPort,
|
|
225
|
-
enableLogging: true,
|
|
226
|
-
environment: this.siteEcsEnvironment,
|
|
227
|
-
executionRole: this.siteEcsRole,
|
|
228
|
-
image: this.siteEcsContainerImage,
|
|
229
|
-
logDriver: LogDriver.awsLogs({
|
|
230
|
-
logGroup: this.siteEcsLogGroup,
|
|
231
|
-
logRetention: this.props.siteTask.logging?.logRetention,
|
|
232
|
-
multilinePattern: this.props.siteTask.logging?.multilinePattern,
|
|
233
|
-
streamPrefix: `${this.id}-${this.props.stage}/ecs`,
|
|
234
|
-
}),
|
|
235
|
-
secrets: this.siteSecrets,
|
|
236
|
-
taskRole: this.siteEcsRole,
|
|
237
|
-
},
|
|
238
|
-
});
|
|
239
|
-
if (this.props.siteHealthCheck) {
|
|
240
|
-
fargateService.targetGroup.configureHealthCheck({
|
|
241
|
-
enabled: this.props.siteHealthCheck.enabled ?? true,
|
|
242
|
-
healthyGrpcCodes: this.props.siteHealthCheck.healthyGrpcCodes,
|
|
243
|
-
healthyHttpCodes: this.props.siteHealthCheck.healthyHttpCodes,
|
|
244
|
-
healthyThresholdCount: this.props.siteHealthCheck.healthyThresholdCount,
|
|
245
|
-
interval: Duration.seconds(this.props.siteHealthCheck.intervalInSecs),
|
|
246
|
-
path: this.props.siteHealthCheck.path ?? '/',
|
|
247
|
-
port: this.props.siteHealthCheck.port,
|
|
248
|
-
protocol: this.props.siteHealthCheck.protocol,
|
|
249
|
-
timeout: Duration.seconds(this.props.siteHealthCheck.timeoutInSecs),
|
|
250
|
-
unhealthyThresholdCount: this.props.siteHealthCheck.unhealthyThresholdCount,
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
this.siteEcsService = fargateService.service;
|
|
254
|
-
this.siteEcsTaskDefinition = fargateService.taskDefinition;
|
|
255
|
-
this.siteEcsListener = fargateService.listener;
|
|
256
|
-
this.siteEcsLoadBalancer = fargateService.loadBalancer;
|
|
257
|
-
this.siteEcsTargetGroup = fargateService.targetGroup;
|
|
258
|
-
fargateService.loadBalancer.logAccessLogs(this.siteLogBucket, 'alb');
|
|
259
|
-
if (this.props.siteTask.siteScaling) {
|
|
260
|
-
const scalableTaskCount = this.siteEcsService.autoScaleTaskCount({
|
|
261
|
-
maxCapacity: this.props.siteTask.siteScaling.maxCapacity ?? 4,
|
|
262
|
-
minCapacity: this.props.siteTask.siteScaling.minCapacity,
|
|
263
|
-
});
|
|
264
|
-
if (this.props.siteTask.siteScaling.scaleOnCpuUtilization) {
|
|
265
|
-
scalableTaskCount.scaleOnCpuUtilization(`${this.id}-cpu-scaling`, {
|
|
266
|
-
targetUtilizationPercent: this.props.siteTask.siteScaling.scaleOnCpuUtilization ?? 50,
|
|
267
|
-
});
|
|
268
|
-
}
|
|
269
|
-
if (this.props.siteTask.siteScaling.scaleOnMemoryUtilization) {
|
|
270
|
-
scalableTaskCount.scaleOnMemoryUtilization(`${this.id}-mem-scaling`, {
|
|
271
|
-
targetUtilizationPercent: this.props.siteTask.siteScaling.scaleOnMemoryUtilization ?? 50,
|
|
272
|
-
});
|
|
273
|
-
}
|
|
274
|
-
if (this.props.siteTask.siteScaling.scaleOnRequestsPerTarget) {
|
|
275
|
-
scalableTaskCount.scaleOnRequestCount(`${this.id}-req-count`, {
|
|
276
|
-
requestsPerTarget: this.props.siteTask.siteScaling.scaleOnRequestsPerTarget ?? 10000,
|
|
277
|
-
targetGroup: this.siteEcsTargetGroup,
|
|
278
|
-
});
|
|
279
|
-
}
|
|
280
|
-
if (this.props.siteTask.siteScaling.scaleOnSchedule) {
|
|
281
|
-
scalableTaskCount.scaleOnSchedule(`${this.id}-schedule`, this.props.siteTask.siteScaling.scaleOnSchedule);
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
/* if enabled, add efs with access point and mount */
|
|
285
|
-
if (this.props.siteFileSystem) {
|
|
286
|
-
this.siteFileSystem = this.efsManager.createFileSystem(`${this.id}-fs`, this, this.props.siteFileSystem, this.siteVpc, this.props.siteFileSystemAccessPoints);
|
|
287
|
-
/* allow access to/from EFS from Fargate ECS service */
|
|
288
|
-
this.siteFileSystem.connections.allowDefaultPortFrom(this.siteEcsService.connections);
|
|
289
|
-
this.siteFileSystem.connections.allowDefaultPortTo(this.siteEcsService.connections);
|
|
290
|
-
/* add EFS permissions to ECS Role */
|
|
291
|
-
this.siteEcsRole.addToPolicy(new PolicyStatement(this.iamManager.statementForWriteEfs([this.siteFileSystem.fileSystemArn])));
|
|
292
|
-
/* add the efs volume to ecs task definition */
|
|
293
|
-
this.siteEcsTaskDefinition.addVolume({
|
|
294
|
-
efsVolumeConfiguration: {
|
|
295
|
-
authorizationConfig: this.props.siteFileSystem.authorizationConfig,
|
|
296
|
-
fileSystemId: this.siteFileSystem.fileSystemId,
|
|
297
|
-
rootDirectory: this.props.siteFileSystem.rootDirectory,
|
|
298
|
-
transitEncryption: this.props.siteFileSystem.transitEncryption,
|
|
299
|
-
transitEncryptionPort: this.props.siteFileSystem.transitEncryptionPort,
|
|
300
|
-
},
|
|
301
|
-
name: this.resourceNameFormatter.format(this.props.siteFileSystem?.fileSystemName ?? this.id),
|
|
302
|
-
});
|
|
303
|
-
if (this.props.siteTask.mountPoints && !_.isEmpty(this.props.siteTask.mountPoints)) {
|
|
304
|
-
_.forEach(this.props.siteTask.mountPoints, mountPoint => {
|
|
305
|
-
this.siteEcsTaskDefinition.defaultContainer?.addMountPoints({
|
|
306
|
-
containerPath: mountPoint.containerPath,
|
|
307
|
-
readOnly: mountPoint.readOnly,
|
|
308
|
-
sourceVolume: this.resourceNameFormatter.format(this.props.siteFileSystem?.fileSystemName ?? this.id),
|
|
309
|
-
});
|
|
310
|
-
});
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
this.addCfnOutput(`${this.id}-loadBalancerArn`, this.siteEcsLoadBalancer.loadBalancerArn ?? '');
|
|
314
|
-
this.addCfnOutput(`${this.id}-loadBalancerName`, this.siteEcsLoadBalancer.loadBalancerName ?? '');
|
|
315
|
-
this.addCfnOutput(`${this.id}-loadBalancerFullName`, this.siteEcsLoadBalancer.loadBalancerFullName ?? '');
|
|
316
|
-
this.addCfnOutput(`${this.id}-loadBalancerDnsName`, this.siteEcsLoadBalancer.loadBalancerDnsName ?? '');
|
|
317
|
-
}
|
|
318
|
-
/**
|
|
319
|
-
* Method to create log bucket for site distribution
|
|
320
|
-
*/
|
|
321
|
-
createSiteLogBucket() {
|
|
322
|
-
this.siteLogBucket = this.s3Manager.createS3Bucket(`${this.id}-site-logs`, this, this.props.siteLogBucket);
|
|
323
|
-
}
|
|
324
|
-
createSiteCachePolicy(id, siteCachePolicy) {
|
|
325
|
-
if (!siteCachePolicy.cachePolicyName)
|
|
326
|
-
throw `SiteCachePolicy cachePolicyName undefined for ${id}`;
|
|
327
|
-
return new CachePolicy(this, `${id}`, {
|
|
328
|
-
cachePolicyName: this.resourceNameFormatter.format(siteCachePolicy.cachePolicyName),
|
|
329
|
-
comment: `Policy for ${this.id}-distribution - ${this.props.stage} stage`,
|
|
330
|
-
cookieBehavior: siteCachePolicy.cookieBehavior,
|
|
331
|
-
enableAcceptEncodingBrotli: siteCachePolicy.enableAcceptEncodingBrotli,
|
|
332
|
-
enableAcceptEncodingGzip: siteCachePolicy.enableAcceptEncodingGzip,
|
|
333
|
-
headerBehavior: siteCachePolicy.headerBehavior,
|
|
334
|
-
maxTtl: Duration.seconds(siteCachePolicy.maxTtlInSeconds),
|
|
335
|
-
minTtl: Duration.seconds(siteCachePolicy.minTtlInSeconds),
|
|
336
|
-
queryStringBehavior: siteCachePolicy.queryStringBehavior,
|
|
337
|
-
});
|
|
338
|
-
}
|
|
339
|
-
createSiteOriginCachePolicy() {
|
|
340
|
-
if (!this.props.siteCachePolicy)
|
|
341
|
-
return;
|
|
342
|
-
this.siteCachePolicy = this.createSiteCachePolicy(`${this.id}-site-cache-policy`, this.props.siteCachePolicy);
|
|
343
|
-
_.assign(this.props.siteDistribution.defaultBehavior, {
|
|
344
|
-
cachePolicy: this.siteCachePolicy,
|
|
345
|
-
});
|
|
346
|
-
}
|
|
347
|
-
createSiteOriginRequestPolicy() {
|
|
348
|
-
if (!this.props.siteOriginRequestPolicy)
|
|
349
|
-
return;
|
|
350
|
-
if (!this.props.siteOriginRequestPolicy.originRequestPolicyName)
|
|
351
|
-
throw `SiteOriginRequestPolicy originRequestPolicyName undefined for ${this.id}`;
|
|
352
|
-
this.siteOriginRequestPolicy = new OriginRequestPolicy(this, `${this.id}-sorp`, {
|
|
353
|
-
comment: `Request Policy for ${this.id}-distribution - ${this.props.stage} stage`,
|
|
354
|
-
cookieBehavior: this.props.siteOriginRequestPolicy.cookieBehavior,
|
|
355
|
-
headerBehavior: this.props.siteOriginRequestPolicy.headerBehavior,
|
|
356
|
-
originRequestPolicyName: this.resourceNameFormatter.format(this.props.siteOriginRequestPolicy.originRequestPolicyName),
|
|
357
|
-
queryStringBehavior: this.props.siteOriginRequestPolicy.queryStringBehavior,
|
|
358
|
-
});
|
|
359
|
-
_.assign(this.props.siteDistribution.defaultBehavior, {
|
|
360
|
-
originRequestPolicy: this.siteOriginRequestPolicy,
|
|
361
|
-
});
|
|
362
|
-
}
|
|
363
|
-
createResponseHeaderPolicy(props) {
|
|
364
|
-
if (!props)
|
|
365
|
-
return undefined;
|
|
366
|
-
if (!props.responseHeadersPolicyName)
|
|
367
|
-
throw `SiteResponseHeadersPolicy responseHeadersPolicyName undefined for ${this.id}`;
|
|
368
|
-
return new ResponseHeadersPolicy(this, `${this.id}-${props.type}-srhp`, {
|
|
369
|
-
...props,
|
|
370
|
-
comment: `Response Header Policy for ${props.type} for ${this.id}-distribution - ${this.props.stage} stage`,
|
|
371
|
-
responseHeadersPolicyName: this.resourceNameFormatter.format(props.responseHeadersPolicyName),
|
|
372
|
-
securityHeadersBehavior: {
|
|
373
|
-
...props.securityHeadersBehavior,
|
|
374
|
-
strictTransportSecurity: {
|
|
375
|
-
...props.securityHeadersBehavior?.strictTransportSecurity,
|
|
376
|
-
accessControlMaxAge: Duration.seconds(props.securityHeadersBehavior?.strictTransportSecurity?.accessControlMaxAgeInSeconds),
|
|
377
|
-
},
|
|
378
|
-
},
|
|
379
|
-
});
|
|
380
|
-
}
|
|
381
|
-
createSiteOriginResponseHeadersPolicy() {
|
|
382
|
-
if (!this.props.siteOriginResponseHeadersPolicy)
|
|
383
|
-
return;
|
|
384
|
-
this.siteOriginResponseHeadersPolicy = this.createResponseHeaderPolicy(this.props.siteOriginResponseHeadersPolicy);
|
|
385
|
-
_.assign(this.props.siteDistribution.defaultBehavior, {
|
|
386
|
-
responseHeadersPolicy: this.siteOriginResponseHeadersPolicy,
|
|
387
|
-
});
|
|
388
|
-
}
|
|
389
|
-
createSiteOrigin() {
|
|
390
|
-
this.siteOrigin = new HttpOrigin(this.siteInternalDomainName, {
|
|
391
|
-
httpPort: this.props.siteTask.listenerPort,
|
|
392
|
-
originId: `${this.id}-server`,
|
|
393
|
-
protocolPolicy: OriginProtocolPolicy.HTTPS_ONLY,
|
|
394
|
-
});
|
|
395
|
-
}
|
|
396
|
-
/**
|
|
397
|
-
* @summary Method to create a site cloudfront function
|
|
398
|
-
*/
|
|
399
|
-
createSiteCloudfrontFunction() {
|
|
400
|
-
if (this.props.siteCloudfrontFunctionProps) {
|
|
401
|
-
this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(`${this.id}-function`, this, this.props.siteCloudfrontFunctionProps);
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
/**
|
|
405
|
-
* @summary Method to create a site cloudfront function associations
|
|
406
|
-
*/
|
|
407
|
-
resolveSiteFunctionAssociations() {
|
|
408
|
-
if (this.props.siteCloudfrontFunctionProps) {
|
|
409
|
-
this.siteFunctionAssociations = [
|
|
410
|
-
{
|
|
411
|
-
eventType: FunctionEventType.VIEWER_REQUEST,
|
|
412
|
-
function: this.siteCloudfrontFunction,
|
|
413
|
-
},
|
|
414
|
-
];
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
|
-
/**
|
|
418
|
-
* Method to create Site distribution
|
|
419
|
-
*/
|
|
420
|
-
createDistribution() {
|
|
421
|
-
this.siteDistribution = this.cloudFrontManager.createDistributionWithHttpOrigin(`${this.id}-distribution`, this, this.props.siteDistribution, this.siteOrigin, this.siteDomainNames, this.siteLogBucket, this.siteCertificate, this.siteFunctionAssociations, this.props.siteDistribution.defaultBehavior.responseHeadersPolicy);
|
|
422
|
-
}
|
|
423
|
-
/**
|
|
424
|
-
* Method to create Route53 records for distribution
|
|
425
|
-
*/
|
|
426
|
-
createNetworkMappings() {
|
|
427
|
-
this.route53Manager.createCloudFrontTargetARecord(`${this.id}-a-record`, this, this.siteDistribution, this.siteHostedZone, this.props.siteRecordName, this.props.skipStageForARecords);
|
|
428
|
-
}
|
|
429
|
-
/**
|
|
430
|
-
* Method to invalidation the cloudfront distribution cache after a deployment
|
|
431
|
-
*/
|
|
432
|
-
invalidateDistributionCache() {
|
|
433
|
-
if (this.props.siteCacheInvalidationDockerFilePath) {
|
|
434
|
-
this.cloudFrontManager.invalidateCache(`${this.id}-cache-invalidation`, this, this.props.siteCacheInvalidationDockerFilePath, this.siteDistribution.distributionId);
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { CommonStackProps } from '../../common/index.js';
|
|
2
|
-
import { AcmProps, CloudfrontFunctionProps, DistributionProps, EcsApplicationLoadBalancedFargateServiceProps, EcsClusterProps, EfsAccessPointOptions, EfsFileSystemProps, HealthCheck, LogProps, S3BucketProps } from '../../services/index.js';
|
|
3
|
-
import { VpcProps } from 'aws-cdk-lib/aws-ec2';
|
|
4
|
-
import { OriginRequestPolicyProps, ResponseHeadersStrictTransportSecurity, ResponseSecurityHeadersBehavior, ResponseHeadersPolicyProps, CachePolicyProps } from 'aws-cdk-lib/aws-cloudfront';
|
|
5
|
-
import { SiteResponseHeaderPolicyType } from './constants.js';
|
|
6
|
-
/**
|
|
7
|
-
*/
|
|
8
|
-
export interface SiteWithEcsBackendProps extends CommonStackProps {
|
|
9
|
-
logLevel: string;
|
|
10
|
-
nodeEnv: string;
|
|
11
|
-
siteCacheInvalidationDockerFilePath?: string;
|
|
12
|
-
siteCertificate: AcmProps;
|
|
13
|
-
siteCloudfrontFunctionProps?: CloudfrontFunctionProps;
|
|
14
|
-
siteCluster: EcsClusterProps;
|
|
15
|
-
siteDistribution: DistributionProps;
|
|
16
|
-
siteEcsContainerImagePath: string;
|
|
17
|
-
siteFileSystem?: EfsFileSystemProps;
|
|
18
|
-
siteFileSystemAccessPoints?: EfsAccessPointOptions[];
|
|
19
|
-
siteFunctionFilePath?: string;
|
|
20
|
-
siteHealthCheck: HealthCheck;
|
|
21
|
-
siteLog: LogProps;
|
|
22
|
-
siteLogBucket: S3BucketProps;
|
|
23
|
-
siteCachePolicy?: SiteCachePolicyProps;
|
|
24
|
-
siteOriginRequestPolicy: OriginRequestPolicyProps;
|
|
25
|
-
siteOriginResponseHeadersPolicy: SiteResponseHeadersPolicyProps;
|
|
26
|
-
siteRecordName?: string;
|
|
27
|
-
siteRegionalCertificate: AcmProps;
|
|
28
|
-
siteSubDomain: string;
|
|
29
|
-
siteTask: EcsApplicationLoadBalancedFargateServiceProps;
|
|
30
|
-
siteVpc: VpcProps;
|
|
31
|
-
timezone: string;
|
|
32
|
-
useExistingHostedZone: boolean;
|
|
33
|
-
useExistingVpc: boolean;
|
|
34
|
-
}
|
|
35
|
-
export interface SiteResponseHeadersStrictTransportSecurity extends ResponseHeadersStrictTransportSecurity {
|
|
36
|
-
accessControlMaxAgeInSeconds: number;
|
|
37
|
-
}
|
|
38
|
-
export interface SiteSecurityHeadersBehavior extends ResponseSecurityHeadersBehavior {
|
|
39
|
-
strictTransportSecurity: SiteResponseHeadersStrictTransportSecurity;
|
|
40
|
-
}
|
|
41
|
-
export interface SiteResponseHeadersPolicyProps extends ResponseHeadersPolicyProps {
|
|
42
|
-
securityHeadersBehavior: SiteSecurityHeadersBehavior;
|
|
43
|
-
type: SiteResponseHeaderPolicyType;
|
|
44
|
-
}
|
|
45
|
-
export interface SiteCachePolicyProps extends CachePolicyProps {
|
|
46
|
-
defaultTtlInSeconds: number;
|
|
47
|
-
minTtlInSeconds: number;
|
|
48
|
-
maxTtlInSeconds: number;
|
|
49
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export var SiteWithLambdaBackendResponseHeaderPolicyType;
|
|
2
|
-
(function (SiteWithLambdaBackendResponseHeaderPolicyType) {
|
|
3
|
-
SiteWithLambdaBackendResponseHeaderPolicyType["ORIGIN"] = "origin";
|
|
4
|
-
SiteWithLambdaBackendResponseHeaderPolicyType["STATIC"] = "static";
|
|
5
|
-
})(SiteWithLambdaBackendResponseHeaderPolicyType || (SiteWithLambdaBackendResponseHeaderPolicyType = {}));
|
|
6
|
-
export const LAMBDA_ALIAS_NAME_CURRENT = 'latest';
|