@quadnix/octo-aws-cdk 0.2.0 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -21
- package/dist/anchors/aws-cloudfront/aws-cloudfront.anchor.d.ts +12 -0
- package/dist/anchors/{aws-ecs/aws-ecs-server.anchor.js → aws-cloudfront/aws-cloudfront.anchor.js} +5 -5
- package/dist/anchors/aws-cloudfront/aws-cloudfront.anchor.js.map +1 -0
- package/dist/anchors/aws-cloudfront/aws-cloudfront.anchor.schema.d.ts +26 -0
- package/dist/anchors/{aws-iam/aws-iam-role.anchor.schema.js → aws-cloudfront/aws-cloudfront.anchor.schema.js} +11 -7
- package/dist/anchors/aws-cloudfront/aws-cloudfront.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-deployment/aws-deployment.anchor.d.ts +12 -0
- package/dist/anchors/{aws-ecs/aws-ecs-task-definition.anchor.js → aws-deployment/aws-deployment.anchor.js} +5 -5
- package/dist/anchors/aws-deployment/aws-deployment.anchor.js.map +1 -0
- package/dist/anchors/aws-deployment/aws-deployment.anchor.schema.d.ts +100 -0
- package/dist/anchors/aws-deployment/aws-deployment.anchor.schema.js +149 -0
- package/dist/anchors/aws-deployment/aws-deployment.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-dynamodb/aws-dynamodb.anchor.schema.d.ts +4 -0
- package/dist/anchors/aws-dynamodb/aws-dynamodb.anchor.schema.js +7 -1
- package/dist/anchors/aws-dynamodb/aws-dynamodb.anchor.schema.js.map +1 -1
- package/dist/anchors/aws-environment/aws-serverless-environment.anchor.d.ts +12 -0
- package/dist/anchors/{aws-s3-storage-service/aws-s3-storage-service-directory.anchor.js → aws-environment/aws-serverless-environment.anchor.js} +5 -5
- package/dist/anchors/aws-environment/aws-serverless-environment.anchor.js.map +1 -0
- package/dist/anchors/aws-environment/aws-serverless-environment.anchor.schema.d.ts +31 -0
- package/dist/anchors/aws-environment/aws-serverless-environment.anchor.schema.js +58 -0
- package/dist/anchors/aws-environment/aws-serverless-environment.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-lambda/aws-lambda-execution.anchor.d.ts +12 -0
- package/dist/anchors/aws-lambda/aws-lambda-execution.anchor.js +27 -0
- package/dist/anchors/aws-lambda/aws-lambda-execution.anchor.js.map +1 -0
- package/dist/anchors/aws-lambda/aws-lambda-execution.anchor.schema.d.ts +28 -0
- package/dist/anchors/aws-lambda/aws-lambda-execution.anchor.schema.js +54 -0
- package/dist/anchors/aws-lambda/aws-lambda-execution.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-lambda/aws-lambda-function.anchor.d.ts +12 -0
- package/dist/anchors/aws-lambda/aws-lambda-function.anchor.js +27 -0
- package/dist/anchors/aws-lambda/aws-lambda-function.anchor.js.map +1 -0
- package/dist/anchors/aws-lambda/aws-lambda-function.anchor.schema.d.ts +28 -0
- package/dist/anchors/aws-lambda/aws-lambda-function.anchor.schema.js +47 -0
- package/dist/anchors/aws-lambda/aws-lambda-function.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-region/aws-serverless-region.anchor.d.ts +12 -0
- package/dist/anchors/aws-region/aws-serverless-region.anchor.js +27 -0
- package/dist/anchors/aws-region/aws-serverless-region.anchor.js.map +1 -0
- package/dist/anchors/aws-region/aws-serverless-region.anchor.schema.d.ts +30 -0
- package/dist/anchors/aws-region/aws-serverless-region.anchor.schema.js +49 -0
- package/dist/anchors/aws-region/aws-serverless-region.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-access-prefix.anchor.d.ts +12 -0
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-access-prefix.anchor.js +27 -0
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-access-prefix.anchor.js.map +1 -0
- package/dist/anchors/aws-s3-storage-service/{aws-s3-storage-service-directory.anchor.schema.d.ts → aws-s3-storage-service-access-prefix.anchor.schema.d.ts} +5 -4
- package/dist/anchors/aws-s3-storage-service/{aws-s3-storage-service-directory.anchor.schema.js → aws-s3-storage-service-access-prefix.anchor.schema.js} +7 -6
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-access-prefix.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service.anchor.schema.d.ts +3 -0
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service.anchor.schema.js +3 -0
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service.anchor.schema.js.map +1 -1
- package/dist/anchors/aws-security-group/aws-security-group.anchor.schema.d.ts +3 -2
- package/dist/anchors/aws-security-group/aws-security-group.anchor.schema.js +2 -1
- package/dist/anchors/aws-security-group/aws-security-group.anchor.schema.js.map +1 -1
- package/dist/anchors/aws-server/aws-server.anchor.d.ts +12 -0
- package/dist/anchors/{aws-iam/aws-iam-role.anchor.js → aws-server/aws-server.anchor.js} +5 -5
- package/dist/anchors/aws-server/aws-server.anchor.js.map +1 -0
- package/dist/anchors/aws-server/aws-server.anchor.schema.d.ts +50 -0
- package/dist/anchors/aws-server/aws-server.anchor.schema.js +51 -0
- package/dist/anchors/aws-server/aws-server.anchor.schema.js.map +1 -0
- package/dist/anchors/aws-subnet/aws-serverless-subnet.anchor.d.ts +12 -0
- package/dist/anchors/aws-subnet/aws-serverless-subnet.anchor.js +27 -0
- package/dist/anchors/aws-subnet/aws-serverless-subnet.anchor.js.map +1 -0
- package/dist/anchors/aws-subnet/aws-serverless-subnet.anchor.schema.d.ts +28 -0
- package/dist/anchors/{aws-ecs/aws-ecs-server.anchor.schema.js → aws-subnet/aws-serverless-subnet.anchor.schema.js} +14 -12
- package/dist/anchors/aws-subnet/aws-serverless-subnet.anchor.schema.js.map +1 -0
- package/dist/modules/account/aws-credentials-account/aws-credentials-account.module.d.ts +2 -1
- package/dist/modules/account/aws-credentials-account/aws-credentials-account.module.js +2 -1
- package/dist/modules/account/aws-credentials-account/aws-credentials-account.module.js.map +1 -1
- package/dist/modules/account/aws-ini-account/aws-ini-account.module.d.ts +2 -1
- package/dist/modules/account/aws-ini-account/aws-ini-account.module.js +2 -1
- package/dist/modules/account/aws-ini-account/aws-ini-account.module.js.map +1 -1
- package/dist/modules/account/aws-localstack-account/aws-localstack-account.module.d.ts +2 -1
- package/dist/modules/account/aws-localstack-account/aws-localstack-account.module.js +2 -1
- package/dist/modules/account/aws-localstack-account/aws-localstack-account.module.js.map +1 -1
- package/dist/modules/account/aws-moto-account/aws-moto-account.module.d.ts +2 -1
- package/dist/modules/account/aws-moto-account/aws-moto-account.module.js +2 -1
- package/dist/modules/account/aws-moto-account/aws-moto-account.module.js.map +1 -1
- package/dist/modules/app/simple-app/index.schema.d.ts +1 -1
- package/dist/modules/app/simple-app/index.schema.js +1 -1
- package/dist/modules/deployment/aws-deployment/aws-deployment.module.d.ts +45 -0
- package/dist/modules/deployment/aws-deployment/aws-deployment.module.js +96 -0
- package/dist/modules/deployment/aws-deployment/aws-deployment.module.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/index.d.ts +1 -0
- package/dist/modules/deployment/aws-deployment/index.js +2 -0
- package/dist/modules/deployment/aws-deployment/index.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/index.schema.d.ts +60 -0
- package/dist/modules/deployment/aws-deployment/index.schema.js +160 -0
- package/dist/modules/deployment/aws-deployment/index.schema.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/models/deployment/actions/add-aws-deployment.model.action.d.ts +27 -0
- package/dist/modules/deployment/{aws-ecs-deployment/models/deployment/actions/add-aws-ecs-deployment.model.action.js → aws-deployment/models/deployment/actions/add-aws-deployment.model.action.js} +16 -14
- package/dist/modules/deployment/aws-deployment/models/deployment/actions/add-aws-deployment.model.action.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/models/deployment/aws-deployment.model.d.ts +11 -0
- package/dist/modules/deployment/{aws-ecs-deployment/models/deployment/aws-ecs-deployment.model.js → aws-deployment/models/deployment/aws-deployment.model.js} +9 -9
- package/dist/modules/deployment/aws-deployment/models/deployment/aws-deployment.model.js.map +1 -0
- package/dist/modules/deployment/{aws-ecs-deployment/models/deployment/aws-ecs-deployment.schema.d.ts → aws-deployment/models/deployment/aws-deployment.schema.d.ts} +1 -1
- package/dist/modules/deployment/aws-deployment/models/deployment/aws-deployment.schema.js +7 -0
- package/dist/modules/deployment/aws-deployment/models/deployment/aws-deployment.schema.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/models/deployment/index.d.ts +2 -0
- package/dist/modules/deployment/aws-deployment/models/deployment/index.js +3 -0
- package/dist/modules/deployment/aws-deployment/models/deployment/index.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/actions/add-aws-deployment-image.overlay.action.d.ts +28 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/actions/add-aws-deployment-image.overlay.action.js +53 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/actions/add-aws-deployment-image.overlay.action.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/aws-deployment-image.overlay.d.ts +22 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/aws-deployment-image.overlay.js +37 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/aws-deployment-image.overlay.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/aws-deployment-image.schema.d.ts +12 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/aws-deployment-image.schema.js +32 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/aws-deployment-image.schema.js.map +1 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/index.d.ts +2 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/index.js +3 -0
- package/dist/modules/deployment/aws-deployment/overlays/aws-deployment-image/index.js.map +1 -0
- package/dist/modules/environment/aws-ecs-environment/aws-ecs-environment.module.d.ts +2 -1
- package/dist/modules/environment/aws-ecs-environment/aws-ecs-environment.module.js +2 -1
- package/dist/modules/environment/aws-ecs-environment/aws-ecs-environment.module.js.map +1 -1
- package/dist/modules/environment/aws-serverless-environment/aws-serverless-environment.module.d.ts +33 -0
- package/dist/modules/environment/aws-serverless-environment/aws-serverless-environment.module.js +60 -0
- package/dist/modules/environment/aws-serverless-environment/aws-serverless-environment.module.js.map +1 -0
- package/dist/modules/environment/aws-serverless-environment/index.d.ts +1 -0
- package/dist/modules/environment/aws-serverless-environment/index.js +2 -0
- package/dist/modules/environment/aws-serverless-environment/index.js.map +1 -0
- package/dist/modules/environment/aws-serverless-environment/index.schema.d.ts +27 -0
- package/dist/modules/environment/aws-serverless-environment/index.schema.js +73 -0
- package/dist/modules/environment/aws-serverless-environment/index.schema.js.map +1 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/actions/add-aws-serverless-environment.model.action.d.ts +28 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/actions/add-aws-serverless-environment.model.action.js +53 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/actions/add-aws-serverless-environment.model.action.js.map +1 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/aws-serverless-environment.model.d.ts +11 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/aws-serverless-environment.model.js +29 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/aws-serverless-environment.model.js.map +1 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/aws-serverless-environment.schema.d.ts +6 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/aws-serverless-environment.schema.js +7 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/aws-serverless-environment.schema.js.map +1 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/index.d.ts +2 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/index.js +3 -0
- package/dist/modules/environment/aws-serverless-environment/models/environment/index.js.map +1 -0
- package/dist/modules/execution/aws-ecs-execution/aws-ecs-execution.module.d.ts +7 -6
- package/dist/modules/execution/aws-ecs-execution/aws-ecs-execution.module.js +138 -63
- package/dist/modules/execution/aws-ecs-execution/aws-ecs-execution.module.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/index.schema.d.ts +6 -6
- package/dist/modules/execution/aws-ecs-execution/index.schema.js +6 -6
- package/dist/modules/execution/aws-ecs-execution/index.schema.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/models/execution/aws-ecs-execution.model.js +5 -0
- package/dist/modules/execution/aws-ecs-execution/models/execution/aws-ecs-execution.model.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/actions/add-aws-ecs-execution.overlay.action.js +131 -40
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/actions/add-aws-ecs-execution.overlay.action.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/aws-ecs-execution.overlay.d.ts +9 -5
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/aws-ecs-execution.overlay.js +4 -0
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/aws-ecs-execution.overlay.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/aws-ecs-execution.schema.d.ts +20 -0
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/aws-ecs-execution.schema.js +5 -0
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution/aws-ecs-execution.schema.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution-server-security-group/actions/add-aws-ecs-execution-server-security-group.overlay.action.js +32 -20
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution-server-security-group/actions/add-aws-ecs-execution-server-security-group.overlay.action.js.map +1 -1
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution-server-security-group/aws-ecs-execution-server-security-group.overlay.d.ts +10 -2
- package/dist/modules/execution/aws-ecs-execution/overlays/aws-ecs-execution-server-security-group/aws-ecs-execution-server-security-group.overlay.js.map +1 -1
- package/dist/modules/execution/aws-lambda-execution/aws-lambda-execution.module.d.ts +57 -0
- package/dist/modules/execution/aws-lambda-execution/aws-lambda-execution.module.js +177 -0
- package/dist/modules/execution/aws-lambda-execution/aws-lambda-execution.module.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/index.d.ts +1 -0
- package/dist/modules/execution/aws-lambda-execution/index.js +2 -0
- package/dist/modules/execution/aws-lambda-execution/index.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/index.schema.d.ts +56 -0
- package/dist/modules/execution/aws-lambda-execution/index.schema.js +154 -0
- package/dist/modules/execution/aws-lambda-execution/index.schema.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/actions/add-aws-lambda-execution.model.action.d.ts +25 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/actions/add-aws-lambda-execution.model.action.js +51 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/actions/add-aws-lambda-execution.model.action.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/aws-lambda-execution.model.d.ts +28 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/aws-lambda-execution.model.js +85 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/aws-lambda-execution.model.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/aws-lambda-execution.schema.d.ts +7 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/aws-lambda-execution.schema.js +24 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/aws-lambda-execution.schema.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/index.d.ts +2 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/index.js +3 -0
- package/dist/modules/execution/aws-lambda-execution/models/execution/index.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/actions/add-aws-lambda-execution.overlay.action.d.ts +26 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/actions/add-aws-lambda-execution.overlay.action.js +172 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/actions/add-aws-lambda-execution.overlay.action.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/aws-lambda-execution.overlay.d.ts +38 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/aws-lambda-execution.overlay.js +37 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/aws-lambda-execution.overlay.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/aws-lambda-execution.schema.d.ts +41 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/aws-lambda-execution.schema.js +43 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/aws-lambda-execution.schema.js.map +1 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/index.d.ts +2 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/index.js +3 -0
- package/dist/modules/execution/aws-lambda-execution/overlays/aws-lambda-execution/index.js.map +1 -0
- package/dist/modules/filesystem/aws-efs-filesystem/aws-efs-filesystem.module.d.ts +2 -1
- package/dist/modules/filesystem/aws-efs-filesystem/aws-efs-filesystem.module.js +2 -1
- package/dist/modules/filesystem/aws-efs-filesystem/aws-efs-filesystem.module.js.map +1 -1
- package/dist/modules/filesystem/aws-efs-filesystem/models/filesystem/actions/add-aws-efs-filesystem.model.action.js +1 -2
- package/dist/modules/filesystem/aws-efs-filesystem/models/filesystem/actions/add-aws-efs-filesystem.model.action.js.map +1 -1
- package/dist/modules/image/aws-ecr-image/aws-ecr-image.module.d.ts +10 -5
- package/dist/modules/image/aws-ecr-image/aws-ecr-image.module.js +31 -13
- package/dist/modules/image/aws-ecr-image/aws-ecr-image.module.js.map +1 -1
- package/dist/modules/image/aws-ecr-image/index.schema.d.ts +1 -1
- package/dist/modules/image/aws-ecr-image/index.schema.js +2 -3
- package/dist/modules/image/aws-ecr-image/index.schema.js.map +1 -1
- package/dist/modules/image/aws-ecr-image/models/image/actions/add-aws-ecr-image-region.model.action.d.ts +28 -0
- package/dist/modules/image/aws-ecr-image/models/image/actions/add-aws-ecr-image-region.model.action.js +53 -0
- package/dist/modules/image/aws-ecr-image/models/image/actions/add-aws-ecr-image-region.model.action.js.map +1 -0
- package/dist/modules/image/aws-ecr-image/models/image/actions/add-aws-ecr-image.model.action.js +1 -1
- package/dist/modules/image/aws-ecr-image/models/image/actions/add-aws-ecr-image.model.action.js.map +1 -1
- package/dist/modules/image/aws-ecr-image/models/image/index.d.ts +1 -0
- package/dist/modules/image/aws-ecr-image/models/image/index.js +1 -0
- package/dist/modules/image/aws-ecr-image/models/image/index.js.map +1 -1
- package/dist/modules/image/aws-ecr-image-tag/aws-ecr-image-tag.module.d.ts +5 -1
- package/dist/modules/image/aws-ecr-image-tag/aws-ecr-image-tag.module.js +12 -3
- package/dist/modules/image/aws-ecr-image-tag/aws-ecr-image-tag.module.js.map +1 -1
- package/dist/modules/image/aws-ecr-image-tag/index.schema.d.ts +18 -0
- package/dist/modules/image/aws-ecr-image-tag/index.schema.js +42 -0
- package/dist/modules/image/aws-ecr-image-tag/index.schema.js.map +1 -1
- package/dist/modules/image/aws-ecr-image-tag/overlays/aws-ecr-image-tag/actions/add-aws-ecr-image-tag.overlay.action.js +3 -0
- package/dist/modules/image/aws-ecr-image-tag/overlays/aws-ecr-image-tag/actions/add-aws-ecr-image-tag.overlay.action.js.map +1 -1
- package/dist/modules/image/aws-ecr-image-tag/overlays/aws-ecr-image-tag/aws-ecr-image-tag.schema.d.ts +4 -0
- package/dist/modules/image/aws-ecr-image-tag/overlays/aws-ecr-image-tag/aws-ecr-image-tag.schema.js +1 -0
- package/dist/modules/image/aws-ecr-image-tag/overlays/aws-ecr-image-tag/aws-ecr-image-tag.schema.js.map +1 -1
- package/dist/modules/region/aws-multi-az-region/aws-multi-az-region.module.d.ts +3 -1
- package/dist/modules/region/aws-multi-az-region/aws-multi-az-region.module.js +3 -5
- package/dist/modules/region/aws-multi-az-region/aws-multi-az-region.module.js.map +1 -1
- package/dist/modules/region/aws-multi-az-region/models/region/aws-multi-az-region.model.d.ts +0 -4
- package/dist/modules/region/aws-multi-az-region/models/region/aws-multi-az-region.model.js +2 -11
- package/dist/modules/region/aws-multi-az-region/models/region/aws-multi-az-region.model.js.map +1 -1
- package/dist/modules/region/aws-serverless-region/aws-serverless-region.module.d.ts +35 -0
- package/dist/modules/region/aws-serverless-region/aws-serverless-region.module.js +58 -0
- package/dist/modules/region/aws-serverless-region/aws-serverless-region.module.js.map +1 -0
- package/dist/modules/region/aws-serverless-region/index.d.ts +1 -0
- package/dist/modules/region/aws-serverless-region/index.js +2 -0
- package/dist/modules/region/aws-serverless-region/index.js.map +1 -0
- package/dist/modules/region/aws-serverless-region/index.schema.d.ts +27 -0
- package/dist/modules/region/aws-serverless-region/index.schema.js +64 -0
- package/dist/modules/region/aws-serverless-region/index.schema.js.map +1 -0
- package/dist/modules/region/aws-serverless-region/models/region/actions/add-aws-serverless-region.model.action.d.ts +28 -0
- package/dist/modules/region/aws-serverless-region/models/region/actions/add-aws-serverless-region.model.action.js +53 -0
- package/dist/modules/region/aws-serverless-region/models/region/actions/add-aws-serverless-region.model.action.js.map +1 -0
- package/dist/modules/region/aws-serverless-region/models/region/aws-serverless-region.model.d.ts +30 -0
- package/dist/modules/region/aws-serverless-region/models/region/aws-serverless-region.model.js +56 -0
- package/dist/modules/region/aws-serverless-region/models/region/aws-serverless-region.model.js.map +1 -0
- package/dist/modules/region/aws-serverless-region/models/region/aws-serverless-region.schema.d.ts +7 -0
- package/dist/modules/region/aws-serverless-region/models/region/aws-serverless-region.schema.js +24 -0
- package/dist/modules/region/aws-serverless-region/models/region/aws-serverless-region.schema.js.map +1 -0
- package/dist/modules/region/aws-serverless-region/models/region/index.d.ts +2 -0
- package/dist/modules/region/aws-serverless-region/models/region/index.js +3 -0
- package/dist/modules/region/aws-serverless-region/models/region/index.js.map +1 -0
- package/dist/modules/region/aws-single-az-region/aws-single-az-region.module.d.ts +3 -1
- package/dist/modules/region/aws-single-az-region/aws-single-az-region.module.js +3 -5
- package/dist/modules/region/aws-single-az-region/aws-single-az-region.module.js.map +1 -1
- package/dist/modules/region/aws-single-az-region/models/region/aws-single-az-region.model.d.ts +0 -4
- package/dist/modules/region/aws-single-az-region/models/region/aws-single-az-region.model.js +3 -12
- package/dist/modules/region/aws-single-az-region/models/region/aws-single-az-region.model.js.map +1 -1
- package/dist/modules/server/aws-server/aws-server.module.d.ts +72 -0
- package/dist/modules/server/aws-server/aws-server.module.js +182 -0
- package/dist/modules/server/aws-server/aws-server.module.js.map +1 -0
- package/dist/modules/server/aws-server/index.d.ts +1 -0
- package/dist/modules/server/aws-server/index.js +2 -0
- package/dist/modules/server/aws-server/index.js.map +1 -0
- package/dist/modules/server/aws-server/index.schema.d.ts +123 -0
- package/dist/modules/server/aws-server/index.schema.js +246 -0
- package/dist/modules/server/aws-server/index.schema.js.map +1 -0
- package/dist/modules/server/aws-server/models/server/actions/add-aws-server.model.action.d.ts +27 -0
- package/dist/modules/server/aws-server/models/server/actions/add-aws-server.model.action.js +53 -0
- package/dist/modules/server/aws-server/models/server/actions/add-aws-server.model.action.js.map +1 -0
- package/dist/modules/server/aws-server/models/server/aws-server.model.d.ts +11 -0
- package/dist/modules/server/{aws-ecs-server/models/server/aws-ecs-server.model.js → aws-server/models/server/aws-server.model.js} +9 -9
- package/dist/modules/server/aws-server/models/server/aws-server.model.js.map +1 -0
- package/dist/modules/server/{aws-ecs-server/models/server/aws-ecs-server.schema.d.ts → aws-server/models/server/aws-server.schema.d.ts} +1 -1
- package/dist/modules/server/aws-server/models/server/aws-server.schema.js +7 -0
- package/dist/modules/server/aws-server/models/server/aws-server.schema.js.map +1 -0
- package/dist/modules/server/aws-server/models/server/index.d.ts +2 -0
- package/dist/modules/server/aws-server/models/server/index.js +3 -0
- package/dist/modules/server/aws-server/models/server/index.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/actions/add-aws-server-dynamodb-access.overlay.action.d.ts +28 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/actions/add-aws-server-dynamodb-access.overlay.action.js +53 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/actions/add-aws-server-dynamodb-access.overlay.action.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/aws-server-dynamodb-access.overlay.d.ts +22 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/aws-server-dynamodb-access.overlay.js +37 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/aws-server-dynamodb-access.overlay.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/aws-server-dynamodb-access.schema.d.ts +13 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/aws-server-dynamodb-access.schema.js +33 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/aws-server-dynamodb-access.schema.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/index.d.ts +2 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/index.js +3 -0
- package/dist/modules/server/aws-server/overlays/aws-server-dynamodb-access/index.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/actions/add-aws-server-s3-access.overlay.action.d.ts +28 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/actions/add-aws-server-s3-access.overlay.action.js +53 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/actions/add-aws-server-s3-access.overlay.action.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/aws-server-s3-access.overlay.d.ts +22 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/aws-server-s3-access.overlay.js +37 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/aws-server-s3-access.overlay.js.map +1 -0
- package/dist/modules/server/{aws-ecs-server/overlays/aws-ecs-server-s3-access/aws-ecs-server-s3-access.schema.d.ts → aws-server/overlays/aws-server-s3-access/aws-server-s3-access.schema.d.ts} +3 -4
- package/dist/modules/server/{aws-ecs-server/overlays/aws-ecs-server-s3-access/aws-ecs-server-s3-access.schema.js → aws-server/overlays/aws-server-s3-access/aws-server-s3-access.schema.js} +5 -6
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/aws-server-s3-access.schema.js.map +1 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/index.d.ts +2 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/index.js +3 -0
- package/dist/modules/server/aws-server/overlays/aws-server-s3-access/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/aws-cloudfront-invalidation-service.module.d.ts +36 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/aws-cloudfront-invalidation-service.module.js +66 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/aws-cloudfront-invalidation-service.module.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/index.d.ts +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/index.js +2 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/index.schema.d.ts +23 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/index.schema.js +65 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/index.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/actions/add-aws-cloudfront-invalidation.overlay.action.d.ts +26 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/actions/add-aws-cloudfront-invalidation.overlay.action.js +68 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/actions/add-aws-cloudfront-invalidation.overlay.action.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/aws-cloudfront-invalidation.overlay.d.ts +22 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/aws-cloudfront-invalidation.overlay.js +38 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/aws-cloudfront-invalidation.overlay.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/aws-cloudfront-invalidation.schema.d.ts +12 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/aws-cloudfront-invalidation.schema.js +32 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/aws-cloudfront-invalidation.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/index.d.ts +2 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/index.js +3 -0
- package/dist/modules/service/aws-cloudfront-invalidation-service/overlays/aws-cloudfront-invalidation/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/aws-cloudfront-service.module.d.ts +76 -0
- package/dist/modules/service/aws-cloudfront-service/aws-cloudfront-service.module.js +192 -0
- package/dist/modules/service/aws-cloudfront-service/aws-cloudfront-service.module.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/index.d.ts +1 -0
- package/dist/modules/service/aws-cloudfront-service/index.js +2 -0
- package/dist/modules/service/aws-cloudfront-service/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/index.schema.d.ts +170 -0
- package/dist/modules/service/aws-cloudfront-service/index.schema.js +396 -0
- package/dist/modules/service/aws-cloudfront-service/index.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/actions/add-aws-cloudfront-service.model.action.d.ts +26 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/actions/add-aws-cloudfront-service.model.action.js +137 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/actions/add-aws-cloudfront-service.model.action.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/aws-cloudfront-service.model.d.ts +20 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/aws-cloudfront-service.model.js +50 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/aws-cloudfront-service.model.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/aws-cloudfront-service.schema.d.ts +7 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/aws-cloudfront-service.schema.js +24 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/aws-cloudfront-service.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/index.d.ts +2 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/index.js +3 -0
- package/dist/modules/service/aws-cloudfront-service/models/service/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/actions/add-aws-cloudfront-alb-origin.overlay.action.d.ts +26 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/actions/add-aws-cloudfront-alb-origin.overlay.action.js +68 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/actions/add-aws-cloudfront-alb-origin.overlay.action.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/aws-cloudfront-alb-origin.overlay.d.ts +21 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/aws-cloudfront-alb-origin.overlay.js +36 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/aws-cloudfront-alb-origin.overlay.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/aws-cloudfront-alb-origin.schema.d.ts +9 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/aws-cloudfront-alb-origin.schema.js +11 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/aws-cloudfront-alb-origin.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/index.d.ts +2 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/index.js +3 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-alb-origin/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/actions/add-aws-cloudfront-lambda-origin.overlay.action.d.ts +26 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/actions/add-aws-cloudfront-lambda-origin.overlay.action.js +73 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/actions/add-aws-cloudfront-lambda-origin.overlay.action.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/aws-cloudfront-lambda-origin.overlay.d.ts +21 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/aws-cloudfront-lambda-origin.overlay.js +36 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/aws-cloudfront-lambda-origin.overlay.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/aws-cloudfront-lambda-origin.schema.d.ts +9 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/aws-cloudfront-lambda-origin.schema.js +11 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/aws-cloudfront-lambda-origin.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/index.d.ts +2 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/index.js +3 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-lambda-origin/index.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/actions/add-aws-cloudfront-s3-origin.overlay.action.d.ts +26 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/actions/add-aws-cloudfront-s3-origin.overlay.action.js +80 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/actions/add-aws-cloudfront-s3-origin.overlay.action.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/aws-cloudfront-s3-origin.overlay.d.ts +20 -0
- package/dist/modules/{server/aws-ecs-server/overlays/aws-ecs-server-s3-access/aws-ecs-server-s3-access.overlay.js → service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/aws-cloudfront-s3-origin.overlay.js} +10 -8
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/aws-cloudfront-s3-origin.overlay.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/aws-cloudfront-s3-origin.schema.d.ts +9 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/aws-cloudfront-s3-origin.schema.js +11 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/aws-cloudfront-s3-origin.schema.js.map +1 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/index.d.ts +2 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/index.js +3 -0
- package/dist/modules/service/aws-cloudfront-service/overlays/aws-cloudfront-s3-origin/index.js.map +1 -0
- package/dist/modules/service/aws-dynamodb-global-service/aws-dynamodb-global-service.module.d.ts +9 -7
- package/dist/modules/service/aws-dynamodb-global-service/aws-dynamodb-global-service.module.js +32 -11
- package/dist/modules/service/aws-dynamodb-global-service/aws-dynamodb-global-service.module.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-global-service/index.schema.d.ts +3 -2
- package/dist/modules/service/aws-dynamodb-global-service/index.schema.js +3 -2
- package/dist/modules/service/aws-dynamodb-global-service/index.schema.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-global-service/models/service/actions/add-aws-dynamodb-global-service-replica-region.model.action.d.ts +29 -0
- package/dist/modules/service/aws-dynamodb-global-service/models/service/actions/add-aws-dynamodb-global-service-replica-region.model.action.js +54 -0
- package/dist/modules/service/aws-dynamodb-global-service/models/service/actions/add-aws-dynamodb-global-service-replica-region.model.action.js.map +1 -0
- package/dist/modules/service/aws-dynamodb-global-service/models/service/actions/add-aws-dynamodb-global-service.model.action.js +12 -3
- package/dist/modules/service/aws-dynamodb-global-service/models/service/actions/add-aws-dynamodb-global-service.model.action.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-global-service/models/service/aws-dynamodb-global-service.model.d.ts +7 -3
- package/dist/modules/service/aws-dynamodb-global-service/models/service/aws-dynamodb-global-service.model.js +14 -7
- package/dist/modules/service/aws-dynamodb-global-service/models/service/aws-dynamodb-global-service.model.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-global-service/models/service/index.d.ts +1 -0
- package/dist/modules/service/aws-dynamodb-global-service/models/service/index.js +1 -0
- package/dist/modules/service/aws-dynamodb-global-service/models/service/index.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-service/aws-dynamodb-service.module.d.ts +5 -4
- package/dist/modules/service/aws-dynamodb-service/aws-dynamodb-service.module.js +17 -12
- package/dist/modules/service/aws-dynamodb-service/aws-dynamodb-service.module.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-service/index.schema.d.ts +1 -2
- package/dist/modules/service/aws-dynamodb-service/index.schema.js +2 -4
- package/dist/modules/service/aws-dynamodb-service/index.schema.js.map +1 -1
- package/dist/modules/service/aws-dynamodb-service/models/service/aws-dynamodb-service.model.d.ts +3 -3
- package/dist/modules/service/aws-dynamodb-service/models/service/aws-dynamodb-service.model.js +8 -7
- package/dist/modules/service/aws-dynamodb-service/models/service/aws-dynamodb-service.model.js.map +1 -1
- package/dist/modules/service/aws-ecs-alb-service/aws-ecs-alb-service.module.d.ts +20 -10
- package/dist/modules/service/aws-ecs-alb-service/aws-ecs-alb-service.module.js +23 -17
- package/dist/modules/service/aws-ecs-alb-service/aws-ecs-alb-service.module.js.map +1 -1
- package/dist/modules/service/aws-ecs-alb-service/models/service/actions/add-aws-ecs-alb-service.model.action.js +2 -2
- package/dist/modules/service/aws-ecs-alb-service/models/service/actions/add-aws-ecs-alb-service.model.action.js.map +1 -1
- package/dist/modules/service/aws-ecs-alb-service/models/service/aws-ecs-alb-service.model.d.ts +1 -5
- package/dist/modules/service/aws-ecs-alb-service/models/service/aws-ecs-alb-service.model.js +4 -22
- package/dist/modules/service/aws-ecs-alb-service/models/service/aws-ecs-alb-service.model.js.map +1 -1
- package/dist/modules/service/aws-ecs-alb-service/models/service/aws-ecs-alb-service.schema.d.ts +1 -2
- package/dist/modules/service/aws-ecs-alb-service/models/service/aws-ecs-alb-service.schema.js +0 -1
- package/dist/modules/service/aws-ecs-alb-service/models/service/aws-ecs-alb-service.schema.js.map +1 -1
- package/dist/modules/service/aws-ecs-alb-service/overlays/aws-ecs-alb-service/actions/add-aws-ecs-alb-service.overlay.action.js +7 -8
- package/dist/modules/service/aws-ecs-alb-service/overlays/aws-ecs-alb-service/actions/add-aws-ecs-alb-service.overlay.action.js.map +1 -1
- package/dist/modules/service/aws-s3-static-website-service/aws-s3-static-website-service.module.d.ts +9 -14
- package/dist/modules/service/aws-s3-static-website-service/aws-s3-static-website-service.module.js +19 -24
- package/dist/modules/service/aws-s3-static-website-service/aws-s3-static-website-service.module.js.map +1 -1
- package/dist/modules/service/aws-s3-static-website-service/index.schema.d.ts +5 -68
- package/dist/modules/service/aws-s3-static-website-service/index.schema.js +20 -127
- package/dist/modules/service/aws-s3-static-website-service/index.schema.js.map +1 -1
- package/dist/modules/service/aws-s3-static-website-service/models/service/actions/add-aws-s3-static-website-service.model.action.js +1 -83
- package/dist/modules/service/aws-s3-static-website-service/models/service/actions/add-aws-s3-static-website-service.model.action.js.map +1 -1
- package/dist/modules/service/aws-s3-static-website-service/models/service/actions/update-aws-s3-static-website-service-source-paths.model.action.d.ts +2 -1
- package/dist/modules/service/aws-s3-static-website-service/models/service/actions/update-aws-s3-static-website-service-source-paths.model.action.js +0 -15
- package/dist/modules/service/aws-s3-static-website-service/models/service/actions/update-aws-s3-static-website-service-source-paths.model.action.js.map +1 -1
- package/dist/modules/service/aws-s3-static-website-service/models/service/aws-s3-static-website-service.model.d.ts +6 -24
- package/dist/modules/service/aws-s3-static-website-service/models/service/aws-s3-static-website-service.model.js +11 -89
- package/dist/modules/service/aws-s3-static-website-service/models/service/aws-s3-static-website-service.model.js.map +1 -1
- package/dist/modules/service/aws-s3-storage-service/aws-s3-storage-service.module.d.ts +19 -8
- package/dist/modules/service/aws-s3-storage-service/aws-s3-storage-service.module.js +44 -20
- package/dist/modules/service/aws-s3-storage-service/aws-s3-storage-service.module.js.map +1 -1
- package/dist/modules/service/aws-s3-storage-service/index.schema.d.ts +53 -7
- package/dist/modules/service/aws-s3-storage-service/index.schema.js +126 -11
- package/dist/modules/service/aws-s3-storage-service/index.schema.js.map +1 -1
- package/dist/modules/service/aws-s3-storage-service/models/service/actions/add-aws-s3-storage-service.model.action.js +4 -0
- package/dist/modules/service/aws-s3-storage-service/models/service/actions/add-aws-s3-storage-service.model.action.js.map +1 -1
- package/dist/modules/service/aws-s3-storage-service/models/service/actions/update-aws-s3-storage-service-source-paths.model.action.d.ts +27 -0
- package/dist/modules/service/aws-s3-storage-service/models/service/actions/update-aws-s3-storage-service-source-paths.model.action.js +56 -0
- package/dist/modules/service/aws-s3-storage-service/models/service/actions/update-aws-s3-storage-service-source-paths.model.action.js.map +1 -0
- package/dist/modules/service/aws-s3-storage-service/models/service/aws-s3-storage-service.model.d.ts +26 -8
- package/dist/modules/service/aws-s3-storage-service/models/service/aws-s3-storage-service.model.js +56 -20
- package/dist/modules/service/aws-s3-storage-service/models/service/aws-s3-storage-service.model.js.map +1 -1
- package/dist/modules/service/aws-s3-storage-service/models/service/aws-s3-storage-service.schema.d.ts +13 -3
- package/dist/modules/service/aws-s3-storage-service/models/service/aws-s3-storage-service.schema.js +19 -3
- package/dist/modules/service/aws-s3-storage-service/models/service/aws-s3-storage-service.schema.js.map +1 -1
- package/dist/modules/service/aws-s3-storage-service/models/service/index.d.ts +1 -0
- package/dist/modules/service/aws-s3-storage-service/models/service/index.js +1 -0
- package/dist/modules/service/aws-s3-storage-service/models/service/index.js.map +1 -1
- package/dist/modules/subnet/aws-serverless-subnet/aws-serverless-subnet.module.d.ts +31 -0
- package/dist/modules/subnet/aws-serverless-subnet/aws-serverless-subnet.module.js +55 -0
- package/dist/modules/subnet/aws-serverless-subnet/aws-serverless-subnet.module.js.map +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/index.d.ts +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/index.js +2 -0
- package/dist/modules/subnet/aws-serverless-subnet/index.js.map +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/index.schema.d.ts +17 -0
- package/dist/modules/subnet/aws-serverless-subnet/index.schema.js +46 -0
- package/dist/modules/subnet/aws-serverless-subnet/index.schema.js.map +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/actions/add-aws-serverless-subnet.model.action.d.ts +28 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/actions/add-aws-serverless-subnet.model.action.js +53 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/actions/add-aws-serverless-subnet.model.action.js.map +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/aws-serverless-subnet.model.d.ts +11 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/aws-serverless-subnet.model.js +26 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/aws-serverless-subnet.model.js.map +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/aws-serverless-subnet.schema.d.ts +6 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/aws-serverless-subnet.schema.js +7 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/aws-serverless-subnet.schema.js.map +1 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/index.d.ts +2 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/index.js +3 -0
- package/dist/modules/subnet/aws-serverless-subnet/models/subnet/index.js.map +1 -0
- package/dist/modules/subnet/aws-simple-subnet/aws-simple-subnet.module.d.ts +4 -3
- package/dist/modules/subnet/aws-simple-subnet/aws-simple-subnet.module.js +7 -4
- package/dist/modules/subnet/aws-simple-subnet/aws-simple-subnet.module.js.map +1 -1
- package/dist/modules/subnet/aws-simple-subnet/models/subnet/actions/add-aws-simple-subnet.model.action.js +9 -9
- package/dist/modules/subnet/aws-simple-subnet/models/subnet/actions/add-aws-simple-subnet.model.action.js.map +1 -1
- package/dist/modules/subnet/aws-simple-subnet/overlays/aws-simple-subnet-local-filesystem-mount/actions/add-aws-simple-subnet-local-filesystem-mount.overlay.action.js +11 -9
- package/dist/modules/subnet/aws-simple-subnet/overlays/aws-simple-subnet-local-filesystem-mount/actions/add-aws-simple-subnet-local-filesystem-mount.overlay.action.js.map +1 -1
- package/dist/modules/subnet/aws-simple-subnet/overlays/aws-simple-subnet-local-filesystem-mount/aws-simple-subnet-local-filesystem-mount.overlay.d.ts +1 -0
- package/dist/modules/subnet/aws-simple-subnet/overlays/aws-simple-subnet-local-filesystem-mount/aws-simple-subnet-local-filesystem-mount.overlay.js.map +1 -1
- package/dist/resources/alb/alb.resource.js +3 -1
- package/dist/resources/alb/alb.resource.js.map +1 -1
- package/dist/resources/alb-listener/index.schema.d.ts +2 -2
- package/dist/resources/alb-listener/index.schema.js +2 -2
- package/dist/resources/alb-target-group/alb-target-group.resource.js +3 -1
- package/dist/resources/alb-target-group/alb-target-group.resource.js.map +1 -1
- package/dist/resources/cloudfront-distribution/cloudfront-behavior.schema.d.ts +136 -0
- package/dist/resources/cloudfront-distribution/cloudfront-behavior.schema.js +215 -0
- package/dist/resources/cloudfront-distribution/cloudfront-behavior.schema.js.map +1 -0
- package/dist/resources/cloudfront-distribution/cloudfront-distribution.resource.d.ts +48 -16
- package/dist/resources/cloudfront-distribution/cloudfront-distribution.resource.js +176 -96
- package/dist/resources/cloudfront-distribution/cloudfront-distribution.resource.js.map +1 -1
- package/dist/resources/cloudfront-distribution/cloudfront-origin.schema.d.ts +93 -0
- package/dist/resources/cloudfront-distribution/cloudfront-origin.schema.js +136 -0
- package/dist/resources/cloudfront-distribution/cloudfront-origin.schema.js.map +1 -0
- package/dist/resources/cloudfront-distribution/cloudfront-policy.schema.d.ts +361 -0
- package/dist/resources/cloudfront-distribution/cloudfront-policy.schema.js +467 -0
- package/dist/resources/cloudfront-distribution/cloudfront-policy.schema.js.map +1 -0
- package/dist/resources/cloudfront-distribution/cloudfront-response.schema.d.ts +29 -0
- package/dist/resources/cloudfront-distribution/cloudfront-response.schema.js +58 -0
- package/dist/resources/cloudfront-distribution/cloudfront-response.schema.js.map +1 -0
- package/dist/resources/cloudfront-distribution/index.schema.d.ts +50 -422
- package/dist/resources/cloudfront-distribution/index.schema.js +81 -618
- package/dist/resources/cloudfront-distribution/index.schema.js.map +1 -1
- package/dist/resources/cloudfront-invalidation/actions/add-cloudfront-invalidation.resource.action.js +1 -1
- package/dist/resources/cloudfront-invalidation/actions/add-cloudfront-invalidation.resource.action.js.map +1 -1
- package/dist/resources/cloudfront-invalidation/actions/update-cloudfront-invalidation.resource.action.js +1 -1
- package/dist/resources/cloudfront-invalidation/actions/update-cloudfront-invalidation.resource.action.js.map +1 -1
- package/dist/resources/cloudfront-invalidation/cloudfront-invalidation.resource.d.ts +6 -2
- package/dist/resources/cloudfront-invalidation/cloudfront-invalidation.resource.js +3 -0
- package/dist/resources/cloudfront-invalidation/cloudfront-invalidation.resource.js.map +1 -1
- package/dist/resources/cloudfront-invalidation/index.schema.d.ts +5 -2
- package/dist/resources/cloudfront-invalidation/index.schema.js +5 -2
- package/dist/resources/cloudfront-invalidation/index.schema.js.map +1 -1
- package/dist/resources/dynamodb/dynamodb.resource.js +16 -4
- package/dist/resources/dynamodb/dynamodb.resource.js.map +1 -1
- package/dist/resources/dynamodb-global/dynamodb-global.resource.js +1 -1
- package/dist/resources/dynamodb-global/dynamodb-global.resource.js.map +1 -1
- package/dist/resources/ecr/ecr-image.resource.js +4 -1
- package/dist/resources/ecr/ecr-image.resource.js.map +1 -1
- package/dist/resources/ecr-image-tag/actions/add-ecr-image-tag.resource.action.d.ts +1 -1
- package/dist/resources/ecr-image-tag/actions/add-ecr-image-tag.resource.action.js +15 -5
- package/dist/resources/ecr-image-tag/actions/add-ecr-image-tag.resource.action.js.map +1 -1
- package/dist/resources/ecr-image-tag/actions/delete-ecr-image-tag.resource.action.js +1 -1
- package/dist/resources/ecr-image-tag/actions/delete-ecr-image-tag.resource.action.js.map +1 -1
- package/dist/resources/ecr-image-tag/ecr-image-tag.resource.js +3 -1
- package/dist/resources/ecr-image-tag/ecr-image-tag.resource.js.map +1 -1
- package/dist/resources/ecr-image-tag/index.schema.d.ts +11 -0
- package/dist/resources/ecr-image-tag/index.schema.js +26 -11
- package/dist/resources/ecr-image-tag/index.schema.js.map +1 -1
- package/dist/resources/ecs-cluster/ecs-cluster.resource.js +3 -1
- package/dist/resources/ecs-cluster/ecs-cluster.resource.js.map +1 -1
- package/dist/resources/ecs-service/ecs-service.resource.js +0 -4
- package/dist/resources/ecs-service/ecs-service.resource.js.map +1 -1
- package/dist/resources/ecs-task-definition/ecs-task-definition.resource.d.ts +9 -6
- package/dist/resources/ecs-task-definition/ecs-task-definition.resource.js +18 -8
- package/dist/resources/ecs-task-definition/ecs-task-definition.resource.js.map +1 -1
- package/dist/resources/ecs-task-definition/index.schema.d.ts +5 -6
- package/dist/resources/ecs-task-definition/index.schema.js +9 -6
- package/dist/resources/ecs-task-definition/index.schema.js.map +1 -1
- package/dist/resources/efs/efs.resource.js +1 -1
- package/dist/resources/efs/efs.resource.js.map +1 -1
- package/dist/resources/efs-mount-target/index.schema.d.ts +1 -1
- package/dist/resources/efs-mount-target/index.schema.js +1 -1
- package/dist/resources/iam-role/iam-role.resource.d.ts +29 -2
- package/dist/resources/iam-role/iam-role.resource.js +163 -37
- package/dist/resources/iam-role/iam-role.resource.js.map +1 -1
- package/dist/resources/iam-role/index.schema.d.ts +45 -11
- package/dist/resources/iam-role/index.schema.js.map +1 -1
- package/dist/resources/iam-user/iam-user.resource.d.ts +23 -2
- package/dist/resources/iam-user/iam-user.resource.js +130 -27
- package/dist/resources/iam-user/iam-user.resource.js.map +1 -1
- package/dist/resources/iam-user/index.schema.d.ts +33 -5
- package/dist/resources/iam-user/index.schema.js.map +1 -1
- package/dist/resources/lambda-function/index.d.ts +1 -0
- package/dist/resources/lambda-function/index.js +2 -0
- package/dist/resources/lambda-function/index.js.map +1 -0
- package/dist/resources/lambda-function/index.schema.d.ts +75 -0
- package/dist/resources/lambda-function/index.schema.js +139 -0
- package/dist/resources/lambda-function/index.schema.js.map +1 -0
- package/dist/resources/lambda-function/lambda-function.resource.d.ts +50 -0
- package/dist/resources/lambda-function/lambda-function.resource.js +199 -0
- package/dist/resources/lambda-function/lambda-function.resource.js.map +1 -0
- package/dist/resources/nat-gateway/nat-gateway.resource.d.ts +2 -7
- package/dist/resources/nat-gateway/nat-gateway.resource.js +2 -2
- package/dist/resources/nat-gateway/nat-gateway.resource.js.map +1 -1
- package/dist/resources/s3-storage/index.schema.d.ts +118 -6
- package/dist/resources/s3-storage/index.schema.js +200 -7
- package/dist/resources/s3-storage/index.schema.js.map +1 -1
- package/dist/resources/s3-storage/s3-storage.resource.d.ts +25 -12
- package/dist/resources/s3-storage/s3-storage.resource.js +211 -110
- package/dist/resources/s3-storage/s3-storage.resource.js.map +1 -1
- package/dist/resources/s3-website/index.schema.d.ts +1 -19
- package/dist/resources/s3-website/index.schema.js +1 -34
- package/dist/resources/s3-website/index.schema.js.map +1 -1
- package/dist/resources/s3-website/s3-website.resource.d.ts +4 -31
- package/dist/resources/s3-website/s3-website.resource.js +29 -82
- package/dist/resources/s3-website/s3-website.resource.js.map +1 -1
- package/dist/resources/security-group/security-group.resource.js +13 -2
- package/dist/resources/security-group/security-group.resource.js.map +1 -1
- package/dist/services/docker/docker.service.d.ts +28 -7
- package/dist/services/docker/docker.service.js +53 -17
- package/dist/services/docker/docker.service.js.map +1 -1
- package/dist/utilities/aws-region/aws-region.utility.d.ts +15 -0
- package/dist/utilities/aws-region/aws-region.utility.js +19 -0
- package/dist/utilities/aws-region/aws-region.utility.js.map +1 -0
- package/dist/utilities/file/file.utility.d.ts +0 -4
- package/dist/utilities/file/file.utility.js +0 -6
- package/dist/utilities/file/file.utility.js.map +1 -1
- package/dist/utilities/retry/retry.utility.d.ts +5 -9
- package/dist/utilities/retry/retry.utility.js +0 -20
- package/dist/utilities/retry/retry.utility.js.map +1 -1
- package/dist/utilities/s3-file-source/s3-file-source.utility.d.ts +53 -0
- package/dist/utilities/s3-file-source/s3-file-source.utility.js +112 -0
- package/dist/utilities/s3-file-source/s3-file-source.utility.js.map +1 -0
- package/package.json +30 -10
- package/dist/anchors/aws-ecs/aws-ecs-server.anchor.d.ts +0 -12
- package/dist/anchors/aws-ecs/aws-ecs-server.anchor.js.map +0 -1
- package/dist/anchors/aws-ecs/aws-ecs-server.anchor.schema.d.ts +0 -27
- package/dist/anchors/aws-ecs/aws-ecs-server.anchor.schema.js.map +0 -1
- package/dist/anchors/aws-ecs/aws-ecs-task-definition.anchor.d.ts +0 -12
- package/dist/anchors/aws-ecs/aws-ecs-task-definition.anchor.js.map +0 -1
- package/dist/anchors/aws-ecs/aws-ecs-task-definition.anchor.schema.d.ts +0 -88
- package/dist/anchors/aws-ecs/aws-ecs-task-definition.anchor.schema.js +0 -138
- package/dist/anchors/aws-ecs/aws-ecs-task-definition.anchor.schema.js.map +0 -1
- package/dist/anchors/aws-iam/aws-iam-role.anchor.d.ts +0 -12
- package/dist/anchors/aws-iam/aws-iam-role.anchor.js.map +0 -1
- package/dist/anchors/aws-iam/aws-iam-role.anchor.schema.d.ts +0 -24
- package/dist/anchors/aws-iam/aws-iam-role.anchor.schema.js.map +0 -1
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-directory.anchor.d.ts +0 -12
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-directory.anchor.js.map +0 -1
- package/dist/anchors/aws-s3-storage-service/aws-s3-storage-service-directory.anchor.schema.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/aws-ecs-deployment.module.d.ts +0 -41
- package/dist/modules/deployment/aws-ecs-deployment/aws-ecs-deployment.module.js +0 -61
- package/dist/modules/deployment/aws-ecs-deployment/aws-ecs-deployment.module.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/index.d.ts +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/index.js +0 -2
- package/dist/modules/deployment/aws-ecs-deployment/index.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/index.schema.d.ts +0 -33
- package/dist/modules/deployment/aws-ecs-deployment/index.schema.js +0 -71
- package/dist/modules/deployment/aws-ecs-deployment/index.schema.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/actions/add-aws-ecs-deployment.model.action.d.ts +0 -25
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/actions/add-aws-ecs-deployment.model.action.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/aws-ecs-deployment.model.d.ts +0 -11
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/aws-ecs-deployment.model.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/aws-ecs-deployment.schema.js +0 -7
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/aws-ecs-deployment.schema.js.map +0 -1
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/index.d.ts +0 -2
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/index.js +0 -3
- package/dist/modules/deployment/aws-ecs-deployment/models/deployment/index.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/aws-ecs-server.module.d.ts +0 -58
- package/dist/modules/server/aws-ecs-server/aws-ecs-server.module.js +0 -148
- package/dist/modules/server/aws-ecs-server/aws-ecs-server.module.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/index.d.ts +0 -1
- package/dist/modules/server/aws-ecs-server/index.js +0 -2
- package/dist/modules/server/aws-ecs-server/index.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/index.schema.d.ts +0 -83
- package/dist/modules/server/aws-ecs-server/index.schema.js +0 -153
- package/dist/modules/server/aws-ecs-server/index.schema.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/models/server/actions/add-aws-ecs-server.model.action.d.ts +0 -25
- package/dist/modules/server/aws-ecs-server/models/server/actions/add-aws-ecs-server.model.action.js +0 -71
- package/dist/modules/server/aws-ecs-server/models/server/actions/add-aws-ecs-server.model.action.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/models/server/aws-ecs-server.model.d.ts +0 -11
- package/dist/modules/server/aws-ecs-server/models/server/aws-ecs-server.model.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/models/server/aws-ecs-server.schema.js +0 -7
- package/dist/modules/server/aws-ecs-server/models/server/aws-ecs-server.schema.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/models/server/index.d.ts +0 -2
- package/dist/modules/server/aws-ecs-server/models/server/index.js +0 -3
- package/dist/modules/server/aws-ecs-server/models/server/index.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/actions/add-aws-ecs-server-s3-access.overlay.action.d.ts +0 -26
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/actions/add-aws-ecs-server-s3-access.overlay.action.js +0 -73
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/actions/add-aws-ecs-server-s3-access.overlay.action.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/aws-ecs-server-s3-access.overlay.d.ts +0 -19
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/aws-ecs-server-s3-access.overlay.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/aws-ecs-server-s3-access.schema.js.map +0 -1
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/index.d.ts +0 -2
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/index.js +0 -3
- package/dist/modules/server/aws-ecs-server/overlays/aws-ecs-server-s3-access/index.js.map +0 -1
- package/dist/utilities/common/common.utility.d.ts +0 -13
- package/dist/utilities/common/common.utility.js +0 -28
- package/dist/utilities/common/common.utility.js.map +0 -1
- package/dist/utilities/hcl/hcl.utility.d.ts +0 -34
- package/dist/utilities/hcl/hcl.utility.js +0 -163
- package/dist/utilities/hcl/hcl.utility.js.map +0 -1
|
@@ -7,9 +7,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
import { ATerraformResource, Diff, DiffAction, DiffUtility, Resource } from '@quadnix/octo';
|
|
10
|
+
import { ATerraformResource, Diff, DiffAction, DiffUtility, Resource, ResourceError, } from '@quadnix/octo';
|
|
11
11
|
import { PolicyUtility } from '../../utilities/policy/policy.utility.js';
|
|
12
|
-
import { IamUserSchema } from './index.schema.js';
|
|
12
|
+
import { IamUserSchema, } from './index.schema.js';
|
|
13
13
|
/**
|
|
14
14
|
* @internal
|
|
15
15
|
*/
|
|
@@ -21,30 +21,59 @@ let IamUser = class IamUser extends ATerraformResource {
|
|
|
21
21
|
super(resourceId, properties, []);
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
+
* Grants this user read or write on a table in its own account.
|
|
25
|
+
*
|
|
26
|
+
* The table is not a parent: IAM accepts a policy naming a table that does not exist yet. It is
|
|
27
|
+
* passed in so its name and region are read off the table itself rather than handed over as
|
|
28
|
+
* strings, and so a table in another account is refused.
|
|
29
|
+
*
|
|
24
30
|
* @internal
|
|
25
31
|
*/
|
|
26
|
-
|
|
32
|
+
addDynamoDBTablePolicy(policyId, table, options) {
|
|
33
|
+
const { awsAccountId, awsRegionId, TableName } = table.getSchemaInstance().properties;
|
|
34
|
+
if (awsAccountId !== this.properties.awsAccountId) {
|
|
35
|
+
throw new ResourceError(`Table "${TableName}" is in account "${awsAccountId}", not in the user's account "${this.properties.awsAccountId}"!`, this);
|
|
36
|
+
}
|
|
37
|
+
const policy = {
|
|
38
|
+
allowRead: options.allowRead,
|
|
39
|
+
allowWrite: options.allowWrite,
|
|
40
|
+
awsRegionId,
|
|
41
|
+
tableName: TableName,
|
|
42
|
+
};
|
|
27
43
|
const index = this.properties.policies.findIndex((p) => p.policyId === policyId);
|
|
28
44
|
if (index === -1) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
45
|
+
this.properties.policies.push({ policy, policyId, policyType: 'dynamodb-table-access-policy' });
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
this.properties.policies[index].policy = policy;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Grants this user read or write on a prefix of a bucket in its own account.
|
|
53
|
+
*
|
|
54
|
+
* The bucket is not a parent: IAM accepts a policy naming a bucket that does not exist yet. It is
|
|
55
|
+
* passed in so its name is read off the bucket itself rather than handed over as a string, and so a
|
|
56
|
+
* bucket in another account is refused.
|
|
57
|
+
*
|
|
58
|
+
* @internal
|
|
59
|
+
*/
|
|
60
|
+
addS3BucketPolicy(policyId, bucket, accessPrefix, options) {
|
|
61
|
+
const { awsAccountId, Bucket } = bucket.getSchemaInstance().properties;
|
|
62
|
+
if (awsAccountId !== this.properties.awsAccountId) {
|
|
63
|
+
throw new ResourceError(`Bucket "${Bucket}" is in account "${awsAccountId}", not in the user's account "${this.properties.awsAccountId}"!`, this);
|
|
64
|
+
}
|
|
65
|
+
const policy = {
|
|
66
|
+
accessPrefix,
|
|
67
|
+
allowRead: options.allowRead,
|
|
68
|
+
allowWrite: options.allowWrite,
|
|
69
|
+
bucketName: Bucket,
|
|
70
|
+
};
|
|
71
|
+
const index = this.properties.policies.findIndex((p) => p.policyId === policyId);
|
|
72
|
+
if (index === -1) {
|
|
73
|
+
this.properties.policies.push({ policy, policyId, policyType: 's3-storage-access-policy' });
|
|
40
74
|
}
|
|
41
75
|
else {
|
|
42
|
-
this.properties.policies[index].policy =
|
|
43
|
-
allowRead: options.allowRead,
|
|
44
|
-
allowWrite: options.allowWrite,
|
|
45
|
-
bucketName,
|
|
46
|
-
remoteDirectoryPath,
|
|
47
|
-
};
|
|
76
|
+
this.properties.policies[index].policy = policy;
|
|
48
77
|
}
|
|
49
78
|
}
|
|
50
79
|
/**
|
|
@@ -76,7 +105,17 @@ let IamUser = class IamUser extends ATerraformResource {
|
|
|
76
105
|
}
|
|
77
106
|
}
|
|
78
107
|
for (const policy of this.properties.policies) {
|
|
79
|
-
|
|
108
|
+
const previousPolicy = previous.properties.policies.find((p) => p.policyId === policy.policyId);
|
|
109
|
+
// A policy whose body moved under the same id is a delete and an add, because a policy is
|
|
110
|
+
// one terraform resource named by that id and there is no third action to edit it with.
|
|
111
|
+
if (previousPolicy && !DiffUtility.isObjectDeepEquals({ p: previousPolicy.policy }, { p: policy.policy })) {
|
|
112
|
+
diffs.push(new Diff(this, DiffAction.UPDATE, policy.policyType, {
|
|
113
|
+
action: 'delete',
|
|
114
|
+
policyId: policy.policyId,
|
|
115
|
+
policyType: policy.policyType,
|
|
116
|
+
}));
|
|
117
|
+
}
|
|
118
|
+
if (!previousPolicy || !DiffUtility.isObjectDeepEquals({ p: previousPolicy.policy }, { p: policy.policy })) {
|
|
80
119
|
diffs.push(new Diff(this, DiffAction.UPDATE, policy.policyType, {
|
|
81
120
|
action: 'add',
|
|
82
121
|
policy: policy.policy,
|
|
@@ -134,19 +173,64 @@ let IamUser = class IamUser extends ATerraformResource {
|
|
|
134
173
|
UserId: terraform.raw(`${iamUserTFResource.address}.unique_id`),
|
|
135
174
|
UserName: terraform.raw(`${iamUserTFResource.address}.name`),
|
|
136
175
|
});
|
|
176
|
+
const dynamoDBPolicies = this.properties.policies.filter((p) => p.policyType === 'dynamodb-table-access-policy');
|
|
177
|
+
for (const policy of dynamoDBPolicies) {
|
|
178
|
+
const dynamoDBPolicy = policy.policy;
|
|
179
|
+
const tableArn = [
|
|
180
|
+
'arn:aws:dynamodb',
|
|
181
|
+
dynamoDBPolicy.awsRegionId,
|
|
182
|
+
this.properties.awsAccountId,
|
|
183
|
+
`table/${dynamoDBPolicy.tableName}`,
|
|
184
|
+
].join(':');
|
|
185
|
+
const policyStatements = [];
|
|
186
|
+
if (dynamoDBPolicy.allowRead) {
|
|
187
|
+
policyStatements.push({
|
|
188
|
+
Action: [
|
|
189
|
+
'dynamodb:BatchGetItem',
|
|
190
|
+
'dynamodb:ConditionCheckItem',
|
|
191
|
+
'dynamodb:DescribeTable',
|
|
192
|
+
'dynamodb:GetItem',
|
|
193
|
+
'dynamodb:Query',
|
|
194
|
+
'dynamodb:Scan',
|
|
195
|
+
],
|
|
196
|
+
Effect: 'Allow',
|
|
197
|
+
Resource: [tableArn, `${tableArn}/index/*`],
|
|
198
|
+
Sid: PolicyUtility.getSafeSid(`Allow read from table ${dynamoDBPolicy.tableName}`),
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
if (dynamoDBPolicy.allowWrite) {
|
|
202
|
+
policyStatements.push({
|
|
203
|
+
Action: ['dynamodb:BatchWriteItem', 'dynamodb:DeleteItem', 'dynamodb:PutItem', 'dynamodb:UpdateItem'],
|
|
204
|
+
Effect: 'Allow',
|
|
205
|
+
Resource: [tableArn],
|
|
206
|
+
Sid: PolicyUtility.getSafeSid(`Allow write to table ${dynamoDBPolicy.tableName}`),
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
const iamPolicyTFResource = iamUserOctoResource.addTerraformResource('aws_iam_policy', `${this.resourceId}_${policy.policyId}`, {
|
|
210
|
+
name: policy.policyId,
|
|
211
|
+
policy: terraform.jsonencode({
|
|
212
|
+
Statement: policyStatements,
|
|
213
|
+
Version: '2012-10-17',
|
|
214
|
+
}),
|
|
215
|
+
});
|
|
216
|
+
iamUserOctoResource.addTerraformResource('aws_iam_user_policy_attachment', `${this.resourceId}_${policy.policyId}_attach`, {
|
|
217
|
+
policy_arn: terraform.raw(`${iamPolicyTFResource.address}.arn`),
|
|
218
|
+
user: terraform.raw(`${iamUserTFResource.address}.name`),
|
|
219
|
+
});
|
|
220
|
+
}
|
|
137
221
|
const s3Policies = this.properties.policies.filter((p) => p.policyType === 's3-storage-access-policy');
|
|
138
222
|
for (const policy of s3Policies) {
|
|
139
223
|
const s3Policy = policy.policy;
|
|
140
|
-
const isRootPath = s3Policy.
|
|
224
|
+
const isRootPath = s3Policy.accessPrefix === '' || s3Policy.accessPrefix === '/';
|
|
141
225
|
const bucketReadResources = isRootPath
|
|
142
226
|
? [`arn:aws:s3:::${s3Policy.bucketName}`, `arn:aws:s3:::${s3Policy.bucketName}/*`]
|
|
143
227
|
: [
|
|
144
|
-
`arn:aws:s3:::${s3Policy.bucketName}/${s3Policy.
|
|
145
|
-
`arn:aws:s3:::${s3Policy.bucketName}/${s3Policy.
|
|
228
|
+
`arn:aws:s3:::${s3Policy.bucketName}/${s3Policy.accessPrefix}`,
|
|
229
|
+
`arn:aws:s3:::${s3Policy.bucketName}/${s3Policy.accessPrefix}/*`,
|
|
146
230
|
];
|
|
147
231
|
const bucketWriteResources = isRootPath
|
|
148
232
|
? [`arn:aws:s3:::${s3Policy.bucketName}`, `arn:aws:s3:::${s3Policy.bucketName}/*`]
|
|
149
|
-
: [`arn:aws:s3:::${s3Policy.bucketName}/${s3Policy.
|
|
233
|
+
: [`arn:aws:s3:::${s3Policy.bucketName}/${s3Policy.accessPrefix}/*`];
|
|
150
234
|
const policyStatements = [];
|
|
151
235
|
if (s3Policy.allowRead) {
|
|
152
236
|
policyStatements.push({
|
|
@@ -157,12 +241,29 @@ let IamUser = class IamUser extends ATerraformResource {
|
|
|
157
241
|
's3:GetObjectVersionAcl',
|
|
158
242
|
's3:GetObjectVersionAttributes',
|
|
159
243
|
's3:GetObjectVersionTagging',
|
|
160
|
-
's3:ListBucket',
|
|
161
244
|
],
|
|
162
245
|
Effect: 'Allow',
|
|
163
246
|
Resource: bucketReadResources,
|
|
164
247
|
Sid: PolicyUtility.getSafeSid(`Allow read from bucket ${s3Policy.bucketName}`),
|
|
165
248
|
});
|
|
249
|
+
// s3:ListBucket is a bucket-level action, so it is only ever evaluated against the bucket
|
|
250
|
+
// ARN. Granting it alongside the object actions above, whose Resource is a prefix,
|
|
251
|
+
// silently grants nothing. The prefix is expressed as an s3:prefix condition instead.
|
|
252
|
+
policyStatements.push({
|
|
253
|
+
Action: ['s3:ListBucket'],
|
|
254
|
+
Effect: 'Allow',
|
|
255
|
+
Resource: [`arn:aws:s3:::${s3Policy.bucketName}`],
|
|
256
|
+
Sid: PolicyUtility.getSafeSid(`Allow list from bucket ${s3Policy.bucketName}`),
|
|
257
|
+
...(isRootPath
|
|
258
|
+
? {}
|
|
259
|
+
: {
|
|
260
|
+
Condition: {
|
|
261
|
+
StringLike: {
|
|
262
|
+
's3:prefix': [s3Policy.accessPrefix, `${s3Policy.accessPrefix}/*`],
|
|
263
|
+
},
|
|
264
|
+
},
|
|
265
|
+
}),
|
|
266
|
+
});
|
|
166
267
|
}
|
|
167
268
|
if (s3Policy.allowWrite) {
|
|
168
269
|
policyStatements.push({
|
|
@@ -190,7 +291,9 @@ let IamUser = class IamUser extends ATerraformResource {
|
|
|
190
291
|
}
|
|
191
292
|
};
|
|
192
293
|
IamUser = __decorate([
|
|
193
|
-
Resource('@octo', 'iam-user', IamUserSchema
|
|
294
|
+
Resource('@octo', 'iam-user', IamUserSchema, {
|
|
295
|
+
uniqueProperties: [{ path: 'username', within: ['awsAccountId'] }],
|
|
296
|
+
}),
|
|
194
297
|
__metadata("design:paramtypes", [String, Object])
|
|
195
298
|
], IamUser);
|
|
196
299
|
export { IamUser };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iam-user.resource.js","sourceRoot":"","sources":["../../../src/resources/iam-user/iam-user.resource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"iam-user.resource.js","sourceRoot":"","sources":["../../../src/resources/iam-user/iam-user.resource.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,17 +5,50 @@ import { BaseResourceSchema } from '@quadnix/octo';
|
|
|
5
5
|
* @group Resources/IamUser
|
|
6
6
|
*/
|
|
7
7
|
export type IIamUserPolicyTypes = {
|
|
8
|
+
/**
|
|
9
|
+
* You can provide options to create a policy for accessing a DynamoDB table.
|
|
10
|
+
*/
|
|
11
|
+
'dynamodb-table-access-policy': IIamUserDynamoDBTablePolicy;
|
|
8
12
|
/**
|
|
9
13
|
* You can provide options to create a policy for accessing a S3 bucket.
|
|
10
14
|
*/
|
|
11
15
|
's3-storage-access-policy': IIamUserS3BucketPolicy;
|
|
12
16
|
};
|
|
17
|
+
/**
|
|
18
|
+
* Defines the DynamoDB table access policy for an IAM user.
|
|
19
|
+
* Read covers the table and its indexes; write covers the table's items.
|
|
20
|
+
*
|
|
21
|
+
* @group Resources/IamUser
|
|
22
|
+
*/
|
|
23
|
+
export interface IIamUserDynamoDBTablePolicy {
|
|
24
|
+
/**
|
|
25
|
+
* Allows reading items from the table and querying its indexes.
|
|
26
|
+
*/
|
|
27
|
+
allowRead: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Allows writing and deleting items in the table.
|
|
30
|
+
*/
|
|
31
|
+
allowWrite: boolean;
|
|
32
|
+
/**
|
|
33
|
+
* The AWS region the table is in. The table is in the user's own account.
|
|
34
|
+
*/
|
|
35
|
+
awsRegionId: string;
|
|
36
|
+
/**
|
|
37
|
+
* The name of the table.
|
|
38
|
+
*/
|
|
39
|
+
tableName: string;
|
|
40
|
+
}
|
|
13
41
|
/**
|
|
14
42
|
* Defines the S3 storage access policy for an IAM user.
|
|
15
43
|
*
|
|
16
44
|
* @group Resources/IamUser
|
|
17
45
|
*/
|
|
18
46
|
export interface IIamUserS3BucketPolicy {
|
|
47
|
+
/**
|
|
48
|
+
* The key prefix within the bucket this policy is for, e.g. `uploads`.
|
|
49
|
+
* If you want to allow access to the entire bucket, use empty string `''`.
|
|
50
|
+
*/
|
|
51
|
+
accessPrefix: string;
|
|
19
52
|
/**
|
|
20
53
|
* Allows read access to the bucket prefix.
|
|
21
54
|
*/
|
|
@@ -28,11 +61,6 @@ export interface IIamUserS3BucketPolicy {
|
|
|
28
61
|
* The name of the bucket.
|
|
29
62
|
*/
|
|
30
63
|
bucketName: string;
|
|
31
|
-
/**
|
|
32
|
-
* The path within the bucket this policy is for.
|
|
33
|
-
* If you want to allow access to the entire bucket, use empty string `''`.
|
|
34
|
-
*/
|
|
35
|
-
remoteDirectoryPath: string;
|
|
36
64
|
}
|
|
37
65
|
/**
|
|
38
66
|
* The `IamUserSchema` class is the schema for the `IamUser` resource,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.schema.js","sourceRoot":"","sources":["../../../src/resources/iam-user/index.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.schema.js","sourceRoot":"","sources":["../../../src/resources/iam-user/index.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AA2ErE;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,aAAc,SAAQ,kBAAkB;IAArD;;QACE,uDAAuD;QACvD;;;;;WAKG;QAKM,eAAU,GAAG,MAAM,EAMxB,CAAC;QAEL;;;;;WAKG;QAiBM,aAAQ,GAAG,MAAM,CAIvB;YACD,GAAG,EAAE,0CAA0C;YAC/C,MAAM,EAAE,uBAAuB;YAC/B,QAAQ,EAAE,WAAW;SACtB,CAAC,CAAC;IACL,CAAC;CAAA;AAvCU;IAJR,QAAQ,CAAC;QACR,QAAQ,EAAE,CAAC,KAAkC,EAAY,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC;QAChG,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;KAC1B,CAAC;;iDAOG;AAwBI;IAhBR,QAAQ,CAAC;QACR,QAAQ,EAAE,CAAC,KAAgC,EAAY,EAAE;YACvD,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;gBACd,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3B,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAChC,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;KAC1B,CAAC;;+CASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { LambdaFunction } from './lambda-function.resource.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/resources/lambda-function/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { BaseResourceSchema } from '@quadnix/octo';
|
|
2
|
+
/**
|
|
3
|
+
* The `LambdaFunctionSchema` class is the schema for the `LambdaFunction` resource, which
|
|
4
|
+
* represents an AWS Lambda function running a container image. Terraform provisions it as
|
|
5
|
+
* [`aws_lambda_function`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function),
|
|
6
|
+
* with an
|
|
7
|
+
* [`aws_lambda_function_url`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function_url)
|
|
8
|
+
* that only signed requests may call. Each caller of the URL - an account, or CloudFront - is admitted by a
|
|
9
|
+
* pair of [`aws_lambda_permission`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission),
|
|
10
|
+
* because a function URL needs both `lambda:InvokeFunctionUrl` and `lambda:InvokeFunction`.
|
|
11
|
+
*
|
|
12
|
+
* The function writes no logs: its role is given no permission to, so Lambda creates no log group
|
|
13
|
+
* outside of octo.
|
|
14
|
+
*
|
|
15
|
+
* @group Resources/LambdaFunction
|
|
16
|
+
*
|
|
17
|
+
* @hideconstructor
|
|
18
|
+
*
|
|
19
|
+
* @overrideProperty parents - The IAM role the function runs as, and the published image it runs.
|
|
20
|
+
* ```mermaid
|
|
21
|
+
* graph TD;
|
|
22
|
+
* iam_role((IAM<br>Role)) --> lambda_function((Lambda<br>Function))
|
|
23
|
+
* ecr_image_tag((ECR<br>Image Tag)) --> lambda_function
|
|
24
|
+
* ```
|
|
25
|
+
* @overrideProperty resourceId - The resource id is of format `lambda-function-<function-name>`.
|
|
26
|
+
*/
|
|
27
|
+
export declare class LambdaFunctionSchema extends BaseResourceSchema {
|
|
28
|
+
/**
|
|
29
|
+
* Input properties.
|
|
30
|
+
* * `properties.allowCloudFrontOriginAccess` - Whether CloudFront distributions of the function's own
|
|
31
|
+
* account may call its URL, signing each request with an origin access control.
|
|
32
|
+
* * `properties.architecture` - The processor the function runs on. The image must be built for it.
|
|
33
|
+
* * `properties.awsAccountId` - The AWS account id.
|
|
34
|
+
* * `properties.awsRegionId` - The AWS region id.
|
|
35
|
+
* * `properties.environmentVariables` - Values the function reads out of its environment.
|
|
36
|
+
* * `properties.functionName` - The name of the function. Part of its identity.
|
|
37
|
+
* * `properties.imageCommand` - The command the image runs, replacing its own. Empty keeps the image's
|
|
38
|
+
* own command.
|
|
39
|
+
* * `properties.invokeMode` - How the function's URL returns a response: `BUFFERED`, whole and up to 6 MB,
|
|
40
|
+
* or `RESPONSE_STREAM`, streamed as the function writes it, up to 200 MB.
|
|
41
|
+
* * `properties.invokerAccountIds` - The AWS accounts allowed to call the function's URL.
|
|
42
|
+
* * `properties.memoryInMegabytes` - How much memory the function gets, from 128 to 10240. It also
|
|
43
|
+
* decides how much CPU the function gets.
|
|
44
|
+
* * `properties.reservedConcurrency` - How many instances of the function may run at once, reserved
|
|
45
|
+
* out of the account's concurrency. Left out, nothing is reserved.
|
|
46
|
+
* * `properties.timeoutInSeconds` - How long an invocation may run before Lambda stops it, from 1 to 900.
|
|
47
|
+
*/
|
|
48
|
+
properties: {
|
|
49
|
+
allowCloudFrontOriginAccess: boolean;
|
|
50
|
+
architecture: "arm64" | "x86_64";
|
|
51
|
+
awsAccountId: string;
|
|
52
|
+
awsRegionId: string;
|
|
53
|
+
environmentVariables: Record<string, string>;
|
|
54
|
+
functionName: string;
|
|
55
|
+
imageCommand: string[];
|
|
56
|
+
invokeMode: "BUFFERED" | "RESPONSE_STREAM";
|
|
57
|
+
invokerAccountIds: string[];
|
|
58
|
+
memoryInMegabytes: number;
|
|
59
|
+
reservedConcurrency: number | null;
|
|
60
|
+
timeoutInSeconds: number;
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Saved response.
|
|
64
|
+
* * `response.Arn` - The ARN of the function.
|
|
65
|
+
* * `response.FunctionName` - The name of the function.
|
|
66
|
+
* * `response.FunctionUrl` - The URL the function answers on.
|
|
67
|
+
* * `response.FunctionUrlDomainName` - The host name of the URL, which a CloudFront origin names.
|
|
68
|
+
*/
|
|
69
|
+
response: {
|
|
70
|
+
Arn?: string;
|
|
71
|
+
FunctionName?: string;
|
|
72
|
+
FunctionUrl?: string;
|
|
73
|
+
FunctionUrlDomainName?: string;
|
|
74
|
+
};
|
|
75
|
+
}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { BaseResourceSchema, Schema, Validate } from '@quadnix/octo';
|
|
11
|
+
/**
|
|
12
|
+
* The `LambdaFunctionSchema` class is the schema for the `LambdaFunction` resource, which
|
|
13
|
+
* represents an AWS Lambda function running a container image. Terraform provisions it as
|
|
14
|
+
* [`aws_lambda_function`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function),
|
|
15
|
+
* with an
|
|
16
|
+
* [`aws_lambda_function_url`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function_url)
|
|
17
|
+
* that only signed requests may call. Each caller of the URL - an account, or CloudFront - is admitted by a
|
|
18
|
+
* pair of [`aws_lambda_permission`](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission),
|
|
19
|
+
* because a function URL needs both `lambda:InvokeFunctionUrl` and `lambda:InvokeFunction`.
|
|
20
|
+
*
|
|
21
|
+
* The function writes no logs: its role is given no permission to, so Lambda creates no log group
|
|
22
|
+
* outside of octo.
|
|
23
|
+
*
|
|
24
|
+
* @group Resources/LambdaFunction
|
|
25
|
+
*
|
|
26
|
+
* @hideconstructor
|
|
27
|
+
*
|
|
28
|
+
* @overrideProperty parents - The IAM role the function runs as, and the published image it runs.
|
|
29
|
+
* ```mermaid
|
|
30
|
+
* graph TD;
|
|
31
|
+
* iam_role((IAM<br>Role)) --> lambda_function((Lambda<br>Function))
|
|
32
|
+
* ecr_image_tag((ECR<br>Image Tag)) --> lambda_function
|
|
33
|
+
* ```
|
|
34
|
+
* @overrideProperty resourceId - The resource id is of format `lambda-function-<function-name>`.
|
|
35
|
+
*/
|
|
36
|
+
export class LambdaFunctionSchema extends BaseResourceSchema {
|
|
37
|
+
constructor() {
|
|
38
|
+
super(...arguments);
|
|
39
|
+
/**
|
|
40
|
+
* Input properties.
|
|
41
|
+
* * `properties.allowCloudFrontOriginAccess` - Whether CloudFront distributions of the function's own
|
|
42
|
+
* account may call its URL, signing each request with an origin access control.
|
|
43
|
+
* * `properties.architecture` - The processor the function runs on. The image must be built for it.
|
|
44
|
+
* * `properties.awsAccountId` - The AWS account id.
|
|
45
|
+
* * `properties.awsRegionId` - The AWS region id.
|
|
46
|
+
* * `properties.environmentVariables` - Values the function reads out of its environment.
|
|
47
|
+
* * `properties.functionName` - The name of the function. Part of its identity.
|
|
48
|
+
* * `properties.imageCommand` - The command the image runs, replacing its own. Empty keeps the image's
|
|
49
|
+
* own command.
|
|
50
|
+
* * `properties.invokeMode` - How the function's URL returns a response: `BUFFERED`, whole and up to 6 MB,
|
|
51
|
+
* or `RESPONSE_STREAM`, streamed as the function writes it, up to 200 MB.
|
|
52
|
+
* * `properties.invokerAccountIds` - The AWS accounts allowed to call the function's URL.
|
|
53
|
+
* * `properties.memoryInMegabytes` - How much memory the function gets, from 128 to 10240. It also
|
|
54
|
+
* decides how much CPU the function gets.
|
|
55
|
+
* * `properties.reservedConcurrency` - How many instances of the function may run at once, reserved
|
|
56
|
+
* out of the account's concurrency. Left out, nothing is reserved.
|
|
57
|
+
* * `properties.timeoutInSeconds` - How long an invocation may run before Lambda stops it, from 1 to 900.
|
|
58
|
+
*/
|
|
59
|
+
this.properties = Schema();
|
|
60
|
+
/**
|
|
61
|
+
* Saved response.
|
|
62
|
+
* * `response.Arn` - The ARN of the function.
|
|
63
|
+
* * `response.FunctionName` - The name of the function.
|
|
64
|
+
* * `response.FunctionUrl` - The URL the function answers on.
|
|
65
|
+
* * `response.FunctionUrlDomainName` - The host name of the URL, which a CloudFront origin names.
|
|
66
|
+
*/
|
|
67
|
+
this.response = Schema({
|
|
68
|
+
Arn: 'arn:aws:lambda:us-east-1:000000000000:function:mock-function',
|
|
69
|
+
FunctionName: 'mock-function',
|
|
70
|
+
FunctionUrl: 'https://mock-function.lambda-url.us-east-1.on.aws/',
|
|
71
|
+
FunctionUrlDomainName: 'mock-function.lambda-url.us-east-1.on.aws',
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
__decorate([
|
|
76
|
+
Validate([
|
|
77
|
+
{
|
|
78
|
+
destruct: (value) => [
|
|
79
|
+
value.architecture,
|
|
80
|
+
value.awsAccountId,
|
|
81
|
+
value.awsRegionId,
|
|
82
|
+
value.functionName,
|
|
83
|
+
...value.imageCommand,
|
|
84
|
+
...value.invokerAccountIds,
|
|
85
|
+
],
|
|
86
|
+
options: { minLength: 1 },
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
destruct: (value) => [value.architecture],
|
|
90
|
+
options: { regex: /^(arm64|x86_64)$/ },
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
destruct: (value) => [value.functionName],
|
|
94
|
+
options: { regex: /^[\w-]{1,64}$/ },
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
destruct: (value) => [value.invokeMode],
|
|
98
|
+
options: { regex: /^(BUFFERED|RESPONSE_STREAM)$/ },
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
destruct: (value) => value.invokerAccountIds,
|
|
102
|
+
options: { regex: /^\d{12}$/ },
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
destruct: (value) => [value.memoryInMegabytes],
|
|
106
|
+
options: { maxLength: 10240, minLength: 128 },
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
destruct: (value) => value.reservedConcurrency === null ? [] : [value.reservedConcurrency],
|
|
110
|
+
options: { minLength: 0 },
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
destruct: (value) => [value.timeoutInSeconds],
|
|
114
|
+
options: { maxLength: 900, minLength: 1 },
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
destruct: (value) => Object.keys(value.environmentVariables),
|
|
118
|
+
options: { regex: /^[a-zA-Z]\w+$/ },
|
|
119
|
+
},
|
|
120
|
+
]),
|
|
121
|
+
__metadata("design:type", Object)
|
|
122
|
+
], LambdaFunctionSchema.prototype, "properties", void 0);
|
|
123
|
+
__decorate([
|
|
124
|
+
Validate({
|
|
125
|
+
destruct: (value) => {
|
|
126
|
+
const subjects = [];
|
|
127
|
+
if (value.Arn) {
|
|
128
|
+
subjects.push(value.Arn);
|
|
129
|
+
}
|
|
130
|
+
if (value.FunctionName) {
|
|
131
|
+
subjects.push(value.FunctionName);
|
|
132
|
+
}
|
|
133
|
+
return subjects;
|
|
134
|
+
},
|
|
135
|
+
options: { minLength: 1 },
|
|
136
|
+
}),
|
|
137
|
+
__metadata("design:type", Object)
|
|
138
|
+
], LambdaFunctionSchema.prototype, "response", void 0);
|
|
139
|
+
//# sourceMappingURL=index.schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.schema.js","sourceRoot":"","sources":["../../../src/resources/lambda-function/index.schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { ATerraformResource, Diff, type MatchingResource, type TerraformModuleScope } from '@quadnix/octo';
|
|
2
|
+
import type { EcrImageTagSchema } from '../ecr-image-tag/index.schema.js';
|
|
3
|
+
import type { IamRoleSchema } from '../iam-role/index.schema.js';
|
|
4
|
+
import { LambdaFunctionSchema } from './index.schema.js';
|
|
5
|
+
/**
|
|
6
|
+
* @internal
|
|
7
|
+
*/
|
|
8
|
+
export declare class LambdaFunction extends ATerraformResource<LambdaFunctionSchema, LambdaFunction> {
|
|
9
|
+
parents: [MatchingResource<IamRoleSchema>, MatchingResource<EcrImageTagSchema>];
|
|
10
|
+
properties: LambdaFunctionSchema['properties'];
|
|
11
|
+
response: LambdaFunctionSchema['response'];
|
|
12
|
+
/**
|
|
13
|
+
* @internal
|
|
14
|
+
*/
|
|
15
|
+
constructor(resourceId: string, properties: LambdaFunctionSchema['properties'], parents: [MatchingResource<IamRoleSchema>, MatchingResource<EcrImageTagSchema>]);
|
|
16
|
+
/**
|
|
17
|
+
* Admits CloudFront distributions of the function's own account to its URL.
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
allowCloudFrontOriginAccess(): void;
|
|
22
|
+
/**
|
|
23
|
+
* @internal
|
|
24
|
+
*/
|
|
25
|
+
diff(previous: LambdaFunction): Promise<Diff[]>;
|
|
26
|
+
/**
|
|
27
|
+
* A function belongs to one account and one region, and its name is already in the resource id.
|
|
28
|
+
* Everything else Lambda edits in place.
|
|
29
|
+
*
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
diffProperties(previous: LambdaFunction): Promise<Diff[]>;
|
|
33
|
+
/**
|
|
34
|
+
* @internal
|
|
35
|
+
*/
|
|
36
|
+
toHCL(terraform: TerraformModuleScope): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* @internal
|
|
39
|
+
*/
|
|
40
|
+
private updateLambdaFunctionIamRole;
|
|
41
|
+
/**
|
|
42
|
+
* Orders this function against the published image it runs.
|
|
43
|
+
*
|
|
44
|
+
* A published image is deleted by octo at commit, outside terraform's own ordering, so nothing
|
|
45
|
+
* else holds it back until the function has stopped naming it.
|
|
46
|
+
*
|
|
47
|
+
* @internal
|
|
48
|
+
*/
|
|
49
|
+
private updateLambdaFunctionImageTag;
|
|
50
|
+
}
|