@takumi-stack/core 1.0.1 → 1.0.3
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/common/helpers/deep-merge.d.ts +4 -0
- package/common/helpers/deep-merge.d.ts.map +1 -0
- package/common/helpers/deep-merge.js +58 -0
- package/common/helpers/deep-merge.js.map +1 -0
- package/common/helpers/index.d.ts +4 -0
- package/common/helpers/index.d.ts.map +1 -0
- package/common/helpers/index.js +20 -0
- package/common/helpers/index.js.map +1 -0
- package/common/helpers/string-parser.d.ts +7 -0
- package/common/helpers/string-parser.d.ts.map +1 -0
- package/common/helpers/string-parser.js +52 -0
- package/common/helpers/string-parser.js.map +1 -0
- package/common/helpers/types.d.ts +7 -0
- package/common/helpers/types.d.ts.map +1 -0
- package/common/helpers/types.js.map +1 -0
- package/common/index.d.ts +4 -0
- package/common/index.d.ts.map +1 -0
- package/common/index.js +20 -0
- package/common/index.js.map +1 -0
- package/common/main/index.d.ts +5 -0
- package/common/main/index.d.ts.map +1 -0
- package/{.dist/prefab/cdn → common/main}/index.js +4 -4
- package/common/main/index.js.map +1 -0
- package/{.dist/common/modifier.d.ts → common/main/mods.d.ts} +1 -1
- package/common/main/mods.d.ts.map +1 -0
- package/{.dist/common/modifier.js → common/main/mods.js} +1 -1
- package/{.dist/common/modifier.js.map → common/main/mods.js.map} +1 -1
- package/common/main/prefab.d.ts +21 -0
- package/common/main/prefab.d.ts.map +1 -0
- package/common/main/prefab.js +29 -0
- package/common/main/prefab.js.map +1 -0
- package/common/main/takumi-app.d.ts +18 -0
- package/common/main/takumi-app.d.ts.map +1 -0
- package/{.dist/common/coordinator.js → common/main/takumi-app.js} +31 -31
- package/common/main/takumi-app.js.map +1 -0
- package/common/main/takumi-stack.d.ts +14 -0
- package/common/main/takumi-stack.d.ts.map +1 -0
- package/common/main/takumi-stack.js +30 -0
- package/common/main/takumi-stack.js.map +1 -0
- package/common/props/default-config.d.ts +3 -0
- package/common/props/default-config.d.ts.map +1 -0
- package/common/props/default-config.js +21 -0
- package/common/props/default-config.js.map +1 -0
- package/common/props/global-config.d.ts +40 -0
- package/common/props/global-config.d.ts.map +1 -0
- package/{.dist/common/synth/props-types.js → common/props/global-config.js} +1 -1
- package/common/props/global-config.js.map +1 -0
- package/common/props/global-props.d.ts +12 -0
- package/common/props/global-props.d.ts.map +1 -0
- package/common/props/global-props.js +41 -0
- package/common/props/global-props.js.map +1 -0
- package/common/props/index.d.ts +6 -0
- package/common/props/index.d.ts.map +1 -0
- package/{.dist/common → common/props}/index.js +5 -5
- package/common/props/index.js.map +1 -0
- package/common/props/naming.d.ts +38 -0
- package/common/props/naming.d.ts.map +1 -0
- package/common/props/naming.js +88 -0
- package/common/props/naming.js.map +1 -0
- package/common/props/prefab-props.d.ts +14 -0
- package/common/props/prefab-props.d.ts.map +1 -0
- package/common/props/prefab-props.js +37 -0
- package/common/props/prefab-props.js.map +1 -0
- package/common/props/stack-props.d.ts +9 -0
- package/common/props/stack-props.d.ts.map +1 -0
- package/common/props/stack-props.js +16 -0
- package/common/props/stack-props.js.map +1 -0
- package/{index.ts → index.d.ts} +1 -1
- package/{.dist/index.d.ts.map → index.d.ts.map} +1 -1
- package/{.dist/index.js → index.js} +1 -1
- package/{.dist/index.js.map → index.js.map} +1 -1
- package/package.json +3 -5
- package/prefab/auth/cognito-user-pool/index.d.ts +43 -0
- package/prefab/auth/cognito-user-pool/index.d.ts.map +1 -0
- package/{.dist/prefab/auth/cognito-pool → prefab/auth/cognito-user-pool}/index.js +94 -102
- package/prefab/auth/cognito-user-pool/index.js.map +1 -0
- package/prefab/auth/index.d.ts +2 -0
- package/prefab/auth/index.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/auth/index.js +1 -1
- package/{.dist/prefab → prefab}/auth/index.js.map +1 -1
- package/prefab/cdn/api/index.d.ts +54 -0
- package/prefab/cdn/api/index.d.ts.map +1 -0
- package/{.dist/prefab/cdn/cdn-api → prefab/cdn/api}/index.js +75 -49
- package/prefab/cdn/api/index.js.map +1 -0
- package/prefab/cdn/assets/index.d.ts +26 -0
- package/prefab/cdn/assets/index.d.ts.map +1 -0
- package/prefab/cdn/assets/index.js +110 -0
- package/prefab/cdn/assets/index.js.map +1 -0
- package/prefab/cdn/index.d.ts +4 -0
- package/prefab/cdn/index.d.ts.map +1 -0
- package/{.dist/prefab/compute/function/api-function → prefab/cdn}/index.js +3 -2
- package/{.dist/prefab → prefab}/cdn/index.js.map +1 -1
- package/prefab/cdn/web/index.d.ts +31 -0
- package/prefab/cdn/web/index.d.ts.map +1 -0
- package/prefab/cdn/web/index.js +149 -0
- package/prefab/cdn/web/index.js.map +1 -0
- package/prefab/compute/ecs/cluster.d.ts +19 -0
- package/prefab/compute/ecs/cluster.d.ts.map +1 -0
- package/prefab/compute/ecs/cluster.js +21 -0
- package/prefab/compute/ecs/cluster.js.map +1 -0
- package/prefab/compute/ecs/index.d.ts.map +1 -0
- package/prefab/compute/ecs/index.js.map +1 -0
- package/prefab/compute/ecs/service.d.ts +44 -0
- package/prefab/compute/ecs/service.d.ts.map +1 -0
- package/prefab/compute/ecs/service.js +98 -0
- package/prefab/compute/ecs/service.js.map +1 -0
- package/prefab/compute/function/api/index.d.ts +21 -0
- package/prefab/compute/function/api/index.d.ts.map +1 -0
- package/prefab/compute/function/api/index.js +40 -0
- package/prefab/compute/function/api/index.js.map +1 -0
- package/prefab/compute/function/base/index.d.ts +34 -0
- package/prefab/compute/function/base/index.d.ts.map +1 -0
- package/prefab/compute/function/base/index.js +76 -0
- package/prefab/compute/function/base/index.js.map +1 -0
- package/prefab/compute/function/cognito/index.d.ts +20 -0
- package/prefab/compute/function/cognito/index.d.ts.map +1 -0
- package/prefab/compute/function/cognito/index.js +35 -0
- package/prefab/compute/function/cognito/index.js.map +1 -0
- package/prefab/compute/function/cron/index.d.ts +20 -0
- package/prefab/compute/function/cron/index.d.ts.map +1 -0
- package/prefab/compute/function/cron/index.js +30 -0
- package/prefab/compute/function/cron/index.js.map +1 -0
- package/prefab/compute/function/event/index.d.ts +20 -0
- package/prefab/compute/function/event/index.d.ts.map +1 -0
- package/prefab/compute/function/event/index.js +38 -0
- package/prefab/compute/function/event/index.js.map +1 -0
- package/prefab/compute/function/index.d.ts +9 -0
- package/prefab/compute/function/index.d.ts.map +1 -0
- package/prefab/compute/function/index.js +25 -0
- package/{.dist/prefab → prefab}/compute/function/index.js.map +1 -1
- package/prefab/compute/function/queue/index.d.ts +19 -0
- package/prefab/compute/function/queue/index.d.ts.map +1 -0
- package/prefab/compute/function/queue/index.js +32 -0
- package/prefab/compute/function/queue/index.js.map +1 -0
- package/prefab/compute/function/scheduled/index.d.ts +21 -0
- package/prefab/compute/function/scheduled/index.d.ts.map +1 -0
- package/prefab/compute/function/scheduled/index.js +56 -0
- package/prefab/compute/function/scheduled/index.js.map +1 -0
- package/prefab/compute/function/topic/index.d.ts +20 -0
- package/prefab/compute/function/topic/index.d.ts.map +1 -0
- package/prefab/compute/function/topic/index.js +30 -0
- package/prefab/compute/function/topic/index.js.map +1 -0
- package/prefab/compute/index.d.ts +2 -0
- package/prefab/compute/index.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/compute/index.js +1 -1
- package/{.dist/prefab → prefab}/compute/index.js.map +1 -1
- package/prefab/database/dynamo/index.d.ts +22 -0
- package/prefab/database/dynamo/index.d.ts.map +1 -0
- package/prefab/database/dynamo/index.js +58 -0
- package/prefab/database/dynamo/index.js.map +1 -0
- package/prefab/database/rds/index.d.ts +82 -0
- package/prefab/database/rds/index.d.ts.map +1 -0
- package/prefab/database/rds/index.js +270 -0
- package/prefab/database/rds/index.js.map +1 -0
- package/prefab/database/timestream/timestream-database.d.ts +16 -0
- package/prefab/database/timestream/timestream-database.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/database/timestream/timestream-database.js +9 -7
- package/prefab/database/timestream/timestream-database.js.map +1 -0
- package/prefab/database/timestream/timestream-table.d.ts +23 -0
- package/prefab/database/timestream/timestream-table.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/database/timestream/timestream-table.js +22 -22
- package/prefab/database/timestream/timestream-table.js.map +1 -0
- package/prefab/gateway/alb-public/index.d.ts +43 -0
- package/prefab/gateway/alb-public/index.d.ts.map +1 -0
- package/prefab/gateway/alb-public/index.js +123 -0
- package/prefab/gateway/alb-public/index.js.map +1 -0
- package/prefab/gateway/api-gateway/api-http.d.ts +38 -0
- package/prefab/gateway/api-gateway/api-http.d.ts.map +1 -0
- package/prefab/gateway/api-gateway/api-http.js +95 -0
- package/prefab/gateway/api-gateway/api-http.js.map +1 -0
- package/prefab/gateway/api-gateway/api-rest.d.ts +45 -0
- package/prefab/gateway/api-gateway/api-rest.d.ts.map +1 -0
- package/prefab/gateway/api-gateway/api-rest.js +113 -0
- package/prefab/gateway/api-gateway/api-rest.js.map +1 -0
- package/prefab/gateway/{index.ts → index.d.ts} +1 -1
- package/{.dist/prefab → prefab}/gateway/index.d.ts.map +1 -1
- package/{.dist/prefab → prefab}/gateway/index.js +1 -1
- package/{.dist/prefab → prefab}/gateway/index.js.map +1 -1
- package/{.dist/prefab → prefab}/index.d.ts +2 -1
- package/prefab/index.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/index.js +2 -1
- package/prefab/index.js.map +1 -0
- package/prefab/integration/event-bus/index.d.ts +24 -0
- package/prefab/integration/event-bus/index.d.ts.map +1 -0
- package/prefab/integration/event-bus/index.js +53 -0
- package/prefab/integration/event-bus/index.js.map +1 -0
- package/prefab/integration/queue/index.d.ts +37 -0
- package/prefab/integration/queue/index.d.ts.map +1 -0
- package/prefab/integration/queue/index.js +73 -0
- package/prefab/integration/queue/index.js.map +1 -0
- package/prefab/integration/topic/index.d.ts +26 -0
- package/prefab/integration/topic/index.d.ts.map +1 -0
- package/prefab/integration/topic/index.js +42 -0
- package/prefab/integration/topic/index.js.map +1 -0
- package/prefab/networking/certificate/index.d.ts +19 -0
- package/prefab/networking/certificate/index.d.ts.map +1 -0
- package/prefab/networking/certificate/index.js +39 -0
- package/prefab/networking/certificate/index.js.map +1 -0
- package/prefab/networking/hosted-zone/index.d.ts +21 -0
- package/prefab/networking/hosted-zone/index.d.ts.map +1 -0
- package/prefab/networking/hosted-zone/index.js +38 -0
- package/prefab/networking/hosted-zone/index.js.map +1 -0
- package/prefab/networking/index.d.ts +5 -0
- package/{.dist/prefab → prefab}/networking/index.d.ts.map +1 -1
- package/{.dist/prefab → prefab}/networking/index.js +2 -3
- package/{.dist/prefab → prefab}/networking/index.js.map +1 -1
- package/prefab/networking/vpc/index.d.ts +17 -0
- package/prefab/networking/vpc/index.d.ts.map +1 -0
- package/prefab/networking/vpc/index.js +20 -0
- package/prefab/networking/vpc/index.js.map +1 -0
- package/prefab/networking/waf/index.d.ts +17 -0
- package/prefab/networking/waf/index.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/networking/waf/index.js +11 -11
- package/prefab/networking/waf/index.js.map +1 -0
- package/prefab/secrets/index.d.ts +3 -0
- package/prefab/secrets/index.d.ts.map +1 -0
- package/prefab/secrets/index.js +19 -0
- package/prefab/secrets/index.js.map +1 -0
- package/prefab/secrets/sm-secret/index.d.ts +22 -0
- package/prefab/secrets/sm-secret/index.d.ts.map +1 -0
- package/prefab/secrets/sm-secret/index.js +39 -0
- package/prefab/secrets/sm-secret/index.js.map +1 -0
- package/prefab/secrets/ssm-parameter/index.d.ts +23 -0
- package/prefab/secrets/ssm-parameter/index.d.ts.map +1 -0
- package/prefab/secrets/ssm-parameter/index.js +43 -0
- package/prefab/secrets/ssm-parameter/index.js.map +1 -0
- package/prefab/ssr/index.d.ts +2 -0
- package/prefab/ssr/index.d.ts.map +1 -0
- package/{.dist/prefab/analytics → prefab/ssr}/index.js +1 -1
- package/prefab/ssr/index.js.map +1 -0
- package/prefab/ssr/next/index.d.ts +28 -0
- package/prefab/ssr/next/index.d.ts.map +1 -0
- package/prefab/ssr/next/index.js +77 -0
- package/prefab/ssr/next/index.js.map +1 -0
- package/prefab/storage/bucket/index.d.ts +42 -0
- package/prefab/storage/bucket/index.d.ts.map +1 -0
- package/prefab/storage/bucket/index.js +64 -0
- package/prefab/storage/bucket/index.js.map +1 -0
- package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/slack.d.ts +4 -4
- package/prefab/utils/deploy-pipeline/catalog/integrations/slack.d.ts.map +1 -0
- package/prefab/utils/deploy-pipeline/index.d.ts +2 -0
- package/prefab/utils/deploy-pipeline/index.d.ts.map +1 -0
- package/prefab/utils/deploy-pipeline/index.js +163 -0
- package/prefab/utils/deploy-pipeline/index.js.map +1 -0
- package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-slack-payload.d.ts.map +1 -1
- package/prefab/utils/deploy-pipeline/platform/get-slack-payload.js.map +1 -0
- package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/send-to-slack.d.ts.map +1 -1
- package/prefab/utils/deploy-pipeline/platform/send-to-slack.js.map +1 -0
- package/prefab/utils/exports.d.ts +4 -0
- package/prefab/utils/exports.d.ts.map +1 -0
- package/prefab/utils/exports.js +26 -0
- package/prefab/utils/exports.js.map +1 -0
- package/prefab/utils/frontend-builder/index.d.ts +21 -0
- package/prefab/utils/frontend-builder/index.d.ts.map +1 -0
- package/prefab/utils/frontend-builder/index.js +54 -0
- package/prefab/utils/frontend-builder/index.js.map +1 -0
- package/prefab/utils/index.d.ts +5 -0
- package/prefab/utils/index.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/utils/index.js +2 -2
- package/{.dist/prefab → prefab}/utils/index.js.map +1 -1
- package/prefab/utils/ses/index.d.ts +21 -0
- package/prefab/utils/ses/index.d.ts.map +1 -0
- package/{.dist/prefab → prefab}/utils/ses/index.js +33 -53
- package/prefab/utils/ses/index.js.map +1 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/.dist/common/coordinator.d.ts +0 -18
- package/.dist/common/coordinator.d.ts.map +0 -1
- package/.dist/common/coordinator.js.map +0 -1
- package/.dist/common/index.d.ts +0 -6
- package/.dist/common/index.d.ts.map +0 -1
- package/.dist/common/index.js.map +0 -1
- package/.dist/common/modifier.d.ts.map +0 -1
- package/.dist/common/naming/get-deploy-config.d.ts +0 -5
- package/.dist/common/naming/get-deploy-config.d.ts.map +0 -1
- package/.dist/common/naming/get-deploy-config.js +0 -8
- package/.dist/common/naming/get-deploy-config.js.map +0 -1
- package/.dist/common/naming/get-domain.d.ts +0 -8
- package/.dist/common/naming/get-domain.d.ts.map +0 -1
- package/.dist/common/naming/get-domain.js +0 -13
- package/.dist/common/naming/get-domain.js.map +0 -1
- package/.dist/common/naming/get-function-entry.d.ts +0 -3
- package/.dist/common/naming/get-function-entry.d.ts.map +0 -1
- package/.dist/common/naming/get-function-entry.js +0 -14
- package/.dist/common/naming/get-function-entry.js.map +0 -1
- package/.dist/common/naming/get-logical-name.d.ts +0 -2
- package/.dist/common/naming/get-logical-name.d.ts.map +0 -1
- package/.dist/common/naming/get-logical-name.js +0 -8
- package/.dist/common/naming/get-logical-name.js.map +0 -1
- package/.dist/common/naming/get-resource-name.d.ts +0 -26
- package/.dist/common/naming/get-resource-name.d.ts.map +0 -1
- package/.dist/common/naming/get-resource-name.js +0 -38
- package/.dist/common/naming/get-resource-name.js.map +0 -1
- package/.dist/common/naming/get-service-name.d.ts +0 -9
- package/.dist/common/naming/get-service-name.d.ts.map +0 -1
- package/.dist/common/naming/get-service-name.js +0 -10
- package/.dist/common/naming/get-service-name.js.map +0 -1
- package/.dist/common/naming/index.d.ts +0 -8
- package/.dist/common/naming/index.d.ts.map +0 -1
- package/.dist/common/naming/index.js +0 -24
- package/.dist/common/naming/index.js.map +0 -1
- package/.dist/common/naming/string-parser.d.ts +0 -4
- package/.dist/common/naming/string-parser.d.ts.map +0 -1
- package/.dist/common/naming/string-parser.js +0 -22
- package/.dist/common/naming/string-parser.js.map +0 -1
- package/.dist/common/service.d.ts +0 -21
- package/.dist/common/service.d.ts.map +0 -1
- package/.dist/common/service.js +0 -28
- package/.dist/common/service.js.map +0 -1
- package/.dist/common/synth/account-mapping.d.ts +0 -2
- package/.dist/common/synth/account-mapping.d.ts.map +0 -1
- package/.dist/common/synth/account-mapping.js +0 -18
- package/.dist/common/synth/account-mapping.js.map +0 -1
- package/.dist/common/synth/assume-role.d.ts +0 -17
- package/.dist/common/synth/assume-role.d.ts.map +0 -1
- package/.dist/common/synth/assume-role.js +0 -25
- package/.dist/common/synth/assume-role.js.map +0 -1
- package/.dist/common/synth/get-global-props.d.ts +0 -4
- package/.dist/common/synth/get-global-props.d.ts.map +0 -1
- package/.dist/common/synth/get-global-props.js +0 -34
- package/.dist/common/synth/get-global-props.js.map +0 -1
- package/.dist/common/synth/get-service-props.d.ts +0 -3
- package/.dist/common/synth/get-service-props.d.ts.map +0 -1
- package/.dist/common/synth/get-service-props.js +0 -12
- package/.dist/common/synth/get-service-props.js.map +0 -1
- package/.dist/common/synth/index.d.ts +0 -8
- package/.dist/common/synth/index.d.ts.map +0 -1
- package/.dist/common/synth/index.js +0 -24
- package/.dist/common/synth/index.js.map +0 -1
- package/.dist/common/synth/pre-script.d.ts +0 -21
- package/.dist/common/synth/pre-script.d.ts.map +0 -1
- package/.dist/common/synth/pre-script.js +0 -74
- package/.dist/common/synth/pre-script.js.map +0 -1
- package/.dist/common/synth/props-types.d.ts +0 -41
- package/.dist/common/synth/props-types.d.ts.map +0 -1
- package/.dist/common/synth/props-types.js.map +0 -1
- package/.dist/common/synth/synth-error.d.ts +0 -7
- package/.dist/common/synth/synth-error.d.ts.map +0 -1
- package/.dist/common/synth/synth-error.js +0 -17
- package/.dist/common/synth/synth-error.js.map +0 -1
- package/.dist/index.d.ts +0 -4
- package/.dist/package.json +0 -43
- package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.d.ts +0 -3
- package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.d.ts.map +0 -1
- package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.js +0 -34
- package/.dist/prefab/analytics/events/handlers/ingestion-transform/handler.js.map +0 -1
- package/.dist/prefab/analytics/events/index.d.ts +0 -28
- package/.dist/prefab/analytics/events/index.d.ts.map +0 -1
- package/.dist/prefab/analytics/events/index.js +0 -163
- package/.dist/prefab/analytics/events/index.js.map +0 -1
- package/.dist/prefab/analytics/index.d.ts +0 -2
- package/.dist/prefab/analytics/index.d.ts.map +0 -1
- package/.dist/prefab/analytics/index.js.map +0 -1
- package/.dist/prefab/auth/cognito-pool/index.d.ts +0 -57
- package/.dist/prefab/auth/cognito-pool/index.d.ts.map +0 -1
- package/.dist/prefab/auth/cognito-pool/index.js.map +0 -1
- package/.dist/prefab/auth/index.d.ts +0 -2
- package/.dist/prefab/auth/index.d.ts.map +0 -1
- package/.dist/prefab/cdn/cdn-api/index.d.ts +0 -34
- package/.dist/prefab/cdn/cdn-api/index.d.ts.map +0 -1
- package/.dist/prefab/cdn/cdn-api/index.js.map +0 -1
- package/.dist/prefab/cdn/cdn-asset/index.d.ts +0 -24
- package/.dist/prefab/cdn/cdn-asset/index.d.ts.map +0 -1
- package/.dist/prefab/cdn/cdn-asset/index.js +0 -96
- package/.dist/prefab/cdn/cdn-asset/index.js.map +0 -1
- package/.dist/prefab/cdn/cdn-spa/index.d.ts +0 -24
- package/.dist/prefab/cdn/cdn-spa/index.d.ts.map +0 -1
- package/.dist/prefab/cdn/cdn-spa/index.js +0 -138
- package/.dist/prefab/cdn/cdn-spa/index.js.map +0 -1
- package/.dist/prefab/cdn/cdn-ssr/index.d.ts +0 -33
- package/.dist/prefab/cdn/cdn-ssr/index.d.ts.map +0 -1
- package/.dist/prefab/cdn/cdn-ssr/index.js +0 -271
- package/.dist/prefab/cdn/cdn-ssr/index.js.map +0 -1
- package/.dist/prefab/cdn/index.d.ts +0 -5
- package/.dist/prefab/cdn/index.d.ts.map +0 -1
- package/.dist/prefab/compute/fargate/cluster.d.ts +0 -13
- package/.dist/prefab/compute/fargate/cluster.d.ts.map +0 -1
- package/.dist/prefab/compute/fargate/cluster.js +0 -42
- package/.dist/prefab/compute/fargate/cluster.js.map +0 -1
- package/.dist/prefab/compute/fargate/index.d.ts.map +0 -1
- package/.dist/prefab/compute/fargate/index.js.map +0 -1
- package/.dist/prefab/compute/fargate/service.d.ts +0 -45
- package/.dist/prefab/compute/fargate/service.d.ts.map +0 -1
- package/.dist/prefab/compute/fargate/service.js +0 -109
- package/.dist/prefab/compute/fargate/service.js.map +0 -1
- package/.dist/prefab/compute/function/api-function/api-aggregate.d.ts +0 -31
- package/.dist/prefab/compute/function/api-function/api-aggregate.d.ts.map +0 -1
- package/.dist/prefab/compute/function/api-function/api-aggregate.js +0 -53
- package/.dist/prefab/compute/function/api-function/api-aggregate.js.map +0 -1
- package/.dist/prefab/compute/function/api-function/api-function.d.ts +0 -22
- package/.dist/prefab/compute/function/api-function/api-function.d.ts.map +0 -1
- package/.dist/prefab/compute/function/api-function/api-function.js +0 -44
- package/.dist/prefab/compute/function/api-function/api-function.js.map +0 -1
- package/.dist/prefab/compute/function/api-function/index.d.ts +0 -3
- package/.dist/prefab/compute/function/api-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/api-function/index.js.map +0 -1
- package/.dist/prefab/compute/function/base-function/index.d.ts +0 -33
- package/.dist/prefab/compute/function/base-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/base-function/index.js +0 -70
- package/.dist/prefab/compute/function/base-function/index.js.map +0 -1
- package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.d.ts +0 -15
- package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.d.ts.map +0 -1
- package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.js +0 -22
- package/.dist/prefab/compute/function/cognito-function/cognito-aggregate.js.map +0 -1
- package/.dist/prefab/compute/function/cognito-function/cognito-function.d.ts +0 -17
- package/.dist/prefab/compute/function/cognito-function/cognito-function.d.ts.map +0 -1
- package/.dist/prefab/compute/function/cognito-function/cognito-function.js +0 -24
- package/.dist/prefab/compute/function/cognito-function/cognito-function.js.map +0 -1
- package/.dist/prefab/compute/function/cognito-function/index.d.ts +0 -3
- package/.dist/prefab/compute/function/cognito-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/cognito-function/index.js +0 -19
- package/.dist/prefab/compute/function/cognito-function/index.js.map +0 -1
- package/.dist/prefab/compute/function/cron-function/cron-aggregate.d.ts +0 -14
- package/.dist/prefab/compute/function/cron-function/cron-aggregate.d.ts.map +0 -1
- package/.dist/prefab/compute/function/cron-function/cron-aggregate.js +0 -22
- package/.dist/prefab/compute/function/cron-function/cron-aggregate.js.map +0 -1
- package/.dist/prefab/compute/function/cron-function/cron-function.d.ts +0 -15
- package/.dist/prefab/compute/function/cron-function/cron-function.d.ts.map +0 -1
- package/.dist/prefab/compute/function/cron-function/cron-function.js +0 -24
- package/.dist/prefab/compute/function/cron-function/cron-function.js.map +0 -1
- package/.dist/prefab/compute/function/cron-function/index.d.ts +0 -3
- package/.dist/prefab/compute/function/cron-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/cron-function/index.js +0 -19
- package/.dist/prefab/compute/function/cron-function/index.js.map +0 -1
- package/.dist/prefab/compute/function/event-function/EventAggregateParams.d.ts +0 -9
- package/.dist/prefab/compute/function/event-function/EventAggregateParams.d.ts.map +0 -1
- package/.dist/prefab/compute/function/event-function/EventAggregateParams.js +0 -3
- package/.dist/prefab/compute/function/event-function/EventAggregateParams.js.map +0 -1
- package/.dist/prefab/compute/function/event-function/event-aggregate.d.ts +0 -16
- package/.dist/prefab/compute/function/event-function/event-aggregate.d.ts.map +0 -1
- package/.dist/prefab/compute/function/event-function/event-aggregate.js +0 -25
- package/.dist/prefab/compute/function/event-function/event-aggregate.js.map +0 -1
- package/.dist/prefab/compute/function/event-function/event-function.d.ts +0 -14
- package/.dist/prefab/compute/function/event-function/event-function.d.ts.map +0 -1
- package/.dist/prefab/compute/function/event-function/event-function.js +0 -33
- package/.dist/prefab/compute/function/event-function/event-function.js.map +0 -1
- package/.dist/prefab/compute/function/event-function/index.d.ts +0 -3
- package/.dist/prefab/compute/function/event-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/event-function/index.js +0 -19
- package/.dist/prefab/compute/function/event-function/index.js.map +0 -1
- package/.dist/prefab/compute/function/index.d.ts +0 -8
- package/.dist/prefab/compute/function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/index.js +0 -24
- package/.dist/prefab/compute/function/queue-function/index.d.ts +0 -22
- package/.dist/prefab/compute/function/queue-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/queue-function/index.js +0 -46
- package/.dist/prefab/compute/function/queue-function/index.js.map +0 -1
- package/.dist/prefab/compute/function/topic-function/index.d.ts +0 -20
- package/.dist/prefab/compute/function/topic-function/index.d.ts.map +0 -1
- package/.dist/prefab/compute/function/topic-function/index.js +0 -23
- package/.dist/prefab/compute/function/topic-function/index.js.map +0 -1
- package/.dist/prefab/compute/index.d.ts +0 -3
- package/.dist/prefab/compute/index.d.ts.map +0 -1
- package/.dist/prefab/database/dynamo/index.d.ts +0 -13
- package/.dist/prefab/database/dynamo/index.d.ts.map +0 -1
- package/.dist/prefab/database/dynamo/index.js +0 -106
- package/.dist/prefab/database/dynamo/index.js.map +0 -1
- package/.dist/prefab/database/rds/index.d.ts +0 -51
- package/.dist/prefab/database/rds/index.d.ts.map +0 -1
- package/.dist/prefab/database/rds/index.js +0 -223
- package/.dist/prefab/database/rds/index.js.map +0 -1
- package/.dist/prefab/database/timestream/timestream-database.d.ts +0 -11
- package/.dist/prefab/database/timestream/timestream-database.d.ts.map +0 -1
- package/.dist/prefab/database/timestream/timestream-database.js.map +0 -1
- package/.dist/prefab/database/timestream/timestream-table.d.ts +0 -21
- package/.dist/prefab/database/timestream/timestream-table.d.ts.map +0 -1
- package/.dist/prefab/database/timestream/timestream-table.js.map +0 -1
- package/.dist/prefab/gateway/alb-public/index.d.ts +0 -41
- package/.dist/prefab/gateway/alb-public/index.d.ts.map +0 -1
- package/.dist/prefab/gateway/alb-public/index.js +0 -116
- package/.dist/prefab/gateway/alb-public/index.js.map +0 -1
- package/.dist/prefab/gateway/api-gateway/api-http.d.ts +0 -27
- package/.dist/prefab/gateway/api-gateway/api-http.d.ts.map +0 -1
- package/.dist/prefab/gateway/api-gateway/api-http.js +0 -48
- package/.dist/prefab/gateway/api-gateway/api-http.js.map +0 -1
- package/.dist/prefab/gateway/api-gateway/api-rest.d.ts +0 -23
- package/.dist/prefab/gateway/api-gateway/api-rest.d.ts.map +0 -1
- package/.dist/prefab/gateway/api-gateway/api-rest.js +0 -90
- package/.dist/prefab/gateway/api-gateway/api-rest.js.map +0 -1
- package/.dist/prefab/gateway/app-sync/index.d.ts +0 -31
- package/.dist/prefab/gateway/app-sync/index.d.ts.map +0 -1
- package/.dist/prefab/gateway/app-sync/index.js +0 -114
- package/.dist/prefab/gateway/app-sync/index.js.map +0 -1
- package/.dist/prefab/gateway/app-sync/resolver-aggregate.d.ts +0 -33
- package/.dist/prefab/gateway/app-sync/resolver-aggregate.d.ts.map +0 -1
- package/.dist/prefab/gateway/app-sync/resolver-aggregate.js +0 -125
- package/.dist/prefab/gateway/app-sync/resolver-aggregate.js.map +0 -1
- package/.dist/prefab/gateway/app-sync/types.d.ts +0 -29
- package/.dist/prefab/gateway/app-sync/types.d.ts.map +0 -1
- package/.dist/prefab/gateway/app-sync/types.js.map +0 -1
- package/.dist/prefab/gateway/index.d.ts +0 -4
- package/.dist/prefab/index.d.ts.map +0 -1
- package/.dist/prefab/index.js.map +0 -1
- package/.dist/prefab/integration/event-bus/index.d.ts +0 -18
- package/.dist/prefab/integration/event-bus/index.d.ts.map +0 -1
- package/.dist/prefab/integration/event-bus/index.js +0 -46
- package/.dist/prefab/integration/event-bus/index.js.map +0 -1
- package/.dist/prefab/integration/queue/index.d.ts +0 -29
- package/.dist/prefab/integration/queue/index.d.ts.map +0 -1
- package/.dist/prefab/integration/queue/index.js +0 -70
- package/.dist/prefab/integration/queue/index.js.map +0 -1
- package/.dist/prefab/integration/topic/index.d.ts +0 -19
- package/.dist/prefab/integration/topic/index.d.ts.map +0 -1
- package/.dist/prefab/integration/topic/index.js +0 -48
- package/.dist/prefab/integration/topic/index.js.map +0 -1
- package/.dist/prefab/networking/dns-domain-ref/index.d.ts +0 -14
- package/.dist/prefab/networking/dns-domain-ref/index.d.ts.map +0 -1
- package/.dist/prefab/networking/dns-domain-ref/index.js +0 -28
- package/.dist/prefab/networking/dns-domain-ref/index.js.map +0 -1
- package/.dist/prefab/networking/dns-subdomain-certificate/index.d.ts +0 -11
- package/.dist/prefab/networking/dns-subdomain-certificate/index.d.ts.map +0 -1
- package/.dist/prefab/networking/dns-subdomain-certificate/index.js +0 -28
- package/.dist/prefab/networking/dns-subdomain-certificate/index.js.map +0 -1
- package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.d.ts +0 -10
- package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.d.ts.map +0 -1
- package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.js +0 -27
- package/.dist/prefab/networking/dns-subdomain-hosted-zone/index.js.map +0 -1
- package/.dist/prefab/networking/index.d.ts +0 -6
- package/.dist/prefab/networking/vpc/index.d.ts +0 -18
- package/.dist/prefab/networking/vpc/index.d.ts.map +0 -1
- package/.dist/prefab/networking/vpc/index.js +0 -28
- package/.dist/prefab/networking/vpc/index.js.map +0 -1
- package/.dist/prefab/networking/waf/index.d.ts +0 -12
- package/.dist/prefab/networking/waf/index.d.ts.map +0 -1
- package/.dist/prefab/networking/waf/index.js.map +0 -1
- package/.dist/prefab/storage/bucket/asset-bucket.d.ts +0 -10
- package/.dist/prefab/storage/bucket/asset-bucket.d.ts.map +0 -1
- package/.dist/prefab/storage/bucket/asset-bucket.js +0 -19
- package/.dist/prefab/storage/bucket/asset-bucket.js.map +0 -1
- package/.dist/prefab/storage/bucket/index.d.ts +0 -3
- package/.dist/prefab/storage/bucket/index.d.ts.map +0 -1
- package/.dist/prefab/storage/bucket/index.js +0 -19
- package/.dist/prefab/storage/bucket/index.js.map +0 -1
- package/.dist/prefab/storage/bucket/private-bucket.d.ts +0 -32
- package/.dist/prefab/storage/bucket/private-bucket.d.ts.map +0 -1
- package/.dist/prefab/storage/bucket/private-bucket.js +0 -82
- package/.dist/prefab/storage/bucket/private-bucket.js.map +0 -1
- package/.dist/prefab/utils/config/frontend-env-builder.d.ts +0 -12
- package/.dist/prefab/utils/config/frontend-env-builder.d.ts.map +0 -1
- package/.dist/prefab/utils/config/frontend-env-builder.js +0 -25
- package/.dist/prefab/utils/config/frontend-env-builder.js.map +0 -1
- package/.dist/prefab/utils/config/index.d.ts +0 -4
- package/.dist/prefab/utils/config/index.d.ts.map +0 -1
- package/.dist/prefab/utils/config/index.js +0 -20
- package/.dist/prefab/utils/config/index.js.map +0 -1
- package/.dist/prefab/utils/config/parameter-secret.d.ts +0 -19
- package/.dist/prefab/utils/config/parameter-secret.d.ts.map +0 -1
- package/.dist/prefab/utils/config/parameter-secret.js +0 -42
- package/.dist/prefab/utils/config/parameter-secret.js.map +0 -1
- package/.dist/prefab/utils/config/runtime-secret.d.ts +0 -20
- package/.dist/prefab/utils/config/runtime-secret.d.ts.map +0 -1
- package/.dist/prefab/utils/config/runtime-secret.js +0 -37
- package/.dist/prefab/utils/config/runtime-secret.js.map +0 -1
- package/.dist/prefab/utils/deploy-pipeline/catalog/integrations/slack.d.ts.map +0 -1
- package/.dist/prefab/utils/deploy-pipeline/index.d.ts +0 -13
- package/.dist/prefab/utils/deploy-pipeline/index.d.ts.map +0 -1
- package/.dist/prefab/utils/deploy-pipeline/index.js +0 -173
- package/.dist/prefab/utils/deploy-pipeline/index.js.map +0 -1
- package/.dist/prefab/utils/deploy-pipeline/platform/get-slack-payload.js.map +0 -1
- package/.dist/prefab/utils/deploy-pipeline/platform/send-to-slack.js.map +0 -1
- package/.dist/prefab/utils/duration.d.ts +0 -2
- package/.dist/prefab/utils/duration.d.ts.map +0 -1
- package/.dist/prefab/utils/duration.js +0 -6
- package/.dist/prefab/utils/duration.js.map +0 -1
- package/.dist/prefab/utils/index.d.ts +0 -5
- package/.dist/prefab/utils/index.d.ts.map +0 -1
- package/.dist/prefab/utils/ses/index.d.ts +0 -20
- package/.dist/prefab/utils/ses/index.d.ts.map +0 -1
- package/.dist/prefab/utils/ses/index.js.map +0 -1
- package/.dist/script/config-command/bootstrap.d.ts +0 -3
- package/.dist/script/config-command/bootstrap.d.ts.map +0 -1
- package/.dist/script/config-command/bootstrap.js +0 -65
- package/.dist/script/config-command/bootstrap.js.map +0 -1
- package/.dist/script/config-command/deploy-spa.d.ts +0 -3
- package/.dist/script/config-command/deploy-spa.d.ts.map +0 -1
- package/.dist/script/config-command/deploy-spa.js +0 -82
- package/.dist/script/config-command/deploy-spa.js.map +0 -1
- package/.dist/script/config-command/deploy.d.ts +0 -3
- package/.dist/script/config-command/deploy.d.ts.map +0 -1
- package/.dist/script/config-command/deploy.js +0 -26
- package/.dist/script/config-command/deploy.js.map +0 -1
- package/.dist/script/config-command/destroy.d.ts +0 -3
- package/.dist/script/config-command/destroy.d.ts.map +0 -1
- package/.dist/script/config-command/destroy.js +0 -26
- package/.dist/script/config-command/destroy.js.map +0 -1
- package/.dist/script/config-command/env-ssr.d.ts +0 -3
- package/.dist/script/config-command/env-ssr.d.ts.map +0 -1
- package/.dist/script/config-command/env-ssr.js +0 -49
- package/.dist/script/config-command/env-ssr.js.map +0 -1
- package/.dist/script/config-command/invalidation-ssr.d.ts +0 -3
- package/.dist/script/config-command/invalidation-ssr.d.ts.map +0 -1
- package/.dist/script/config-command/invalidation-ssr.js +0 -53
- package/.dist/script/config-command/invalidation-ssr.js.map +0 -1
- package/.dist/script/config-command/rds-migration.d.ts +0 -5
- package/.dist/script/config-command/rds-migration.d.ts.map +0 -1
- package/.dist/script/config-command/rds-migration.js +0 -125
- package/.dist/script/config-command/rds-migration.js.map +0 -1
- package/.dist/script/config-command/rds-sync.d.ts +0 -3
- package/.dist/script/config-command/rds-sync.d.ts.map +0 -1
- package/.dist/script/config-command/rds-sync.js +0 -66
- package/.dist/script/config-command/rds-sync.js.map +0 -1
- package/.dist/script/config-command/ssm-connect.d.ts +0 -3
- package/.dist/script/config-command/ssm-connect.d.ts.map +0 -1
- package/.dist/script/config-command/ssm-connect.js +0 -86
- package/.dist/script/config-command/ssm-connect.js.map +0 -1
- package/.dist/script/config-command/start-spa.d.ts +0 -3
- package/.dist/script/config-command/start-spa.d.ts.map +0 -1
- package/.dist/script/config-command/start-spa.js +0 -53
- package/.dist/script/config-command/start-spa.js.map +0 -1
- package/.dist/script/config-command/start-ssr.d.ts +0 -3
- package/.dist/script/config-command/start-ssr.d.ts.map +0 -1
- package/.dist/script/config-command/start-ssr.js +0 -53
- package/.dist/script/config-command/start-ssr.js.map +0 -1
- package/.dist/script/config-command/synth.d.ts +0 -3
- package/.dist/script/config-command/synth.d.ts.map +0 -1
- package/.dist/script/config-command/synth.js +0 -26
- package/.dist/script/config-command/synth.js.map +0 -1
- package/.dist/script/index.d.ts +0 -7
- package/.dist/script/index.d.ts.map +0 -1
- package/.dist/script/index.js +0 -70
- package/.dist/script/index.js.map +0 -1
- package/.dist/script/output-command/create-user.d.ts +0 -9
- package/.dist/script/output-command/create-user.d.ts.map +0 -1
- package/.dist/script/output-command/create-user.js +0 -61
- package/.dist/script/output-command/create-user.js.map +0 -1
- package/.dist/script/output-command/gen-postman-env.d.ts +0 -9
- package/.dist/script/output-command/gen-postman-env.d.ts.map +0 -1
- package/.dist/script/output-command/gen-postman-env.js +0 -55
- package/.dist/script/output-command/gen-postman-env.js.map +0 -1
- package/.dist/tsconfig.tsbuildinfo +0 -1
- package/.prettierignore +0 -10
- package/.prettierrc.json +0 -12
- package/.turbo/turbo-build.log +0 -5
- package/.turbo/turbo-release.log +0 -7
- package/CHANGELOG.md +0 -8
- package/common/coordinator.ts +0 -103
- package/common/index.ts +0 -5
- package/common/modifier.ts +0 -11
- package/common/naming/get-deploy-config.ts +0 -5
- package/common/naming/get-domain.ts +0 -14
- package/common/naming/get-function-entry.ts +0 -11
- package/common/naming/get-logical-name.ts +0 -3
- package/common/naming/get-resource-name.ts +0 -77
- package/common/naming/get-service-name.ts +0 -13
- package/common/naming/index.ts +0 -7
- package/common/naming/string-parser.ts +0 -17
- package/common/service.ts +0 -48
- package/common/synth/account-mapping.ts +0 -16
- package/common/synth/assume-role.ts +0 -39
- package/common/synth/get-global-props.ts +0 -46
- package/common/synth/get-service-props.ts +0 -16
- package/common/synth/index.ts +0 -7
- package/common/synth/pre-script.ts +0 -103
- package/common/synth/props-types.ts +0 -79
- package/common/synth/synth-error.ts +0 -13
- package/prefab/analytics/events/handlers/ingestion-transform/handler.ts +0 -35
- package/prefab/analytics/events/index.ts +0 -192
- package/prefab/analytics/index.ts +0 -1
- package/prefab/auth/cognito-pool/index.ts +0 -263
- package/prefab/auth/index.ts +0 -1
- package/prefab/cdn/cdn-api/index.ts +0 -169
- package/prefab/cdn/cdn-asset/index.ts +0 -89
- package/prefab/cdn/cdn-spa/index.ts +0 -136
- package/prefab/cdn/cdn-ssr/index.ts +0 -288
- package/prefab/cdn/index.ts +0 -4
- package/prefab/compute/fargate/cluster.ts +0 -24
- package/prefab/compute/fargate/index.ts +0 -2
- package/prefab/compute/fargate/service.ts +0 -130
- package/prefab/compute/function/api-function/api-aggregate.ts +0 -73
- package/prefab/compute/function/api-function/api-function.ts +0 -63
- package/prefab/compute/function/api-function/index.ts +0 -2
- package/prefab/compute/function/base-function/index.ts +0 -102
- package/prefab/compute/function/cognito-function/cognito-aggregate.ts +0 -29
- package/prefab/compute/function/cognito-function/cognito-function.ts +0 -36
- package/prefab/compute/function/cognito-function/index.ts +0 -2
- package/prefab/compute/function/cron-function/cron-aggregate.ts +0 -28
- package/prefab/compute/function/cron-function/cron-function.ts +0 -32
- package/prefab/compute/function/cron-function/index.ts +0 -2
- package/prefab/compute/function/event-function/EventAggregateParams.ts +0 -9
- package/prefab/compute/function/event-function/event-aggregate.ts +0 -33
- package/prefab/compute/function/event-function/event-function.ts +0 -42
- package/prefab/compute/function/event-function/index.ts +0 -2
- package/prefab/compute/function/index.ts +0 -7
- package/prefab/compute/function/queue-function/index.ts +0 -67
- package/prefab/compute/function/topic-function/index.ts +0 -36
- package/prefab/compute/index.ts +0 -2
- package/prefab/database/dynamo/index.ts +0 -113
- package/prefab/database/index.ts +0 -3
- package/prefab/database/rds/handlers/start-cluster/handler.ts +0 -7
- package/prefab/database/rds/handlers/stop-cluster/handler.ts +0 -7
- package/prefab/database/rds/index.ts +0 -248
- package/prefab/database/timestream/index.ts +0 -2
- package/prefab/database/timestream/timestream-database.ts +0 -24
- package/prefab/database/timestream/timestream-table.ts +0 -76
- package/prefab/gateway/alb-public/index.ts +0 -124
- package/prefab/gateway/api-gateway/api-http.ts +0 -71
- package/prefab/gateway/api-gateway/api-rest.ts +0 -93
- package/prefab/gateway/api-gateway/index.ts +0 -2
- package/prefab/gateway/app-sync/index.ts +0 -117
- package/prefab/gateway/app-sync/resolver-aggregate.ts +0 -138
- package/prefab/gateway/app-sync/types.ts +0 -29
- package/prefab/index.ts +0 -10
- package/prefab/integration/event-bus/index.ts +0 -52
- package/prefab/integration/index.ts +0 -3
- package/prefab/integration/queue/index.ts +0 -94
- package/prefab/integration/topic/index.ts +0 -57
- package/prefab/networking/dns-domain-ref/index.ts +0 -32
- package/prefab/networking/dns-subdomain-certificate/index.ts +0 -30
- package/prefab/networking/dns-subdomain-hosted-zone/index.ts +0 -30
- package/prefab/networking/index.ts +0 -5
- package/prefab/networking/vpc/index.ts +0 -39
- package/prefab/networking/waf/index.ts +0 -49
- package/prefab/storage/bucket/asset-bucket.ts +0 -24
- package/prefab/storage/bucket/index.ts +0 -2
- package/prefab/storage/bucket/private-bucket.ts +0 -74
- package/prefab/storage/index.ts +0 -1
- package/prefab/utils/config/frontend-env-builder.ts +0 -30
- package/prefab/utils/config/index.ts +0 -3
- package/prefab/utils/config/parameter-secret.ts +0 -52
- package/prefab/utils/config/runtime-secret.ts +0 -48
- package/prefab/utils/deploy-pipeline/catalog/integrations/index.ts +0 -1
- package/prefab/utils/deploy-pipeline/catalog/integrations/slack.ts +0 -23
- package/prefab/utils/deploy-pipeline/entities/index.ts +0 -23
- package/prefab/utils/deploy-pipeline/handlers/send-to-slack/handler.ts +0 -32
- package/prefab/utils/deploy-pipeline/index.ts +0 -172
- package/prefab/utils/deploy-pipeline/platform/get-pipeline-detail.ts +0 -31
- package/prefab/utils/deploy-pipeline/platform/get-slack-payload.ts +0 -38
- package/prefab/utils/deploy-pipeline/platform/send-to-slack.ts +0 -16
- package/prefab/utils/duration.ts +0 -1
- package/prefab/utils/index.ts +0 -4
- package/prefab/utils/ses/index.ts +0 -134
- package/script/config-command/bootstrap.ts +0 -108
- package/script/config-command/deploy-spa.ts +0 -126
- package/script/config-command/deploy.ts +0 -50
- package/script/config-command/destroy.ts +0 -49
- package/script/config-command/env-ssr.ts +0 -85
- package/script/config-command/invalidation-ssr.ts +0 -88
- package/script/config-command/rds-migration.ts +0 -177
- package/script/config-command/rds-sync.ts +0 -108
- package/script/config-command/ssm-connect.ts +0 -129
- package/script/config-command/start-spa.ts +0 -93
- package/script/config-command/start-ssr.ts +0 -91
- package/script/config-command/synth.ts +0 -50
- package/script/index.ts +0 -86
- package/script/output-command/create-user.ts +0 -89
- package/script/output-command/gen-postman-env.ts +0 -75
- package/tsconfig.json +0 -26
- /package/{.dist/prefab/gateway/app-sync → common/helpers}/types.js +0 -0
- /package/{.dist/prefab/compute/fargate → prefab/compute/ecs}/index.d.ts +0 -0
- /package/{.dist/prefab/compute/fargate → prefab/compute/ecs}/index.js +0 -0
- /package/{.dist/prefab → prefab}/database/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/database/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/database/index.js +0 -0
- /package/{.dist/prefab → prefab}/database/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.d.ts +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.js +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/start-cluster/handler.js.map +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.d.ts +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.js +0 -0
- /package/{.dist/prefab → prefab}/database/rds/handlers/stop-cluster/handler.js.map +0 -0
- /package/{.dist/prefab → prefab}/database/timestream/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/database/timestream/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/database/timestream/index.js +0 -0
- /package/{.dist/prefab → prefab}/database/timestream/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/gateway/api-gateway/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/gateway/api-gateway/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/gateway/api-gateway/index.js +0 -0
- /package/{.dist/prefab → prefab}/gateway/api-gateway/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/integration/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/integration/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/integration/index.js +0 -0
- /package/{.dist/prefab → prefab}/integration/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/storage/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/storage/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/storage/index.js +0 -0
- /package/{.dist/prefab → prefab}/storage/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.js +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/slack.js +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/catalog/integrations/slack.js.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.d.ts +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.js +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/entities/index.js.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.d.ts +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.js +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/handlers/send-to-slack/handler.js.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.d.ts +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.d.ts.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.js +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-pipeline-detail.js.map +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-slack-payload.d.ts +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/get-slack-payload.js +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/send-to-slack.d.ts +0 -0
- /package/{.dist/prefab → prefab}/utils/deploy-pipeline/platform/send-to-slack.js +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.CdnAssetPrefab = void 0;
|
|
27
|
+
const awsCloudfront = __importStar(require("aws-cdk-lib/aws-cloudfront"));
|
|
28
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
29
|
+
const aws_cloudfront_origins_1 = require("aws-cdk-lib/aws-cloudfront-origins");
|
|
30
|
+
const aws_route53_1 = require("aws-cdk-lib/aws-route53");
|
|
31
|
+
const aws_route53_targets_1 = require("aws-cdk-lib/aws-route53-targets");
|
|
32
|
+
const aws_s3_1 = require("aws-cdk-lib/aws-s3");
|
|
33
|
+
const common_1 = require("../../../common");
|
|
34
|
+
const bucket_1 = require("../../storage/bucket");
|
|
35
|
+
class CdnAssetPrefab extends common_1.Prefab {
|
|
36
|
+
domains;
|
|
37
|
+
privateBucketPrefab;
|
|
38
|
+
distribution;
|
|
39
|
+
constructor(service, params, propsOverride) {
|
|
40
|
+
super(CdnAssetPrefab.name, service, params, propsOverride);
|
|
41
|
+
// Bucket where the web assets will be stored and config for reading from local folder
|
|
42
|
+
this.privateBucketPrefab = new bucket_1.BucketPrefab(service, {
|
|
43
|
+
name: params.name,
|
|
44
|
+
assetSourceOptions: params.assetSrc,
|
|
45
|
+
resourceProps: {
|
|
46
|
+
bucket: {
|
|
47
|
+
cors: [{ allowedMethods: [aws_s3_1.HttpMethods.GET, aws_s3_1.HttpMethods.POST], allowedOrigins: ['*'], allowedHeaders: ['*'] }],
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
...params.resourceProps?.privateBucketPrefab,
|
|
51
|
+
});
|
|
52
|
+
// Default Behavior
|
|
53
|
+
const defaultBehavior = {
|
|
54
|
+
compress: true,
|
|
55
|
+
origin: new aws_cloudfront_origins_1.S3Origin(this.privateBucketPrefab.bucket, {
|
|
56
|
+
originId: this.getResourceName('default-origin'),
|
|
57
|
+
}),
|
|
58
|
+
originRequestPolicy: new awsCloudfront.OriginRequestPolicy(this, this.getId('requestPolicy'), {
|
|
59
|
+
originRequestPolicyName: this.getResourceName('request-policy'),
|
|
60
|
+
headerBehavior: {
|
|
61
|
+
behavior: 'whitelist',
|
|
62
|
+
headers: ['Access-Control-Allow-Origin', 'Access-Control-Allow-Headers', 'Origin'],
|
|
63
|
+
},
|
|
64
|
+
}),
|
|
65
|
+
cachePolicy: awsCloudfront.CachePolicy.CACHING_OPTIMIZED,
|
|
66
|
+
cachedMethods: awsCloudfront.AllowedMethods.ALLOW_ALL,
|
|
67
|
+
allowedMethods: awsCloudfront.AllowedMethods.ALLOW_ALL,
|
|
68
|
+
viewerProtocolPolicy: awsCloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
|
|
69
|
+
};
|
|
70
|
+
// Domain Resolution
|
|
71
|
+
if (params.dnsOptions?.subdomain && params.dnsOptions?.customDomains) {
|
|
72
|
+
throw new Error('dnsOptions.subdomain cannot be used together with dnsOptions.customDomains');
|
|
73
|
+
}
|
|
74
|
+
this.domains = params.dnsOptions?.customDomains || [this.getDomainName(params.dnsOptions?.subdomain)];
|
|
75
|
+
// Distro
|
|
76
|
+
this.distribution = new awsCloudfront.Distribution(this, this.getId('distro'), {
|
|
77
|
+
enabled: true,
|
|
78
|
+
comment: this.getResourceName('distro'),
|
|
79
|
+
certificate: params.certificatePrefab.certificate,
|
|
80
|
+
domainNames: this.domains,
|
|
81
|
+
defaultBehavior: defaultBehavior,
|
|
82
|
+
...(service.props.envName !== 'prod' ? { priceClass: awsCloudfront.PriceClass.PRICE_CLASS_100 } : {}),
|
|
83
|
+
webAclId: params.waf?.webACL?.attrArn,
|
|
84
|
+
...params.resourceProps?.distribution,
|
|
85
|
+
});
|
|
86
|
+
if (!params.dnsOptions?.customDomains) {
|
|
87
|
+
this.domains.map((d) => {
|
|
88
|
+
if (params.dnsOptions?.hostedZonePrefab) {
|
|
89
|
+
new aws_route53_1.ARecord(service, this.getId(d.split('.')[0]), {
|
|
90
|
+
zone: params.dnsOptions.hostedZonePrefab.hostedZone,
|
|
91
|
+
target: aws_route53_1.RecordTarget.fromAlias(new aws_route53_targets_1.CloudFrontTarget(this.distribution)),
|
|
92
|
+
recordName: d,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
new aws_cdk_lib_1.CfnOutput(this, this.getId('Domain'), {
|
|
98
|
+
key: this.getId('Domain', { toPascalCase: true }),
|
|
99
|
+
exportName: this.getResourceName('domain'),
|
|
100
|
+
value: this.domains[0],
|
|
101
|
+
});
|
|
102
|
+
new aws_cdk_lib_1.CfnOutput(this, this.getId('BaseUrl'), {
|
|
103
|
+
key: this.getId('BaseUrl', { toPascalCase: true }),
|
|
104
|
+
exportName: this.getResourceName('base-url'),
|
|
105
|
+
value: `https://${this.domains[0]}/`,
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
exports.CdnAssetPrefab = CdnAssetPrefab;
|
|
110
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../prefab/cdn/assets/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../prefab/cdn/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC"}
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./api
|
|
18
|
-
__exportStar(require("./
|
|
17
|
+
__exportStar(require("./api"), exports);
|
|
18
|
+
__exportStar(require("./assets"), exports);
|
|
19
|
+
__exportStar(require("./web"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../prefab/cdn/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../prefab/cdn/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,wCAAsB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import * as awsCloudfront from 'aws-cdk-lib/aws-cloudfront';
|
|
2
|
+
import { BaseCustomConfigs, Prefab, PrefabPropsOverride, TakumiStack } from '../../../common';
|
|
3
|
+
import { CertificatePrefab, HostedZonePrefab, WafPrefab } from '../../networking';
|
|
4
|
+
import { BucketPrefab, BucketPrefabParams } from '../../storage/bucket';
|
|
5
|
+
import { FrontendDeploymentConfig, FrontendBuilderPrefab } from '../../utils';
|
|
6
|
+
export type WebCdnPrefabParams<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> = {
|
|
7
|
+
name: string;
|
|
8
|
+
certificatePrefab: CertificatePrefab<CustomConfigs>;
|
|
9
|
+
configGenerationPath?: string;
|
|
10
|
+
dnsOptions?: {
|
|
11
|
+
hostedZonePrefab?: HostedZonePrefab<CustomConfigs>;
|
|
12
|
+
wwwRedirectEnabled?: boolean;
|
|
13
|
+
subdomain?: string;
|
|
14
|
+
customDomains?: string[];
|
|
15
|
+
};
|
|
16
|
+
deploymentConfig?: FrontendDeploymentConfig;
|
|
17
|
+
waf?: WafPrefab;
|
|
18
|
+
resourceProps?: {
|
|
19
|
+
privateBucketPrefab?: Partial<BucketPrefabParams>;
|
|
20
|
+
distribution?: Partial<awsCloudfront.DistributionProps>;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export declare class WebCdnPrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> extends Prefab<WebCdnPrefabParams<CustomConfigs>, CustomConfigs> {
|
|
24
|
+
readonly url: string;
|
|
25
|
+
readonly domains: string[];
|
|
26
|
+
readonly privateBucketPrefab: BucketPrefab<CustomConfigs>;
|
|
27
|
+
readonly distribution: awsCloudfront.Distribution;
|
|
28
|
+
readonly frontendBuilderPrefab: FrontendBuilderPrefab<CustomConfigs>;
|
|
29
|
+
constructor(service: TakumiStack<CustomConfigs>, params: WebCdnPrefabParams<CustomConfigs>, propsOverride?: PrefabPropsOverride<CustomConfigs>);
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../prefab/cdn/web/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,aAAa,MAAM,4BAA4B,CAAC;AAO5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE9E,MAAM,MAAM,kBAAkB,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,IAAI;IAC5F,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACpD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE;QACX,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACnD,kBAAkB,CAAC,EAAE,OAAO,CAAC;QAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;IAC5C,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,aAAa,CAAC,EAAE;QACd,mBAAmB,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAClD,YAAY,CAAC,EAAE,OAAO,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC;KACzD,CAAC;CACH,CAAC;AAEF,qBAAa,YAAY,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,CAAE,SAAQ,MAAM,CACnG,kBAAkB,CAAC,aAAa,CAAC,EACjC,aAAa,CACd;IACC,SAAgB,GAAG,EAAE,MAAM,CAAC;IAC5B,SAAgB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClC,SAAgB,mBAAmB,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC;IACjE,SAAgB,YAAY,EAAE,aAAa,CAAC,YAAY,CAAC;IACzD,SAAgB,qBAAqB,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;gBAG1E,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,kBAAkB,CAAC,aAAa,CAAC,EACzC,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC;CA8GrD"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.WebCdnPrefab = void 0;
|
|
27
|
+
const awsCloudfront = __importStar(require("aws-cdk-lib/aws-cloudfront"));
|
|
28
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
29
|
+
const aws_cloudfront_origins_1 = require("aws-cdk-lib/aws-cloudfront-origins");
|
|
30
|
+
const aws_route53_1 = require("aws-cdk-lib/aws-route53");
|
|
31
|
+
const aws_route53_targets_1 = require("aws-cdk-lib/aws-route53-targets");
|
|
32
|
+
const aws_s3_1 = require("aws-cdk-lib/aws-s3");
|
|
33
|
+
const common_1 = require("../../../common");
|
|
34
|
+
const bucket_1 = require("../../storage/bucket");
|
|
35
|
+
const utils_1 = require("../../utils");
|
|
36
|
+
class WebCdnPrefab extends common_1.Prefab {
|
|
37
|
+
url;
|
|
38
|
+
domains;
|
|
39
|
+
privateBucketPrefab;
|
|
40
|
+
distribution;
|
|
41
|
+
frontendBuilderPrefab;
|
|
42
|
+
constructor(service, params, propsOverride) {
|
|
43
|
+
super(WebCdnPrefab.name, service, params, propsOverride);
|
|
44
|
+
// Bucket where the web assets will be stored
|
|
45
|
+
this.privateBucketPrefab = new bucket_1.BucketPrefab(service, {
|
|
46
|
+
name: params.name,
|
|
47
|
+
resourceProps: {
|
|
48
|
+
bucket: {
|
|
49
|
+
autoDeleteObjects: true,
|
|
50
|
+
removalPolicy: aws_cdk_lib_1.RemovalPolicy.DESTROY,
|
|
51
|
+
cors: [
|
|
52
|
+
{
|
|
53
|
+
allowedMethods: [aws_s3_1.HttpMethods.GET, aws_s3_1.HttpMethods.HEAD],
|
|
54
|
+
allowedOrigins: ['*'],
|
|
55
|
+
allowedHeaders: ['*'],
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
...params.resourceProps?.privateBucketPrefab,
|
|
61
|
+
});
|
|
62
|
+
// Default Behavior
|
|
63
|
+
const defaultBehavior = {
|
|
64
|
+
compress: true,
|
|
65
|
+
origin: new aws_cloudfront_origins_1.S3Origin(this.privateBucketPrefab.bucket, {
|
|
66
|
+
originId: this.getResourceName('default-origin'),
|
|
67
|
+
}),
|
|
68
|
+
originRequestPolicy: new awsCloudfront.OriginRequestPolicy(this, this.getId('RequestPolicy'), {
|
|
69
|
+
originRequestPolicyName: this.getResourceName('request-policy'),
|
|
70
|
+
headerBehavior: {
|
|
71
|
+
behavior: 'whitelist',
|
|
72
|
+
headers: ['Access-Control-Allow-Origin', 'Access-Control-Allow-Headers', 'Origin'],
|
|
73
|
+
},
|
|
74
|
+
}),
|
|
75
|
+
cachePolicy: awsCloudfront.CachePolicy.CACHING_OPTIMIZED,
|
|
76
|
+
cachedMethods: awsCloudfront.AllowedMethods.ALLOW_GET_HEAD_OPTIONS,
|
|
77
|
+
allowedMethods: awsCloudfront.AllowedMethods.ALLOW_GET_HEAD_OPTIONS,
|
|
78
|
+
viewerProtocolPolicy: awsCloudfront.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
|
|
79
|
+
};
|
|
80
|
+
// DNS Config
|
|
81
|
+
if (params.dnsOptions?.subdomain && params.dnsOptions?.customDomains) {
|
|
82
|
+
throw new Error('dnsOptions.subdomain cannot be used together with dnsOptions.customDomains');
|
|
83
|
+
}
|
|
84
|
+
this.domains = params.dnsOptions?.customDomains || [this.getDomainName(params.dnsOptions?.subdomain)];
|
|
85
|
+
if (params.dnsOptions?.wwwRedirectEnabled) {
|
|
86
|
+
if (params.dnsOptions?.subdomain)
|
|
87
|
+
throw new Error('wwwRedirectEnabled is only allowed for the root domain');
|
|
88
|
+
if (params.dnsOptions?.customDomains)
|
|
89
|
+
throw new Error('wwwRedirectEnabled without explicitDomains');
|
|
90
|
+
this.domains.push(this.getDomainName('wwww'));
|
|
91
|
+
}
|
|
92
|
+
this.distribution = new awsCloudfront.Distribution(this, this.getId('Distro'), {
|
|
93
|
+
enabled: true,
|
|
94
|
+
comment: this.getResourceName('distro'),
|
|
95
|
+
certificate: params.certificatePrefab.certificate,
|
|
96
|
+
domainNames: this.domains,
|
|
97
|
+
defaultRootObject: 'index.html',
|
|
98
|
+
errorResponses: [
|
|
99
|
+
{
|
|
100
|
+
httpStatus: 403,
|
|
101
|
+
responseHttpStatus: 200,
|
|
102
|
+
ttl: aws_cdk_lib_1.Duration.seconds(86400),
|
|
103
|
+
responsePagePath: '/index.html',
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
httpStatus: 404,
|
|
107
|
+
responseHttpStatus: 200,
|
|
108
|
+
responsePagePath: '/index.html',
|
|
109
|
+
ttl: aws_cdk_lib_1.Duration.seconds(86400),
|
|
110
|
+
},
|
|
111
|
+
],
|
|
112
|
+
defaultBehavior: defaultBehavior,
|
|
113
|
+
...(service.props.envName !== 'prod' ? { priceClass: awsCloudfront.PriceClass.PRICE_CLASS_100 } : {}),
|
|
114
|
+
webAclId: params.waf?.webACL?.attrArn,
|
|
115
|
+
...params.resourceProps?.distribution,
|
|
116
|
+
});
|
|
117
|
+
if (!params.dnsOptions?.customDomains) {
|
|
118
|
+
this.domains.map((d) => {
|
|
119
|
+
if (params.dnsOptions?.hostedZonePrefab) {
|
|
120
|
+
new aws_route53_1.ARecord(service, this.getId(d.split('.')[0]), {
|
|
121
|
+
zone: params.dnsOptions.hostedZonePrefab.hostedZone,
|
|
122
|
+
target: aws_route53_1.RecordTarget.fromAlias(new aws_route53_targets_1.CloudFrontTarget(this.distribution)),
|
|
123
|
+
recordName: d,
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
new aws_cdk_lib_1.CfnOutput(this, this.getId('Domain'), {
|
|
129
|
+
key: this.getId('Domain', { toPascalCase: true }),
|
|
130
|
+
exportName: this.getResourceName('domain'),
|
|
131
|
+
value: this.domains[0],
|
|
132
|
+
});
|
|
133
|
+
new aws_cdk_lib_1.CfnOutput(this, this.getId('BaseUrl'), {
|
|
134
|
+
key: this.getId('BaseUrl', { toPascalCase: true }),
|
|
135
|
+
exportName: this.getResourceName('base-url'),
|
|
136
|
+
value: `https://${this.domains[0]}/`,
|
|
137
|
+
});
|
|
138
|
+
this.url = `https://${this.domains[0]}/`;
|
|
139
|
+
this.frontendBuilderPrefab = new utils_1.FrontendBuilderPrefab(service, {
|
|
140
|
+
name: params.name,
|
|
141
|
+
deploymentConfig: params.deploymentConfig,
|
|
142
|
+
bucketName: this.privateBucketPrefab.bucket.bucketName,
|
|
143
|
+
distributionId: this.distribution.distributionId,
|
|
144
|
+
domain: this.domains[0],
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
exports.WebCdnPrefab = WebCdnPrefab;
|
|
149
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../prefab/cdn/web/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ClusterProps, ICluster } from 'aws-cdk-lib/aws-ecs';
|
|
2
|
+
import { BaseCustomConfigs, Prefab, PrefabPropsOverride, TakumiStack } from '../../../common';
|
|
3
|
+
import { VpcPrefab } from '../../networking';
|
|
4
|
+
export type ECSClusterPrefabParams = {
|
|
5
|
+
name: string;
|
|
6
|
+
vpcPrefab: VpcPrefab;
|
|
7
|
+
resourceProps?: {
|
|
8
|
+
cluster?: Partial<ClusterProps>;
|
|
9
|
+
};
|
|
10
|
+
existingResource?: {
|
|
11
|
+
clusterArn?: string;
|
|
12
|
+
cluster?: ICluster;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export declare class ECSClusterPrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> extends Prefab<ECSClusterPrefabParams, CustomConfigs> {
|
|
16
|
+
readonly cluster: ICluster;
|
|
17
|
+
constructor(service: TakumiStack<CustomConfigs>, params: ECSClusterPrefabParams, propsOverride?: PrefabPropsOverride<CustomConfigs>);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=cluster.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../../../prefab/compute/ecs/cluster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,YAAY,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,SAAS,CAAC;IACrB,aAAa,CAAC,EAAE;QACd,OAAO,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;KACjC,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,QAAQ,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,qBAAa,gBAAgB,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,CAAE,SAAQ,MAAM,CACvG,sBAAsB,EACtB,aAAa,CACd;IACC,SAAgB,OAAO,EAAE,QAAQ,CAAC;gBAGhC,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,sBAAsB,EAC9B,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC;CAarD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ECSClusterPrefab = void 0;
|
|
4
|
+
const aws_ecs_1 = require("aws-cdk-lib/aws-ecs");
|
|
5
|
+
const common_1 = require("../../../common");
|
|
6
|
+
class ECSClusterPrefab extends common_1.Prefab {
|
|
7
|
+
cluster;
|
|
8
|
+
constructor(service, params, propsOverride) {
|
|
9
|
+
super(ECSClusterPrefab.name, service, params, propsOverride);
|
|
10
|
+
this.cluster =
|
|
11
|
+
params.existingResource?.cluster || params.existingResource?.clusterArn
|
|
12
|
+
? aws_ecs_1.Cluster.fromClusterArn(this, this.getId('cluster'), params.existingResource.clusterArn)
|
|
13
|
+
: new aws_ecs_1.Cluster(this, this.getId('Cluster'), {
|
|
14
|
+
clusterName: this.getResourceName('cluster'),
|
|
15
|
+
vpc: params.vpcPrefab.vpc,
|
|
16
|
+
...params.resourceProps?.cluster,
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.ECSClusterPrefab = ECSClusterPrefab;
|
|
21
|
+
//# sourceMappingURL=cluster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cluster.js","sourceRoot":"","sources":["../../../../prefab/compute/ecs/cluster.ts"],"names":[],"mappings":";;;AAAA,iDAAsE;AAEtE,4CAA8F;AAe9F,MAAa,gBAA8E,SAAQ,eAGlG;IACiB,OAAO,CAAW;IAElC,YACE,OAAmC,EACnC,MAA8B,EAC9B,aAAkD;QAElD,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QAE7D,IAAI,CAAC,OAAO;YACV,MAAM,CAAC,gBAAgB,EAAE,OAAO,IAAI,MAAM,CAAC,gBAAgB,EAAE,UAAU;gBACrE,CAAC,CAAC,iBAAO,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,gBAAgB,CAAC,UAAW,CAAC;gBAC1F,CAAC,CAAC,IAAI,iBAAO,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;oBACvC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;oBAC5C,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,GAAG;oBACzB,GAAG,MAAM,CAAC,aAAa,EAAE,OAAO;iBACjC,CAAC,CAAC;IACX,CAAC;CACF;AAtBD,4CAsBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../prefab/compute/ecs/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../prefab/compute/ecs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,4CAA0B"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { IRepository } from 'aws-cdk-lib/aws-ecr';
|
|
2
|
+
import { TaskDefinition, FargateService, TaskDefinitionProps, ContainerDefinitionOptions, FargateServiceProps, ContainerDefinition } from 'aws-cdk-lib/aws-ecs';
|
|
3
|
+
import { BaseCustomConfigs, Prefab, PrefabPropsOverride, TakumiStack } from '../../../common';
|
|
4
|
+
import { PublicAlbPrefab, TargetGroupConfig } from '../../gateway';
|
|
5
|
+
import { ECSClusterPrefab } from './cluster';
|
|
6
|
+
export type ECSServicePrefabParams = {
|
|
7
|
+
name: string;
|
|
8
|
+
ecsClusterPrefab: ECSClusterPrefab;
|
|
9
|
+
albConfig?: {
|
|
10
|
+
albPrefab: PublicAlbPrefab;
|
|
11
|
+
targetGroupConfig: TargetGroupConfig;
|
|
12
|
+
};
|
|
13
|
+
basePath: string;
|
|
14
|
+
autoScalingConfig: {
|
|
15
|
+
taskAutoScaleMin: number;
|
|
16
|
+
taskAutoScaleMax: number;
|
|
17
|
+
taskAutoScalePercent: number;
|
|
18
|
+
};
|
|
19
|
+
containerImage: {
|
|
20
|
+
dockerBuildFolder?: string;
|
|
21
|
+
ECR?: {
|
|
22
|
+
repositoryName: string;
|
|
23
|
+
tag?: string;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
resourceProps?: {
|
|
27
|
+
taskDefinition?: Partial<TaskDefinitionProps>;
|
|
28
|
+
container?: Partial<ContainerDefinitionOptions>;
|
|
29
|
+
fargateService?: Partial<FargateServiceProps>;
|
|
30
|
+
};
|
|
31
|
+
existingResource?: {
|
|
32
|
+
taskDefinition?: TaskDefinition;
|
|
33
|
+
container?: ContainerDefinition;
|
|
34
|
+
fargateService?: FargateService;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
export declare class ECSServicePrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs> extends Prefab<ECSServicePrefabParams, CustomConfigs> {
|
|
38
|
+
readonly repository?: IRepository;
|
|
39
|
+
readonly taskDefinition: TaskDefinition;
|
|
40
|
+
readonly fargateService: FargateService;
|
|
41
|
+
readonly container: ContainerDefinition;
|
|
42
|
+
constructor(service: TakumiStack<CustomConfigs>, params: ECSServicePrefabParams, propsOverride?: PrefabPropsOverride<CustomConfigs>);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../../prefab/compute/ecs/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAc,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EACL,cAAc,EAKd,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,SAAS,CAAC,EAAE;QACV,SAAS,EAAE,eAAe,CAAC;QAC3B,iBAAiB,EAAE,iBAAiB,CAAC;KACtC,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,oBAAoB,EAAE,MAAM,CAAC;KAC9B,CAAC;IACF,cAAc,EAAE;QACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAC3B,GAAG,CAAC,EAAE;YACJ,cAAc,EAAE,MAAM,CAAC;YACvB,GAAG,CAAC,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC;IACF,aAAa,CAAC,EAAE;QACd,cAAc,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC9C,SAAS,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAChD,cAAc,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;KAC/C,CAAC;IACF,gBAAgB,CAAC,EAAE;QACjB,cAAc,CAAC,EAAE,cAAc,CAAC;QAChC,SAAS,CAAC,EAAE,mBAAmB,CAAC;QAChC,cAAc,CAAC,EAAE,cAAc,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,qBAAa,gBAAgB,CAAC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,CAAE,SAAQ,MAAM,CACvG,sBAAsB,EACtB,aAAa,CACd;IACC,SAAgB,UAAU,CAAC,EAAE,WAAW,CAAC;IACzC,SAAgB,cAAc,EAAE,cAAc,CAAC;IAC/C,SAAgB,cAAc,EAAE,cAAc,CAAC;IAC/C,SAAgB,SAAS,EAAE,mBAAmB,CAAC;gBAG7C,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,sBAAsB,EAC9B,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC;CAiGrD"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ECSServicePrefab = void 0;
|
|
4
|
+
const aws_ecr_1 = require("aws-cdk-lib/aws-ecr");
|
|
5
|
+
const aws_ecs_1 = require("aws-cdk-lib/aws-ecs");
|
|
6
|
+
const aws_ecs_2 = require("aws-cdk-lib/aws-ecs");
|
|
7
|
+
const aws_iam_1 = require("aws-cdk-lib/aws-iam");
|
|
8
|
+
const aws_logs_1 = require("aws-cdk-lib/aws-logs");
|
|
9
|
+
const common_1 = require("../../../common");
|
|
10
|
+
class ECSServicePrefab extends common_1.Prefab {
|
|
11
|
+
repository;
|
|
12
|
+
taskDefinition;
|
|
13
|
+
fargateService;
|
|
14
|
+
container;
|
|
15
|
+
constructor(service, params, propsOverride) {
|
|
16
|
+
super(ECSServicePrefab.name, service, params, propsOverride);
|
|
17
|
+
if (!params.containerImage.dockerBuildFolder && !params.containerImage.ECR) {
|
|
18
|
+
throw new Error('Either "dockerBuildFolder" or "containerImage.ECR" must be specified in the ECSServicePrefabParams.');
|
|
19
|
+
}
|
|
20
|
+
if (params.containerImage.ECR) {
|
|
21
|
+
this.repository = aws_ecr_1.Repository.fromRepositoryName(this, this.getId('repo'), params.containerImage.ECR.repositoryName);
|
|
22
|
+
}
|
|
23
|
+
const containerImage = this.repository
|
|
24
|
+
? aws_ecs_1.ContainerImage.fromEcrRepository(this.repository, params.containerImage.ECR?.tag || 'latest')
|
|
25
|
+
: aws_ecs_1.ContainerImage.fromAsset(params.containerImage.dockerBuildFolder);
|
|
26
|
+
this.taskDefinition =
|
|
27
|
+
params.existingResource?.taskDefinition ||
|
|
28
|
+
new aws_ecs_1.TaskDefinition(this, this.getId('TaskDefinition'), {
|
|
29
|
+
family: this.getResourceName('task-definition'),
|
|
30
|
+
compatibility: aws_ecs_1.Compatibility.FARGATE,
|
|
31
|
+
networkMode: aws_ecs_1.NetworkMode.AWS_VPC,
|
|
32
|
+
cpu: '256',
|
|
33
|
+
memoryMiB: '512',
|
|
34
|
+
...params.resourceProps?.taskDefinition,
|
|
35
|
+
});
|
|
36
|
+
this.container =
|
|
37
|
+
params.existingResource?.container ||
|
|
38
|
+
this.taskDefinition.addContainer(this.getId('Container'), {
|
|
39
|
+
containerName: this.getResourceName('container'),
|
|
40
|
+
image: containerImage,
|
|
41
|
+
logging: aws_ecs_1.LogDriver.awsLogs({
|
|
42
|
+
streamPrefix: this.getResourceName('prefix'),
|
|
43
|
+
logGroup: new aws_logs_1.LogGroup(this, this.getResourceName('LogGroup'), {
|
|
44
|
+
logGroupName: this.getResourceName('log-group'),
|
|
45
|
+
}),
|
|
46
|
+
}),
|
|
47
|
+
...params.resourceProps?.container,
|
|
48
|
+
});
|
|
49
|
+
if (params.albConfig?.targetGroupConfig.basePath) {
|
|
50
|
+
this.container.addEnvironment('BASE_PATH', params.albConfig?.targetGroupConfig.basePath);
|
|
51
|
+
}
|
|
52
|
+
if (params.albConfig?.targetGroupConfig.mappingPort) {
|
|
53
|
+
this.container.addPortMappings({ containerPort: params.albConfig.targetGroupConfig.mappingPort });
|
|
54
|
+
}
|
|
55
|
+
this.taskDefinition.addToTaskRolePolicy(new aws_iam_1.PolicyStatement({
|
|
56
|
+
sid: this.getResourceName('task-definition-policy'),
|
|
57
|
+
effect: aws_iam_1.Effect.ALLOW,
|
|
58
|
+
actions: [
|
|
59
|
+
'ssmmessages:CreateControlChannel',
|
|
60
|
+
'ssmmessages:CreateDataChannel',
|
|
61
|
+
'ssmmessages:OpenControlChannel',
|
|
62
|
+
'ssmmessages:OpenDataChannel',
|
|
63
|
+
],
|
|
64
|
+
resources: ['*'],
|
|
65
|
+
}));
|
|
66
|
+
if (this.repository)
|
|
67
|
+
this.repository.grantPull(this.taskDefinition.taskRole);
|
|
68
|
+
// FARGATE SERVICE
|
|
69
|
+
this.fargateService =
|
|
70
|
+
params.existingResource?.fargateService ||
|
|
71
|
+
new aws_ecs_1.FargateService(this, this.getId('FargateService'), {
|
|
72
|
+
serviceName: this.getResourceName('fargate-service'),
|
|
73
|
+
platformVersion: aws_ecs_2.FargatePlatformVersion.LATEST,
|
|
74
|
+
cluster: params.ecsClusterPrefab.cluster,
|
|
75
|
+
taskDefinition: this.taskDefinition,
|
|
76
|
+
securityGroups: params.albConfig?.albPrefab ? [params.albConfig.albPrefab.getAlbToClusterSG()] : undefined,
|
|
77
|
+
assignPublicIp: true,
|
|
78
|
+
circuitBreaker: { rollback: true },
|
|
79
|
+
capacityProviderStrategies: [{ capacityProvider: 'FARGATE' }],
|
|
80
|
+
...params.resourceProps?.fargateService,
|
|
81
|
+
});
|
|
82
|
+
// AUTOSCALING
|
|
83
|
+
const scalableTarget = this.fargateService.autoScaleTaskCount({
|
|
84
|
+
minCapacity: params.autoScalingConfig.taskAutoScaleMin,
|
|
85
|
+
maxCapacity: params.autoScalingConfig.taskAutoScaleMax,
|
|
86
|
+
});
|
|
87
|
+
scalableTarget.scaleOnMemoryUtilization(this.getId('ScaleUpMem'), {
|
|
88
|
+
targetUtilizationPercent: params.autoScalingConfig.taskAutoScalePercent,
|
|
89
|
+
});
|
|
90
|
+
scalableTarget.scaleOnCpuUtilization(this.getId('ScaleUpCPU'), {
|
|
91
|
+
targetUtilizationPercent: params.autoScalingConfig.taskAutoScalePercent,
|
|
92
|
+
});
|
|
93
|
+
// CONNECT TO ALB
|
|
94
|
+
params.albConfig?.albPrefab.appendTargetGroup(this.fargateService, this.container.containerName, params.albConfig.targetGroupConfig);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
exports.ECSServicePrefab = ECSServicePrefab;
|
|
98
|
+
//# sourceMappingURL=service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../../prefab/compute/ecs/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ApiDefinition, ApiInterface } from '@takumi-stack/sdk';
|
|
2
|
+
import { BaseCustomConfigs, Prefab, PrefabPropsOverride, TakumiStack } from '../../../../common';
|
|
3
|
+
import { ApiHttpPrefab, ApiRestPrefab } from '../../../gateway';
|
|
4
|
+
import { FunctionConfigs, FunctionPrefab } from '../base';
|
|
5
|
+
export type ApiFunctionHandler = FunctionConfigs & {
|
|
6
|
+
name?: string;
|
|
7
|
+
apiDefinition: ApiDefinition<ApiInterface>;
|
|
8
|
+
entryRootDirectory?: string;
|
|
9
|
+
cacheMaxAge?: number;
|
|
10
|
+
};
|
|
11
|
+
export type ApiFunctionsPrefabParams<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs, HandlerName extends string = string> = FunctionConfigs & {
|
|
12
|
+
name: string;
|
|
13
|
+
entryRootDirectory: string;
|
|
14
|
+
handlers: Record<HandlerName, ApiFunctionHandler>;
|
|
15
|
+
apiPrefab: ApiRestPrefab<CustomConfigs> | ApiHttpPrefab<CustomConfigs>;
|
|
16
|
+
};
|
|
17
|
+
export declare class ApiFunctionsPrefab<CustomConfigs extends BaseCustomConfigs = BaseCustomConfigs, HandlerName extends string = string> extends Prefab<ApiFunctionsPrefabParams<CustomConfigs, HandlerName>, CustomConfigs> {
|
|
18
|
+
readonly handlers: Record<HandlerName, FunctionPrefab<CustomConfigs>>;
|
|
19
|
+
constructor(service: TakumiStack<CustomConfigs>, params: ApiFunctionsPrefabParams<CustomConfigs, HandlerName>, propsOverride?: PrefabPropsOverride<CustomConfigs>, parentName?: string);
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../prefab/compute/function/api/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG;IACjD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAC3C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,wBAAwB,CAClC,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,EAC3D,WAAW,SAAS,MAAM,GAAG,MAAM,IACjC,eAAe,GAAG;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;IAClD,SAAS,EAAE,aAAa,CAAC,aAAa,CAAC,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;CACxE,CAAC;AAEF,qBAAa,kBAAkB,CAC7B,aAAa,SAAS,iBAAiB,GAAG,iBAAiB,EAC3D,WAAW,SAAS,MAAM,GAAG,MAAM,CACnC,SAAQ,MAAM,CAAC,wBAAwB,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,aAAa,CAAC;IACnF,SAAgB,QAAQ,EAAE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC;gBAG3E,OAAO,EAAE,WAAW,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE,wBAAwB,CAAC,aAAa,EAAE,WAAW,CAAC,EAC5D,aAAa,CAAC,EAAE,mBAAmB,CAAC,aAAa,CAAC,EAClD,UAAU,CAAC,EAAE,MAAM;CA4CtB"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ApiFunctionsPrefab = void 0;
|
|
4
|
+
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
|
+
const common_1 = require("../../../../common");
|
|
6
|
+
const base_1 = require("../base");
|
|
7
|
+
class ApiFunctionsPrefab extends common_1.Prefab {
|
|
8
|
+
handlers;
|
|
9
|
+
constructor(service, params, propsOverride, parentName) {
|
|
10
|
+
super(ApiFunctionsPrefab.name, service, params, propsOverride, parentName);
|
|
11
|
+
this.handlers = Object.keys(params.handlers).reduce((acc, handlerName) => {
|
|
12
|
+
const currentHandler = params.handlers[handlerName];
|
|
13
|
+
const currentName = currentHandler.name || handlerName;
|
|
14
|
+
const functionPrefab = new base_1.FunctionPrefab(service, {
|
|
15
|
+
...params,
|
|
16
|
+
name: currentName,
|
|
17
|
+
entryRootDirectory: params.entryRootDirectory,
|
|
18
|
+
...currentHandler,
|
|
19
|
+
appendEnvironment: {
|
|
20
|
+
TAKUMI_FUNCTION_TYPE: 'API',
|
|
21
|
+
TAKUMI_CACHE_MAX_AGE: currentHandler.cacheMaxAge?.toString() || this.props.apiDefaultConfigs?.cacheMaxAge?.toString(),
|
|
22
|
+
...currentHandler.appendEnvironment,
|
|
23
|
+
},
|
|
24
|
+
}, {}, this.name);
|
|
25
|
+
const currentLimit = this.props.apiDefaultConfigs?.maxTimeout;
|
|
26
|
+
if (functionPrefab.lambdaFunction.timeout.toSeconds() > aws_cdk_lib_1.Duration.seconds(currentLimit).toSeconds()) {
|
|
27
|
+
throw new Error(`Lambda timeout must be less than current limit: ${currentLimit} seconds for ApiFunctionPrefab. You can override this value in the config apiDefaultConfigs.maxTimeout if you have asked for increased timeout for your account `);
|
|
28
|
+
}
|
|
29
|
+
params.apiPrefab.addPath({
|
|
30
|
+
apiFunctionsPrefab: this,
|
|
31
|
+
apiDefinition: currentHandler.apiDefinition,
|
|
32
|
+
lambdaFunction: functionPrefab.lambdaFunction,
|
|
33
|
+
});
|
|
34
|
+
acc[handlerName] = functionPrefab;
|
|
35
|
+
return acc;
|
|
36
|
+
}, {});
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.ApiFunctionsPrefab = ApiFunctionsPrefab;
|
|
40
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../prefab/compute/function/api/index.ts"],"names":[],"mappings":";;;AAAA,6CAAuC;AAIvC,+CAAiG;AAEjG,kCAA0D;AAmB1D,MAAa,kBAGX,SAAQ,eAA2E;IACnE,QAAQ,CAAqD;IAE7E,YACE,OAAmC,EACnC,MAA4D,EAC5D,aAAkD,EAClD,UAAmB;QAEnB,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QAE3E,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CACjD,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE;YACnB,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,WAA0B,CAAC,CAAC;YACnE,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,IAAI,WAAW,CAAC;YACvD,MAAM,cAAc,GAAG,IAAI,qBAAc,CACvC,OAAO,EACP;gBACE,GAAG,MAAM;gBACT,IAAI,EAAE,WAAW;gBACjB,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;gBAC7C,GAAG,cAAc;gBACjB,iBAAiB,EAAE;oBACjB,oBAAoB,EAAE,KAAK;oBAC3B,oBAAoB,EAClB,cAAc,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,WAAW,EAAE,QAAQ,EAAE;oBACjG,GAAG,cAAc,CAAC,iBAAiB;iBACpC;aACF,EACD,EAAE,EACF,IAAI,CAAC,IAAI,CACV,CAAC;YACF,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,UAAW,CAAC;YAC/D,IAAI,cAAc,CAAC,cAAc,CAAC,OAAQ,CAAC,SAAS,EAAE,GAAG,sBAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;gBACpG,MAAM,IAAI,KAAK,CACb,mDAAmD,YAAY,kKAAkK,CAClO,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC;gBACvB,kBAAkB,EAAE,IAAI;gBACxB,aAAa,EAAE,cAAc,CAAC,aAAa;gBAC3C,cAAc,EAAE,cAAc,CAAC,cAAc;aAC9C,CAAC,CAAC;YAEH,GAAG,CAAC,WAA0B,CAAC,GAAG,cAAc,CAAC;YACjD,OAAO,GAAG,CAAC;QACb,CAAC,EACD,EAAwD,CACzD,CAAC;IACJ,CAAC;CACF;AAtDD,gDAsDC"}
|