@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,443 +0,0 @@
|
|
|
1
|
-
import { Duration, Fn } from 'aws-cdk-lib'
|
|
2
|
-
import { ICertificate } from 'aws-cdk-lib/aws-certificatemanager'
|
|
3
|
-
import {
|
|
4
|
-
CachePolicy,
|
|
5
|
-
IFunction as CfIFunction,
|
|
6
|
-
Distribution,
|
|
7
|
-
FunctionAssociation,
|
|
8
|
-
FunctionEventType,
|
|
9
|
-
OriginProtocolPolicy,
|
|
10
|
-
OriginRequestPolicy,
|
|
11
|
-
ResponseHeadersPolicy,
|
|
12
|
-
} from 'aws-cdk-lib/aws-cloudfront'
|
|
13
|
-
import { HttpOrigin } from 'aws-cdk-lib/aws-cloudfront-origins'
|
|
14
|
-
import { AnyPrincipal, Effect, PolicyDocument, PolicyStatement, Role } from 'aws-cdk-lib/aws-iam'
|
|
15
|
-
import { AssetCode, Function, FunctionUrl, FunctionUrlAuthType, IFunction, ILayerVersion } from 'aws-cdk-lib/aws-lambda'
|
|
16
|
-
import { IHostedZone } from 'aws-cdk-lib/aws-route53'
|
|
17
|
-
import { IBucket } from 'aws-cdk-lib/aws-s3'
|
|
18
|
-
import { BucketDeployment } from 'aws-cdk-lib/aws-s3-deployment'
|
|
19
|
-
import { Construct } from 'constructs'
|
|
20
|
-
import _ from 'lodash'
|
|
21
|
-
import { CommonConstruct } from '../../common/index.js'
|
|
22
|
-
import { LAMBDA_ALIAS_NAME_CURRENT } from './constants.js'
|
|
23
|
-
import {
|
|
24
|
-
SiteWithLambdaBackendCachePolicyProps,
|
|
25
|
-
SiteWithLambdaBackendProps,
|
|
26
|
-
SiteWithLambdaBackendResponseHeadersPolicyProps,
|
|
27
|
-
} from './types.js'
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
* @classdesc Provides a construct to create and deploy a site hosted with an clustered ECS/ELB backend
|
|
31
|
-
* @example
|
|
32
|
-
* import { SiteWithLambdaBackend, SiteWithLambdaBackendProps } '@gradientedge/cdk-utils'
|
|
33
|
-
* import { Construct } from 'constructs'
|
|
34
|
-
*
|
|
35
|
-
* class CustomConstruct extends SiteWithLambdaBackend {
|
|
36
|
-
* constructor(parent: Construct, id: string, props: SiteWithLambdaBackendProps) {
|
|
37
|
-
* super(parent, id, props)
|
|
38
|
-
* this.props = props
|
|
39
|
-
* this.id = id
|
|
40
|
-
* this.initResources()
|
|
41
|
-
* }
|
|
42
|
-
* }
|
|
43
|
-
*/
|
|
44
|
-
export class SiteWithLambdaBackend extends CommonConstruct {
|
|
45
|
-
/* site properties */
|
|
46
|
-
props: SiteWithLambdaBackendProps
|
|
47
|
-
id: string
|
|
48
|
-
|
|
49
|
-
/* site resources */
|
|
50
|
-
siteHostedZone: IHostedZone
|
|
51
|
-
siteCertificate: ICertificate
|
|
52
|
-
siteRegionalCertificate: ICertificate
|
|
53
|
-
siteSecrets: any
|
|
54
|
-
siteLogBucket: IBucket
|
|
55
|
-
siteOrigin: HttpOrigin
|
|
56
|
-
siteDistribution: Distribution
|
|
57
|
-
siteInternalDomainName: string
|
|
58
|
-
siteExternalDomainName: string
|
|
59
|
-
siteDomainNames: string[]
|
|
60
|
-
siteCloudfrontFunction: CfIFunction
|
|
61
|
-
siteFunctionAssociations: FunctionAssociation[]
|
|
62
|
-
siteOriginRequestPolicy: OriginRequestPolicy
|
|
63
|
-
siteOriginResponseHeadersPolicy?: ResponseHeadersPolicy
|
|
64
|
-
siteCachePolicy: CachePolicy
|
|
65
|
-
siteStaticAssetDeployment: BucketDeployment
|
|
66
|
-
siteLambdaPolicy: PolicyDocument
|
|
67
|
-
siteLambdaRole: Role
|
|
68
|
-
siteLambdaEnvironment: any
|
|
69
|
-
siteLambdaLayers: ILayerVersion[]
|
|
70
|
-
siteLambdaApplication: AssetCode
|
|
71
|
-
siteLambdaFunction: IFunction
|
|
72
|
-
siteLambdaUrl: FunctionUrl
|
|
73
|
-
|
|
74
|
-
constructor(parent: Construct, id: string, props: SiteWithLambdaBackendProps) {
|
|
75
|
-
super(parent, id, props)
|
|
76
|
-
this.props = props
|
|
77
|
-
this.id = id
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
/**
|
|
81
|
-
* @summary Initialise and provision resources
|
|
82
|
-
*/
|
|
83
|
-
public initResources() {
|
|
84
|
-
this.resolveHostedZone()
|
|
85
|
-
this.resolveCertificate()
|
|
86
|
-
this.resolveSiteSecrets()
|
|
87
|
-
this.resolveSiteDomainNames()
|
|
88
|
-
this.createSiteLogBucket()
|
|
89
|
-
this.createSiteOriginCachePolicy()
|
|
90
|
-
this.createSiteOriginRequestPolicy()
|
|
91
|
-
this.createSiteOriginResponseHeadersPolicy()
|
|
92
|
-
this.createSiteOrigin()
|
|
93
|
-
this.createSiteCloudfrontFunction()
|
|
94
|
-
this.resolveSiteFunctionAssociations()
|
|
95
|
-
this.createDistribution()
|
|
96
|
-
this.createNetworkMappings()
|
|
97
|
-
this.invalidateDistributionCache()
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* @summary Method to resolve a hosted zone based on domain attributes
|
|
102
|
-
*/
|
|
103
|
-
protected resolveHostedZone() {
|
|
104
|
-
this.siteHostedZone = this.route53Manager.withHostedZoneFromFullyQualifiedDomainName(
|
|
105
|
-
`${this.id}-hosted-zone`,
|
|
106
|
-
this,
|
|
107
|
-
this.props.useExistingHostedZone
|
|
108
|
-
)
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
/**
|
|
112
|
-
* @summary Method to resolve a certificate based on attributes
|
|
113
|
-
*/
|
|
114
|
-
protected resolveCertificate() {
|
|
115
|
-
this.resolveGlobalCertificate()
|
|
116
|
-
this.resolveRegionalCertificate()
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
protected resolveGlobalCertificate() {
|
|
120
|
-
if (
|
|
121
|
-
this.props.siteCertificate.useExistingCertificate &&
|
|
122
|
-
this.props.siteCertificate.certificateSsmName &&
|
|
123
|
-
this.props.siteCertificate.certificateRegion
|
|
124
|
-
) {
|
|
125
|
-
this.props.siteCertificate.certificateArn = this.ssmManager.readStringParameterFromRegion(
|
|
126
|
-
`${this.id}-certificate-parameter`,
|
|
127
|
-
this,
|
|
128
|
-
this.props.siteCertificate.certificateSsmName,
|
|
129
|
-
this.props.siteCertificate.certificateRegion
|
|
130
|
-
)
|
|
131
|
-
}
|
|
132
|
-
this.siteCertificate = this.acmManager.resolveCertificate(
|
|
133
|
-
`${this.id}-certificate`,
|
|
134
|
-
this,
|
|
135
|
-
this.props.siteCertificate
|
|
136
|
-
)
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
protected resolveRegionalCertificate() {
|
|
140
|
-
if (
|
|
141
|
-
this.props.siteRegionalCertificate.useExistingCertificate &&
|
|
142
|
-
this.props.siteRegionalCertificate.certificateSsmName &&
|
|
143
|
-
this.props.siteRegionalCertificate.certificateRegion
|
|
144
|
-
) {
|
|
145
|
-
this.props.siteRegionalCertificate.certificateArn = this.ssmManager.readStringParameterFromRegion(
|
|
146
|
-
`${this.id}-regional-certificate-parameter`,
|
|
147
|
-
this,
|
|
148
|
-
this.props.siteRegionalCertificate.certificateSsmName,
|
|
149
|
-
this.props.siteRegionalCertificate.certificateRegion
|
|
150
|
-
)
|
|
151
|
-
}
|
|
152
|
-
this.siteRegionalCertificate = this.acmManager.resolveCertificate(
|
|
153
|
-
`${this.id}-regional-certificate`,
|
|
154
|
-
this,
|
|
155
|
-
this.props.siteRegionalCertificate,
|
|
156
|
-
this.siteHostedZone
|
|
157
|
-
)
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
/**
|
|
161
|
-
* @summary Method to resolve secrets from SecretsManager
|
|
162
|
-
* - To be implemented in the overriding method in the implementation class
|
|
163
|
-
*/
|
|
164
|
-
protected resolveSiteSecrets() {}
|
|
165
|
-
|
|
166
|
-
/**
|
|
167
|
-
* @summary Method to resolve site domain names
|
|
168
|
-
*/
|
|
169
|
-
protected resolveSiteDomainNames() {
|
|
170
|
-
/* the internal domain name used by ELB */
|
|
171
|
-
this.siteInternalDomainName =
|
|
172
|
-
this.isProductionStage() || this.props.skipStageForARecords
|
|
173
|
-
? `${this.props.siteSubDomain}-internal.${this.fullyQualifiedDomainName}`
|
|
174
|
-
: `${this.props.siteSubDomain}-internal-${this.props.stage}.${this.fullyQualifiedDomainName}`
|
|
175
|
-
|
|
176
|
-
/* the external domain name exposed to CloudFront */
|
|
177
|
-
this.siteExternalDomainName =
|
|
178
|
-
this.isProductionStage() || this.props.skipStageForARecords
|
|
179
|
-
? `${this.props.siteSubDomain}.${this.fullyQualifiedDomainName}`
|
|
180
|
-
: `${this.props.siteSubDomain}-${this.props.stage}.${this.fullyQualifiedDomainName}`
|
|
181
|
-
|
|
182
|
-
this.siteDomainNames = [this.siteExternalDomainName]
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* Method to create log bucket for site distribution
|
|
187
|
-
*/
|
|
188
|
-
protected createSiteLogBucket() {
|
|
189
|
-
this.siteLogBucket = this.s3Manager.createS3Bucket(`${this.id}-site-logs`, this, this.props.siteLogBucket)
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
protected createSiteCachePolicy(id: string, siteCachePolicy: SiteWithLambdaBackendCachePolicyProps) {
|
|
193
|
-
if (!siteCachePolicy.cachePolicyName) throw `SiteCachePolicy cachePolicyName undefined for ${id}`
|
|
194
|
-
|
|
195
|
-
return new CachePolicy(this, `${id}`, {
|
|
196
|
-
cachePolicyName: this.resourceNameFormatter.format(siteCachePolicy.cachePolicyName),
|
|
197
|
-
comment: `Policy for ${this.id}-distribution - ${this.props.stage} stage`,
|
|
198
|
-
cookieBehavior: siteCachePolicy.cookieBehavior,
|
|
199
|
-
enableAcceptEncodingBrotli: siteCachePolicy.enableAcceptEncodingBrotli,
|
|
200
|
-
enableAcceptEncodingGzip: siteCachePolicy.enableAcceptEncodingGzip,
|
|
201
|
-
headerBehavior: siteCachePolicy.headerBehavior,
|
|
202
|
-
maxTtl: Duration.seconds(siteCachePolicy.maxTtlInSeconds),
|
|
203
|
-
minTtl: Duration.seconds(siteCachePolicy.minTtlInSeconds),
|
|
204
|
-
queryStringBehavior: siteCachePolicy.queryStringBehavior,
|
|
205
|
-
})
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
protected createSiteOriginCachePolicy() {
|
|
209
|
-
if (!this.props.siteCachePolicy) return
|
|
210
|
-
this.siteCachePolicy = this.createSiteCachePolicy(`${this.id}-site-cache-policy`, this.props.siteCachePolicy)
|
|
211
|
-
_.assign(this.props.siteDistribution.defaultBehavior, {
|
|
212
|
-
cachePolicy: this.siteCachePolicy,
|
|
213
|
-
})
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
protected createSiteOriginRequestPolicy() {
|
|
217
|
-
if (!this.props.siteOriginRequestPolicy) return
|
|
218
|
-
if (!this.props.siteOriginRequestPolicy.originRequestPolicyName)
|
|
219
|
-
throw `SiteOriginRequestPolicy originRequestPolicyName undefined for ${this.id}`
|
|
220
|
-
|
|
221
|
-
this.siteOriginRequestPolicy = new OriginRequestPolicy(this, `${this.id}-sorp`, {
|
|
222
|
-
comment: `Request Policy for ${this.id}-distribution - ${this.props.stage} stage`,
|
|
223
|
-
cookieBehavior: this.props.siteOriginRequestPolicy.cookieBehavior,
|
|
224
|
-
headerBehavior: this.props.siteOriginRequestPolicy.headerBehavior,
|
|
225
|
-
originRequestPolicyName: this.resourceNameFormatter.format(
|
|
226
|
-
this.props.siteOriginRequestPolicy.originRequestPolicyName
|
|
227
|
-
),
|
|
228
|
-
queryStringBehavior: this.props.siteOriginRequestPolicy.queryStringBehavior,
|
|
229
|
-
})
|
|
230
|
-
|
|
231
|
-
_.assign(this.props.siteDistribution.defaultBehavior, {
|
|
232
|
-
originRequestPolicy: this.siteOriginRequestPolicy,
|
|
233
|
-
})
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
protected createResponseHeaderPolicy(props: SiteWithLambdaBackendResponseHeadersPolicyProps) {
|
|
237
|
-
if (!props) return undefined
|
|
238
|
-
if (!props.responseHeadersPolicyName)
|
|
239
|
-
throw `SiteResponseHeadersPolicy responseHeadersPolicyName undefined for ${this.id}`
|
|
240
|
-
|
|
241
|
-
return new ResponseHeadersPolicy(this, `${this.id}-${props.type}-srhp`, {
|
|
242
|
-
...props,
|
|
243
|
-
comment: `Response Header Policy for ${props.type} for ${this.id}-distribution - ${this.props.stage} stage`,
|
|
244
|
-
responseHeadersPolicyName: this.resourceNameFormatter.format(props.responseHeadersPolicyName),
|
|
245
|
-
securityHeadersBehavior: {
|
|
246
|
-
...props.securityHeadersBehavior,
|
|
247
|
-
strictTransportSecurity: {
|
|
248
|
-
...props.securityHeadersBehavior?.strictTransportSecurity,
|
|
249
|
-
accessControlMaxAge: Duration.seconds(
|
|
250
|
-
props.securityHeadersBehavior?.strictTransportSecurity?.accessControlMaxAgeInSeconds
|
|
251
|
-
),
|
|
252
|
-
},
|
|
253
|
-
},
|
|
254
|
-
})
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
protected createSiteOriginResponseHeadersPolicy() {
|
|
258
|
-
if (!this.props.siteOriginResponseHeadersPolicy) return
|
|
259
|
-
this.siteOriginResponseHeadersPolicy = this.createResponseHeaderPolicy(this.props.siteOriginResponseHeadersPolicy)
|
|
260
|
-
_.assign(this.props.siteDistribution.defaultBehavior, {
|
|
261
|
-
responseHeadersPolicy: this.siteOriginResponseHeadersPolicy,
|
|
262
|
-
})
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
protected createSiteOrigin() {
|
|
266
|
-
this.createSiteOriginResources()
|
|
267
|
-
this.siteOrigin = new HttpOrigin(Fn.select(2, Fn.split('/', this.siteLambdaUrl.url)), {
|
|
268
|
-
httpPort: 443,
|
|
269
|
-
originId: `${this.id}-server`,
|
|
270
|
-
protocolPolicy: OriginProtocolPolicy.HTTPS_ONLY,
|
|
271
|
-
})
|
|
272
|
-
}
|
|
273
|
-
|
|
274
|
-
protected createSiteOriginResources() {
|
|
275
|
-
this.createSiteStaticAssetDeployment()
|
|
276
|
-
this.createSiteLambdaPolicy()
|
|
277
|
-
this.createSiteLambdaRole()
|
|
278
|
-
this.createSiteLambdaEnvironment()
|
|
279
|
-
this.createSiteLambdaLayers()
|
|
280
|
-
this.createSiteLambdaApplication()
|
|
281
|
-
this.createSiteLambda()
|
|
282
|
-
this.createSiteLambdaUrl()
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
protected createSiteStaticAssetDeployment() {}
|
|
286
|
-
|
|
287
|
-
protected createSiteLambdaPolicy() {
|
|
288
|
-
this.siteLambdaPolicy = new PolicyDocument({
|
|
289
|
-
statements: [
|
|
290
|
-
new PolicyStatement({
|
|
291
|
-
actions: ['lambda:InvokeFunctionUrl'],
|
|
292
|
-
effect: Effect.ALLOW,
|
|
293
|
-
resources: ['*'],
|
|
294
|
-
}),
|
|
295
|
-
],
|
|
296
|
-
})
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
protected createSiteLambdaRole() {
|
|
300
|
-
this.siteLambdaRole = this.iamManager.createRoleForLambda(`${this.id}-role`, this, this.siteLambdaPolicy)
|
|
301
|
-
}
|
|
302
|
-
|
|
303
|
-
protected createSiteLambdaEnvironment() {
|
|
304
|
-
this.siteLambdaEnvironment = {
|
|
305
|
-
AWS_LAMBDA_EXEC_WRAPPER: this.props.siteExecWrapperPath ?? '/opt/bootstrap',
|
|
306
|
-
LOG_LEVEL: this.props.logLevel,
|
|
307
|
-
NODE_ENV: this.props.nodeEnv,
|
|
308
|
-
PORT: this.props.sitePort,
|
|
309
|
-
READINESS_CHECK_PATH: this.props.siteHealthEndpoint,
|
|
310
|
-
READINESS_CHECK_PORT: this.props.sitePort,
|
|
311
|
-
STAGE: this.props.stage,
|
|
312
|
-
TZ: this.props.timezone,
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
|
|
316
|
-
protected createSiteLambdaLayers() {
|
|
317
|
-
this.siteLambdaLayers = this.lambdaManager.createWebAdapterLayer(`${this.id}-web-adapter`, this)
|
|
318
|
-
}
|
|
319
|
-
|
|
320
|
-
protected createSiteLambdaApplication() {}
|
|
321
|
-
|
|
322
|
-
protected createSiteLambda() {
|
|
323
|
-
this.siteLambdaFunction = this.lambdaManager.createLambdaFunction(
|
|
324
|
-
`${this.id}-lambda`,
|
|
325
|
-
this,
|
|
326
|
-
this.props.siteLambda,
|
|
327
|
-
this.siteLambdaRole,
|
|
328
|
-
this.siteLambdaLayers,
|
|
329
|
-
this.siteLambdaApplication,
|
|
330
|
-
this.props.siteLambda.handler,
|
|
331
|
-
this.siteLambdaEnvironment
|
|
332
|
-
)
|
|
333
|
-
}
|
|
334
|
-
|
|
335
|
-
protected createSiteLambdaUrl() {
|
|
336
|
-
const lambdaAlias = _.find(
|
|
337
|
-
this.props.siteLambda.lambdaAliases,
|
|
338
|
-
alias => alias.aliasName === LAMBDA_ALIAS_NAME_CURRENT
|
|
339
|
-
)
|
|
340
|
-
|
|
341
|
-
const lambdaFn = lambdaAlias
|
|
342
|
-
? Function.fromFunctionAttributes(this, `${this.id}-fn-alias`, {
|
|
343
|
-
functionArn: `${this.siteLambdaFunction.functionArn}:${lambdaAlias.aliasName}`,
|
|
344
|
-
sameEnvironment: true,
|
|
345
|
-
})
|
|
346
|
-
: this.siteLambdaFunction
|
|
347
|
-
lambdaFn.node.addDependency(this.siteLambdaFunction)
|
|
348
|
-
|
|
349
|
-
this.siteLambdaUrl = lambdaFn.addFunctionUrl({
|
|
350
|
-
authType: FunctionUrlAuthType.NONE,
|
|
351
|
-
})
|
|
352
|
-
this.siteLambdaUrl.node.addDependency(this.siteLambdaFunction)
|
|
353
|
-
this.siteLambdaUrl.node.addDependency(lambdaFn)
|
|
354
|
-
|
|
355
|
-
const principal = new AnyPrincipal()
|
|
356
|
-
principal.addToPolicy(
|
|
357
|
-
new PolicyStatement({
|
|
358
|
-
actions: ['lambda:InvokeFunctionUrl'],
|
|
359
|
-
conditions: { StringEquals: { 'lambda:FunctionUrlAuthType': FunctionUrlAuthType.NONE } },
|
|
360
|
-
effect: Effect.ALLOW,
|
|
361
|
-
resources: ['*'],
|
|
362
|
-
})
|
|
363
|
-
)
|
|
364
|
-
|
|
365
|
-
lambdaFn.grantInvokeUrl({ grantPrincipal: principal })
|
|
366
|
-
|
|
367
|
-
this.addCfnOutput(`${this.id}-url`, this.siteLambdaUrl.url)
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
/**
|
|
371
|
-
* @summary Method to create a site cloudfront function
|
|
372
|
-
*/
|
|
373
|
-
protected createSiteCloudfrontFunction() {
|
|
374
|
-
if (this.props.siteCloudfrontFunctionProps) {
|
|
375
|
-
this.siteCloudfrontFunction = this.cloudFrontManager.createCloudfrontFunction(
|
|
376
|
-
`${this.id}-function`,
|
|
377
|
-
this,
|
|
378
|
-
this.props.siteCloudfrontFunctionProps
|
|
379
|
-
)
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
/**
|
|
384
|
-
* @summary Method to create a site cloudfront function associations
|
|
385
|
-
*/
|
|
386
|
-
protected resolveSiteFunctionAssociations() {
|
|
387
|
-
if (this.props.siteCloudfrontFunctionProps) {
|
|
388
|
-
this.siteFunctionAssociations = [
|
|
389
|
-
{
|
|
390
|
-
eventType: FunctionEventType.VIEWER_REQUEST,
|
|
391
|
-
function: this.siteCloudfrontFunction,
|
|
392
|
-
},
|
|
393
|
-
]
|
|
394
|
-
}
|
|
395
|
-
}
|
|
396
|
-
|
|
397
|
-
/**
|
|
398
|
-
* Method to create Site distribution
|
|
399
|
-
*/
|
|
400
|
-
protected createDistribution() {
|
|
401
|
-
this.siteDistribution = this.cloudFrontManager.createDistributionWithHttpOrigin(
|
|
402
|
-
`${this.id}-distribution`,
|
|
403
|
-
this,
|
|
404
|
-
this.props.siteDistribution,
|
|
405
|
-
this.siteOrigin,
|
|
406
|
-
this.siteDomainNames,
|
|
407
|
-
this.siteLogBucket,
|
|
408
|
-
this.siteCertificate,
|
|
409
|
-
this.siteFunctionAssociations,
|
|
410
|
-
this.props.siteDistribution.defaultBehavior.responseHeadersPolicy
|
|
411
|
-
)
|
|
412
|
-
this.siteDistribution.node.addDependency(this.siteLambdaFunction)
|
|
413
|
-
this.siteDistribution.node.addDependency(this.siteLambdaUrl)
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
/**
|
|
417
|
-
* Method to create Route53 records for distribution
|
|
418
|
-
*/
|
|
419
|
-
protected createNetworkMappings() {
|
|
420
|
-
this.route53Manager.createCloudFrontTargetARecord(
|
|
421
|
-
`${this.id}-a-record`,
|
|
422
|
-
this,
|
|
423
|
-
this.siteDistribution,
|
|
424
|
-
this.siteHostedZone,
|
|
425
|
-
this.props.siteRecordName,
|
|
426
|
-
this.props.skipStageForARecords
|
|
427
|
-
)
|
|
428
|
-
}
|
|
429
|
-
|
|
430
|
-
/**
|
|
431
|
-
* Method to invalidation the cloudfront distribution cache after a deployment
|
|
432
|
-
*/
|
|
433
|
-
protected invalidateDistributionCache() {
|
|
434
|
-
if (this.props.siteCacheInvalidationDockerFilePath) {
|
|
435
|
-
this.cloudFrontManager.invalidateCache(
|
|
436
|
-
`${this.id}-cache-invalidation`,
|
|
437
|
-
this,
|
|
438
|
-
this.props.siteCacheInvalidationDockerFilePath,
|
|
439
|
-
this.siteDistribution.distributionId
|
|
440
|
-
)
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
CachePolicyProps,
|
|
3
|
-
OriginRequestPolicyProps,
|
|
4
|
-
ResponseHeadersPolicyProps,
|
|
5
|
-
ResponseHeadersStrictTransportSecurity,
|
|
6
|
-
ResponseSecurityHeadersBehavior,
|
|
7
|
-
} from 'aws-cdk-lib/aws-cloudfront'
|
|
8
|
-
import { CommonStackProps } from '../../common/index.js'
|
|
9
|
-
import {
|
|
10
|
-
AcmProps,
|
|
11
|
-
CloudfrontFunctionProps,
|
|
12
|
-
DistributionProps,
|
|
13
|
-
LambdaProps,
|
|
14
|
-
LogProps,
|
|
15
|
-
S3BucketProps,
|
|
16
|
-
} from '../../services/index.js'
|
|
17
|
-
import { SiteWithLambdaBackendResponseHeaderPolicyType } from './constants.js'
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
*/
|
|
21
|
-
export interface SiteWithLambdaBackendProps extends CommonStackProps {
|
|
22
|
-
logLevel: string
|
|
23
|
-
nodeEnv: string
|
|
24
|
-
siteCacheInvalidationDockerFilePath?: string
|
|
25
|
-
siteCertificate: AcmProps
|
|
26
|
-
siteCloudfrontFunctionProps?: CloudfrontFunctionProps
|
|
27
|
-
siteDistribution: DistributionProps
|
|
28
|
-
siteExecWrapperPath: string
|
|
29
|
-
siteFunctionFilePath?: string
|
|
30
|
-
siteHealthEndpoint: string
|
|
31
|
-
siteLambda: LambdaProps
|
|
32
|
-
siteLog: LogProps
|
|
33
|
-
siteLogBucket: S3BucketProps
|
|
34
|
-
sitePort: string
|
|
35
|
-
siteCachePolicy?: SiteWithLambdaBackendCachePolicyProps
|
|
36
|
-
siteOriginRequestPolicy: OriginRequestPolicyProps
|
|
37
|
-
siteOriginResponseHeadersPolicy: SiteWithLambdaBackendResponseHeadersPolicyProps
|
|
38
|
-
siteRecordName?: string
|
|
39
|
-
siteRegionalCertificate: AcmProps
|
|
40
|
-
siteSubDomain: string
|
|
41
|
-
timezone: string
|
|
42
|
-
useExistingHostedZone: boolean
|
|
43
|
-
useExistingVpc: boolean
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export interface SiteWithLambdaBackendResponseHeadersStrictTransportSecurity extends ResponseHeadersStrictTransportSecurity {
|
|
47
|
-
accessControlMaxAgeInSeconds: number
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export interface SiteWithLambdaBackendSecurityHeadersBehavior extends ResponseSecurityHeadersBehavior {
|
|
51
|
-
strictTransportSecurity: SiteWithLambdaBackendResponseHeadersStrictTransportSecurity
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export interface SiteWithLambdaBackendResponseHeadersPolicyProps extends ResponseHeadersPolicyProps {
|
|
55
|
-
securityHeadersBehavior: SiteWithLambdaBackendSecurityHeadersBehavior
|
|
56
|
-
type: SiteWithLambdaBackendResponseHeaderPolicyType
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export interface SiteWithLambdaBackendCachePolicyProps extends CachePolicyProps {
|
|
60
|
-
defaultTtlInSeconds: number
|
|
61
|
-
minTtlInSeconds: number
|
|
62
|
-
maxTtlInSeconds: number
|
|
63
|
-
}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
import { Fn } from 'aws-cdk-lib'
|
|
2
|
-
import { IBucket } from 'aws-cdk-lib/aws-s3'
|
|
3
|
-
import { IDistribution, DistributionAttributes } from 'aws-cdk-lib/aws-cloudfront'
|
|
4
|
-
import { Construct } from 'constructs'
|
|
5
|
-
import { BucketDeployment, Source, BucketDeploymentProps, ISource } from 'aws-cdk-lib/aws-s3-deployment'
|
|
6
|
-
import _ from 'lodash'
|
|
7
|
-
import { CommonConstruct } from '../../common/index.js'
|
|
8
|
-
import { StaticAssetDeploymentProps } from './types.js'
|
|
9
|
-
import appRoot from 'app-root-path'
|
|
10
|
-
import path from 'path'
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* @classdesc Provides a construct to create and deploy static assets into S3 bucket
|
|
14
|
-
* @example
|
|
15
|
-
* import { StaticAssetDeployment, StaticAssetDeploymentProps } '@gradientedge/cdk-utils'
|
|
16
|
-
* import { Construct } from 'constructs'
|
|
17
|
-
*
|
|
18
|
-
* class CustomConstruct extends StaticAssetDeployment {
|
|
19
|
-
* constructor(parent: Construct, id: string, props: StaticAssetDeploymentProps) {
|
|
20
|
-
* super(parent, id, props)
|
|
21
|
-
* this.initResources()
|
|
22
|
-
* }
|
|
23
|
-
* }
|
|
24
|
-
*/
|
|
25
|
-
export class StaticAssetDeployment extends CommonConstruct {
|
|
26
|
-
/* construct resources */
|
|
27
|
-
staticAssetBucket: IBucket
|
|
28
|
-
cloudfrontDistribution?: IDistribution
|
|
29
|
-
props: StaticAssetDeploymentProps
|
|
30
|
-
id: string
|
|
31
|
-
|
|
32
|
-
constructor(parent: Construct, id: string, props: StaticAssetDeploymentProps) {
|
|
33
|
-
super(parent, id, props)
|
|
34
|
-
this.id = id
|
|
35
|
-
this.props = props
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* @summary Initialise and provision resources
|
|
39
|
-
*/
|
|
40
|
-
public initResources() {
|
|
41
|
-
this.createAssetBucket()
|
|
42
|
-
this.resolveDistribution()
|
|
43
|
-
this.deployStaticAssets()
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* @summary Create the static asset bucket
|
|
48
|
-
*/
|
|
49
|
-
protected createAssetBucket() {
|
|
50
|
-
this.staticAssetBucket = this.s3Manager.createS3Bucket(`${this.id}-sa-bucket`, this, this.props.staticAssetBucket)
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* @summary Distribute the load for the static asset bucket if both distribution and paths are provided
|
|
55
|
-
*/
|
|
56
|
-
protected resolveDistribution() {
|
|
57
|
-
if (
|
|
58
|
-
this.props.cloudFrontDistribution &&
|
|
59
|
-
(this.props.cloudFrontDistribution.domainName || this.props.cloudFrontDistribution.domainNameRef) &&
|
|
60
|
-
(this.props.cloudFrontDistribution.distributionId || this.props.cloudFrontDistribution.distributionIdRef) &&
|
|
61
|
-
this.props.cloudFrontDistribution.invalidationPaths &&
|
|
62
|
-
this.props.cloudFrontDistribution.invalidationPaths.length > 0
|
|
63
|
-
) {
|
|
64
|
-
let domainName = this.props.cloudFrontDistribution.domainName
|
|
65
|
-
if (this.props.cloudFrontDistribution.domainNameRef) {
|
|
66
|
-
domainName = Fn.importValue(this.props.cloudFrontDistribution.domainNameRef)
|
|
67
|
-
}
|
|
68
|
-
let distributionId = this.props.cloudFrontDistribution.distributionId
|
|
69
|
-
if (this.props.cloudFrontDistribution.distributionIdRef) {
|
|
70
|
-
distributionId = Fn.importValue(this.props.cloudFrontDistribution.distributionIdRef)
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
const distributionAttributes = {
|
|
74
|
-
domainName: domainName,
|
|
75
|
-
distributionId: distributionId,
|
|
76
|
-
} as any as DistributionAttributes
|
|
77
|
-
|
|
78
|
-
this.cloudfrontDistribution = this.cloudFrontManager.resolveDistribution(this, distributionAttributes)
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
|
|
82
|
-
/**
|
|
83
|
-
* @summary Deploy the static assets into the static asset bucket
|
|
84
|
-
*/
|
|
85
|
-
protected deployStaticAssets() {
|
|
86
|
-
let sources: Array<ISource> = []
|
|
87
|
-
if (
|
|
88
|
-
Array.isArray(this.props.staticAssetSources) &&
|
|
89
|
-
this.props.staticAssetSources.length > 0 &&
|
|
90
|
-
typeof this.props.staticAssetSources[0] === 'string'
|
|
91
|
-
) {
|
|
92
|
-
sources = this.props.staticAssetSources.map(source => {
|
|
93
|
-
const resolvedPath = path.join(appRoot.path, source)
|
|
94
|
-
return Source.asset(resolvedPath)
|
|
95
|
-
})
|
|
96
|
-
} else {
|
|
97
|
-
sources = this.props.staticAssetSources as ISource[]
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
let distributionOptions: Pick<BucketDeploymentProps, 'distribution' | 'distributionPaths'> = {}
|
|
101
|
-
if (this.cloudfrontDistribution) {
|
|
102
|
-
distributionOptions = {
|
|
103
|
-
distribution: this.cloudfrontDistribution,
|
|
104
|
-
distributionPaths: this.props.cloudFrontDistribution?.invalidationPaths,
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
let destinationKeyPrefixOptions = {}
|
|
109
|
-
if (this.props.destinationKeyPrefix) {
|
|
110
|
-
destinationKeyPrefixOptions = {
|
|
111
|
-
destinationKeyPrefix: this.props.destinationKeyPrefix,
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
new BucketDeployment(this, `${this.id}-static-deployment`, {
|
|
116
|
-
...this.props.staticAssetDeployment,
|
|
117
|
-
destinationBucket: this.staticAssetBucket,
|
|
118
|
-
sources: sources,
|
|
119
|
-
...destinationKeyPrefixOptions,
|
|
120
|
-
...distributionOptions,
|
|
121
|
-
})
|
|
122
|
-
|
|
123
|
-
const staticAssetsForExport = this.props.staticAssetsForExport
|
|
124
|
-
if (!staticAssetsForExport) return
|
|
125
|
-
|
|
126
|
-
/* optional additional exports needed for asset urls */
|
|
127
|
-
_.forEach(staticAssetsForExport, asset => {
|
|
128
|
-
this.addCfnOutput(asset.key, this.staticAssetBucket.s3UrlForObject(asset.value))
|
|
129
|
-
})
|
|
130
|
-
}
|
|
131
|
-
}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { BucketDeploymentProps, S3BucketProps } from '../../services/index.js'
|
|
2
|
-
import { CommonStackProps } from '../../common/index.js'
|
|
3
|
-
|
|
4
|
-
export interface AssetExport {
|
|
5
|
-
key: string
|
|
6
|
-
value: string
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* The CloudFront distribution to associate with the bucket.
|
|
11
|
-
* When value is configured, the construct will invalidate the distribution after the deployment.
|
|
12
|
-
* Use either domainName or distributionId or domainNameRef or distributionIdRef.
|
|
13
|
-
*/
|
|
14
|
-
export interface StaticCloudFrontDistribution {
|
|
15
|
-
/**
|
|
16
|
-
* @summary The domain name to associate with the bucket.
|
|
17
|
-
*/
|
|
18
|
-
domainName?: string
|
|
19
|
-
/**
|
|
20
|
-
* @summary The distribution ID to associate with the bucket.
|
|
21
|
-
*/
|
|
22
|
-
distributionId?: string
|
|
23
|
-
/**
|
|
24
|
-
* @summary The reference to domain name to associate with the bucket.
|
|
25
|
-
*/
|
|
26
|
-
domainNameRef?: string
|
|
27
|
-
/**
|
|
28
|
-
* @summary The reference to distribution ID to associate with the bucket.
|
|
29
|
-
*/
|
|
30
|
-
distributionIdRef?: string
|
|
31
|
-
/**
|
|
32
|
-
* @summary The paths to invalidate after deployment. Default is ['/*']
|
|
33
|
-
*/
|
|
34
|
-
invalidationPaths: string[]
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export interface StaticAssetDeploymentProps extends CommonStackProps {
|
|
38
|
-
staticAssetBucket: S3BucketProps
|
|
39
|
-
staticAssetDeployment: BucketDeploymentProps
|
|
40
|
-
staticAssetSources: any[] | string[]
|
|
41
|
-
staticAssetsForExport?: AssetExport[]
|
|
42
|
-
destinationKeyPrefix?: string
|
|
43
|
-
cloudFrontDistribution?: StaticCloudFrontDistribution
|
|
44
|
-
}
|