@quadnix/octo-aws-cdk 0.0.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/dist/anchors/iam-role.anchor.model.d.ts +4 -0
- package/dist/anchors/iam-role.anchor.model.js +21 -0
- package/dist/anchors/iam-role.anchor.model.js.map +1 -0
- package/dist/anchors/iam-user.anchor.model.d.ts +4 -0
- package/dist/anchors/iam-user.anchor.model.js +21 -0
- package/dist/anchors/iam-user.anchor.model.js.map +1 -0
- package/dist/factories/aws/aws.abstract.factory.d.ts +5 -0
- package/dist/factories/aws/aws.abstract.factory.js +25 -0
- package/dist/factories/aws/aws.abstract.factory.js.map +1 -0
- package/dist/factories/aws/ec2.aws.factory.d.ts +4 -0
- package/dist/factories/aws/ec2.aws.factory.js +19 -0
- package/dist/factories/aws/ec2.aws.factory.js.map +1 -0
- package/dist/factories/aws/ecr.aws.factory.d.ts +4 -0
- package/dist/factories/aws/ecr.aws.factory.js +19 -0
- package/dist/factories/aws/ecr.aws.factory.js.map +1 -0
- package/dist/factories/aws/ecs.aws.factory.d.ts +4 -0
- package/dist/factories/aws/ecs.aws.factory.js +19 -0
- package/dist/factories/aws/ecs.aws.factory.js.map +1 -0
- package/dist/factories/aws/efs.aws.factory.d.ts +4 -0
- package/dist/factories/aws/efs.aws.factory.js +19 -0
- package/dist/factories/aws/efs.aws.factory.js.map +1 -0
- package/dist/factories/aws/iam.aws.factory.d.ts +5 -0
- package/dist/factories/aws/iam.aws.factory.js +22 -0
- package/dist/factories/aws/iam.aws.factory.js.map +1 -0
- package/dist/factories/aws/s3.aws.factory.d.ts +4 -0
- package/dist/factories/aws/s3.aws.factory.js +19 -0
- package/dist/factories/aws/s3.aws.factory.js.map +1 -0
- package/dist/factories/aws/sts.aws.factory.d.ts +4 -0
- package/dist/factories/aws/sts.aws.factory.js +19 -0
- package/dist/factories/aws/sts.aws.factory.js.map +1 -0
- package/dist/index.d.ts +74 -0
- package/dist/index.js +75 -0
- package/dist/index.js.map +1 -0
- package/dist/main.d.ts +21 -0
- package/dist/main.js +87 -0
- package/dist/main.js.map +1 -0
- package/dist/models/action.abstract.d.ts +9 -0
- package/dist/models/action.abstract.js +12 -0
- package/dist/models/action.abstract.js.map +1 -0
- package/dist/models/deployment/actions/add-deployment.model.action.d.ts +11 -0
- package/dist/models/deployment/actions/add-deployment.model.action.js +63 -0
- package/dist/models/deployment/actions/add-deployment.model.action.js.map +1 -0
- package/dist/models/deployment/actions/delete-deployment.model.action.d.ts +11 -0
- package/dist/models/deployment/actions/delete-deployment.model.action.js +49 -0
- package/dist/models/deployment/actions/delete-deployment.model.action.js.map +1 -0
- package/dist/models/deployment/aws.deployment.interface.d.ts +5 -0
- package/dist/models/deployment/aws.deployment.interface.js +2 -0
- package/dist/models/deployment/aws.deployment.interface.js.map +1 -0
- package/dist/models/deployment/aws.deployment.model.d.ts +10 -0
- package/dist/models/deployment/aws.deployment.model.js +41 -0
- package/dist/models/deployment/aws.deployment.model.js.map +1 -0
- package/dist/models/environment/actions/add-environment.model.action.d.ts +10 -0
- package/dist/models/environment/actions/add-environment.model.action.js +43 -0
- package/dist/models/environment/actions/add-environment.model.action.js.map +1 -0
- package/dist/models/environment/actions/delete-environment.model.action.d.ts +11 -0
- package/dist/models/environment/actions/delete-environment.model.action.js +46 -0
- package/dist/models/environment/actions/delete-environment.model.action.js.map +1 -0
- package/dist/models/execution/actions/add-execution.model.action.d.ts +11 -0
- package/dist/models/execution/actions/add-execution.model.action.js +96 -0
- package/dist/models/execution/actions/add-execution.model.action.js.map +1 -0
- package/dist/models/execution/actions/delete-execution.model.action.d.ts +11 -0
- package/dist/models/execution/actions/delete-execution.model.action.js +47 -0
- package/dist/models/execution/actions/delete-execution.model.action.js.map +1 -0
- package/dist/models/image/actions/add-image.model.action.d.ts +11 -0
- package/dist/models/image/actions/add-image.model.action.js +69 -0
- package/dist/models/image/actions/add-image.model.action.js.map +1 -0
- package/dist/models/image/actions/delete-image.model.action.d.ts +10 -0
- package/dist/models/image/actions/delete-image.model.action.js +31 -0
- package/dist/models/image/actions/delete-image.model.action.js.map +1 -0
- package/dist/models/region/actions/add-region.model.action.d.ts +11 -0
- package/dist/models/region/actions/add-region.model.action.js +207 -0
- package/dist/models/region/actions/add-region.model.action.js.map +1 -0
- package/dist/models/region/actions/delete-region.model.action.d.ts +11 -0
- package/dist/models/region/actions/delete-region.model.action.js +95 -0
- package/dist/models/region/actions/delete-region.model.action.js.map +1 -0
- package/dist/models/region/aws.region.interface.d.ts +6 -0
- package/dist/models/region/aws.region.interface.js +2 -0
- package/dist/models/region/aws.region.interface.js.map +1 -0
- package/dist/models/region/aws.region.model.d.ts +32 -0
- package/dist/models/region/aws.region.model.js +67 -0
- package/dist/models/region/aws.region.model.js.map +1 -0
- package/dist/models/server/actions/add-server.model.action.d.ts +10 -0
- package/dist/models/server/actions/add-server.model.action.js +37 -0
- package/dist/models/server/actions/add-server.model.action.js.map +1 -0
- package/dist/models/server/actions/delete-server.model.action.d.ts +11 -0
- package/dist/models/server/actions/delete-server.model.action.js +42 -0
- package/dist/models/server/actions/delete-server.model.action.js.map +1 -0
- package/dist/models/server/aws.server.model.d.ts +6 -0
- package/dist/models/server/aws.server.model.js +35 -0
- package/dist/models/server/aws.server.model.js.map +1 -0
- package/dist/models/service/ecr/actions/add-ecr-service.model.action.d.ts +10 -0
- package/dist/models/service/ecr/actions/add-ecr-service.model.action.js +34 -0
- package/dist/models/service/ecr/actions/add-ecr-service.model.action.js.map +1 -0
- package/dist/models/service/ecr/actions/add-image-to-ecr.model.action.d.ts +11 -0
- package/dist/models/service/ecr/actions/add-image-to-ecr.model.action.js +52 -0
- package/dist/models/service/ecr/actions/add-image-to-ecr.model.action.js.map +1 -0
- package/dist/models/service/ecr/actions/delete-image-from-ecr.model.action.d.ts +11 -0
- package/dist/models/service/ecr/actions/delete-image-from-ecr.model.action.js +43 -0
- package/dist/models/service/ecr/actions/delete-image-from-ecr.model.action.js.map +1 -0
- package/dist/models/service/ecr/ecr.service.interface.d.ts +7 -0
- package/dist/models/service/ecr/ecr.service.interface.js +2 -0
- package/dist/models/service/ecr/ecr.service.interface.js.map +1 -0
- package/dist/models/service/ecr/ecr.service.model.d.ts +16 -0
- package/dist/models/service/ecr/ecr.service.model.js +115 -0
- package/dist/models/service/ecr/ecr.service.model.js.map +1 -0
- package/dist/models/service/s3-static-website/actions/add-s3-static-website.model.action.d.ts +11 -0
- package/dist/models/service/s3-static-website/actions/add-s3-static-website.model.action.js +48 -0
- package/dist/models/service/s3-static-website/actions/add-s3-static-website.model.action.js.map +1 -0
- package/dist/models/service/s3-static-website/actions/delete-s3-static-website.model.action.d.ts +12 -0
- package/dist/models/service/s3-static-website/actions/delete-s3-static-website.model.action.js +47 -0
- package/dist/models/service/s3-static-website/actions/delete-s3-static-website.model.action.js.map +1 -0
- package/dist/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.d.ts +12 -0
- package/dist/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.js +47 -0
- package/dist/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.js.map +1 -0
- package/dist/models/service/s3-static-website/s3-static-website.service.interface.d.ts +8 -0
- package/dist/models/service/s3-static-website/s3-static-website.service.interface.js +2 -0
- package/dist/models/service/s3-static-website/s3-static-website.service.interface.js.map +1 -0
- package/dist/models/service/s3-static-website/s3-static-website.service.model.d.ts +24 -0
- package/dist/models/service/s3-static-website/s3-static-website.service.model.js +154 -0
- package/dist/models/service/s3-static-website/s3-static-website.service.model.js.map +1 -0
- package/dist/models/service/s3-storage/actions/add-s3-storage-access.overlay.action.d.ts +11 -0
- package/dist/models/service/s3-storage/actions/add-s3-storage-access.overlay.action.js +44 -0
- package/dist/models/service/s3-storage/actions/add-s3-storage-access.overlay.action.js.map +1 -0
- package/dist/models/service/s3-storage/actions/add-s3-storage.model.action.d.ts +10 -0
- package/dist/models/service/s3-storage/actions/add-s3-storage.model.action.js +42 -0
- package/dist/models/service/s3-storage/actions/add-s3-storage.model.action.js.map +1 -0
- package/dist/models/service/s3-storage/actions/delete-s3-storage-access.overlay.action.d.ts +11 -0
- package/dist/models/service/s3-storage/actions/delete-s3-storage-access.overlay.action.js +44 -0
- package/dist/models/service/s3-storage/actions/delete-s3-storage-access.overlay.action.js.map +1 -0
- package/dist/models/service/s3-storage/actions/delete-s3-storage.model.action.d.ts +11 -0
- package/dist/models/service/s3-storage/actions/delete-s3-storage.model.action.js +43 -0
- package/dist/models/service/s3-storage/actions/delete-s3-storage.model.action.js.map +1 -0
- package/dist/models/service/s3-storage/s3-storage-access.overlay.d.ts +6 -0
- package/dist/models/service/s3-storage/s3-storage-access.overlay.interface.d.ts +6 -0
- package/dist/models/service/s3-storage/s3-storage-access.overlay.interface.js +2 -0
- package/dist/models/service/s3-storage/s3-storage-access.overlay.interface.js.map +1 -0
- package/dist/models/service/s3-storage/s3-storage-access.overlay.js +22 -0
- package/dist/models/service/s3-storage/s3-storage-access.overlay.js.map +1 -0
- package/dist/models/service/s3-storage/s3-storage.service.interface.d.ts +7 -0
- package/dist/models/service/s3-storage/s3-storage.service.interface.js +2 -0
- package/dist/models/service/s3-storage/s3-storage.service.interface.js.map +1 -0
- package/dist/models/service/s3-storage/s3-storage.service.model.d.ts +23 -0
- package/dist/models/service/s3-storage/s3-storage.service.model.js +107 -0
- package/dist/models/service/s3-storage/s3-storage.service.model.js.map +1 -0
- package/dist/modules/routers/nginx.router.module.d.ts +6 -0
- package/dist/modules/routers/nginx.router.module.js +53 -0
- package/dist/modules/routers/nginx.router.module.js.map +1 -0
- package/dist/resources/ecr/actions/add-ecr-image.resource.action.d.ts +9 -0
- package/dist/resources/ecr/actions/add-ecr-image.resource.action.js +110 -0
- package/dist/resources/ecr/actions/add-ecr-image.resource.action.js.map +1 -0
- package/dist/resources/ecr/actions/delete-ecr-image.resource.action.d.ts +9 -0
- package/dist/resources/ecr/actions/delete-ecr-image.resource.action.js +41 -0
- package/dist/resources/ecr/actions/delete-ecr-image.resource.action.js.map +1 -0
- package/dist/resources/ecr/ecr-image.interface.d.ts +14 -0
- package/dist/resources/ecr/ecr-image.interface.js +2 -0
- package/dist/resources/ecr/ecr-image.interface.js.map +1 -0
- package/dist/resources/ecr/ecr-image.resource.d.ts +6 -0
- package/dist/resources/ecr/ecr-image.resource.js +22 -0
- package/dist/resources/ecr/ecr-image.resource.js.map +1 -0
- package/dist/resources/ecs/actions/add-ecs-cluster.resource.action.d.ts +9 -0
- package/dist/resources/ecs/actions/add-ecs-cluster.resource.action.js +38 -0
- package/dist/resources/ecs/actions/add-ecs-cluster.resource.action.js.map +1 -0
- package/dist/resources/ecs/actions/add-ecs-service.resource.action.d.ts +9 -0
- package/dist/resources/ecs/actions/add-ecs-service.resource.action.js +59 -0
- package/dist/resources/ecs/actions/add-ecs-service.resource.action.js.map +1 -0
- package/dist/resources/ecs/actions/add-ecs-task-definition.resource.action.d.ts +9 -0
- package/dist/resources/ecs/actions/add-ecs-task-definition.resource.action.js +78 -0
- package/dist/resources/ecs/actions/add-ecs-task-definition.resource.action.js.map +1 -0
- package/dist/resources/ecs/actions/delete-ecs-cluster.resource.action.d.ts +9 -0
- package/dist/resources/ecs/actions/delete-ecs-cluster.resource.action.js +36 -0
- package/dist/resources/ecs/actions/delete-ecs-cluster.resource.action.js.map +1 -0
- package/dist/resources/ecs/actions/delete-ecs-service.resource.action.d.ts +9 -0
- package/dist/resources/ecs/actions/delete-ecs-service.resource.action.js +55 -0
- package/dist/resources/ecs/actions/delete-ecs-service.resource.action.js.map +1 -0
- package/dist/resources/ecs/actions/delete-ecs-task-definition.resource.action.d.ts +9 -0
- package/dist/resources/ecs/actions/delete-ecs-task-definition.resource.action.js +43 -0
- package/dist/resources/ecs/actions/delete-ecs-task-definition.resource.action.js.map +1 -0
- package/dist/resources/ecs/ecs-cluster.interface.d.ts +8 -0
- package/dist/resources/ecs/ecs-cluster.interface.js +2 -0
- package/dist/resources/ecs/ecs-cluster.interface.js.map +1 -0
- package/dist/resources/ecs/ecs-cluster.resource.d.ts +6 -0
- package/dist/resources/ecs/ecs-cluster.resource.js +22 -0
- package/dist/resources/ecs/ecs-cluster.resource.js.map +1 -0
- package/dist/resources/ecs/ecs-service.interface.d.ts +8 -0
- package/dist/resources/ecs/ecs-service.interface.js +2 -0
- package/dist/resources/ecs/ecs-service.interface.js.map +1 -0
- package/dist/resources/ecs/ecs-service.resource.d.ts +10 -0
- package/dist/resources/ecs/ecs-service.resource.js +22 -0
- package/dist/resources/ecs/ecs-service.resource.js.map +1 -0
- package/dist/resources/ecs/ecs-task-definition.interface.d.ts +19 -0
- package/dist/resources/ecs/ecs-task-definition.interface.js +2 -0
- package/dist/resources/ecs/ecs-task-definition.interface.js.map +1 -0
- package/dist/resources/ecs/ecs-task-definition.resource.d.ts +9 -0
- package/dist/resources/ecs/ecs-task-definition.resource.js +22 -0
- package/dist/resources/ecs/ecs-task-definition.resource.js.map +1 -0
- package/dist/resources/efs/actions/add-efs.resource.action.d.ts +9 -0
- package/dist/resources/efs/actions/add-efs.resource.action.js +103 -0
- package/dist/resources/efs/actions/add-efs.resource.action.js.map +1 -0
- package/dist/resources/efs/actions/delete-efs.resource.action.d.ts +9 -0
- package/dist/resources/efs/actions/delete-efs.resource.action.js +94 -0
- package/dist/resources/efs/actions/delete-efs.resource.action.js.map +1 -0
- package/dist/resources/efs/efs.interface.d.ts +13 -0
- package/dist/resources/efs/efs.interface.js +2 -0
- package/dist/resources/efs/efs.interface.js.map +1 -0
- package/dist/resources/efs/efs.resource.d.ts +9 -0
- package/dist/resources/efs/efs.resource.js +48 -0
- package/dist/resources/efs/efs.resource.js.map +1 -0
- package/dist/resources/efs/efs.shared-resource.d.ts +6 -0
- package/dist/resources/efs/efs.shared-resource.js +22 -0
- package/dist/resources/efs/efs.shared-resource.js.map +1 -0
- package/dist/resources/iam/actions/add-iam-role.resource.action.d.ts +9 -0
- package/dist/resources/iam/actions/add-iam-role.resource.action.js +42 -0
- package/dist/resources/iam/actions/add-iam-role.resource.action.js.map +1 -0
- package/dist/resources/iam/actions/add-iam-user.resource.action.d.ts +9 -0
- package/dist/resources/iam/actions/add-iam-user.resource.action.js +41 -0
- package/dist/resources/iam/actions/add-iam-user.resource.action.js.map +1 -0
- package/dist/resources/iam/actions/delete-iam-role.resource.action.d.ts +9 -0
- package/dist/resources/iam/actions/delete-iam-role.resource.action.js +36 -0
- package/dist/resources/iam/actions/delete-iam-role.resource.action.js.map +1 -0
- package/dist/resources/iam/actions/delete-iam-user.resource.action.d.ts +9 -0
- package/dist/resources/iam/actions/delete-iam-user.resource.action.js +36 -0
- package/dist/resources/iam/actions/delete-iam-user.resource.action.js.map +1 -0
- package/dist/resources/iam/actions/update-iam-role-with-s3-storage-policy.resource.action.d.ts +9 -0
- package/dist/resources/iam/actions/update-iam-role-with-s3-storage-policy.resource.action.js +93 -0
- package/dist/resources/iam/actions/update-iam-role-with-s3-storage-policy.resource.action.js.map +1 -0
- package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.d.ts +9 -0
- package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.js +93 -0
- package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.js.map +1 -0
- package/dist/resources/iam/iam-role.interface.d.ts +11 -0
- package/dist/resources/iam/iam-role.interface.js +2 -0
- package/dist/resources/iam/iam-role.interface.js.map +1 -0
- package/dist/resources/iam/iam-role.resource.d.ts +15 -0
- package/dist/resources/iam/iam-role.resource.js +37 -0
- package/dist/resources/iam/iam-role.resource.js.map +1 -0
- package/dist/resources/iam/iam-user.interface.d.ts +11 -0
- package/dist/resources/iam/iam-user.interface.js +2 -0
- package/dist/resources/iam/iam-user.interface.js.map +1 -0
- package/dist/resources/iam/iam-user.resource.d.ts +15 -0
- package/dist/resources/iam/iam-user.resource.js +37 -0
- package/dist/resources/iam/iam-user.resource.js.map +1 -0
- package/dist/resources/internet-gateway/actions/add-internet-gateway.resource.action.d.ts +9 -0
- package/dist/resources/internet-gateway/actions/add-internet-gateway.resource.action.js +42 -0
- package/dist/resources/internet-gateway/actions/add-internet-gateway.resource.action.js.map +1 -0
- package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.d.ts +9 -0
- package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.js +43 -0
- package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.js.map +1 -0
- package/dist/resources/internet-gateway/internet-gateway.interface.d.ts +6 -0
- package/dist/resources/internet-gateway/internet-gateway.interface.js +2 -0
- package/dist/resources/internet-gateway/internet-gateway.interface.js.map +1 -0
- package/dist/resources/internet-gateway/internet-gateway.resource.d.ts +7 -0
- package/dist/resources/internet-gateway/internet-gateway.resource.js +22 -0
- package/dist/resources/internet-gateway/internet-gateway.resource.js.map +1 -0
- package/dist/resources/network-acl/actions/add-network-acl.resource.action.d.ts +9 -0
- package/dist/resources/network-acl/actions/add-network-acl.resource.action.js +69 -0
- package/dist/resources/network-acl/actions/add-network-acl.resource.action.js.map +1 -0
- package/dist/resources/network-acl/actions/delete-network-acl.resource.action.d.ts +9 -0
- package/dist/resources/network-acl/actions/delete-network-acl.resource.action.js +41 -0
- package/dist/resources/network-acl/actions/delete-network-acl.resource.action.js.map +1 -0
- package/dist/resources/network-acl/network-acl.interface.d.ts +19 -0
- package/dist/resources/network-acl/network-acl.interface.js +2 -0
- package/dist/resources/network-acl/network-acl.interface.js.map +1 -0
- package/dist/resources/network-acl/network-acl.resource.d.ts +8 -0
- package/dist/resources/network-acl/network-acl.resource.js +22 -0
- package/dist/resources/network-acl/network-acl.resource.js.map +1 -0
- package/dist/resources/route-table/actions/add-route-table.resource.action.d.ts +9 -0
- package/dist/resources/route-table/actions/add-route-table.resource.action.js +57 -0
- package/dist/resources/route-table/actions/add-route-table.resource.action.js.map +1 -0
- package/dist/resources/route-table/actions/delete-route-table.resource.action.d.ts +9 -0
- package/dist/resources/route-table/actions/delete-route-table.resource.action.js +40 -0
- package/dist/resources/route-table/actions/delete-route-table.resource.action.js.map +1 -0
- package/dist/resources/route-table/route-table.interface.d.ts +7 -0
- package/dist/resources/route-table/route-table.interface.js +2 -0
- package/dist/resources/route-table/route-table.interface.js.map +1 -0
- package/dist/resources/route-table/route-table.resource.d.ts +9 -0
- package/dist/resources/route-table/route-table.resource.js +22 -0
- package/dist/resources/route-table/route-table.resource.js.map +1 -0
- package/dist/resources/s3/storage/actions/add-s3-storage.resource.action.d.ts +9 -0
- package/dist/resources/s3/storage/actions/add-s3-storage.resource.action.js +36 -0
- package/dist/resources/s3/storage/actions/add-s3-storage.resource.action.js.map +1 -0
- package/dist/resources/s3/storage/actions/delete-s3-storage.resource.action.d.ts +9 -0
- package/dist/resources/s3/storage/actions/delete-s3-storage.resource.action.js +52 -0
- package/dist/resources/s3/storage/actions/delete-s3-storage.resource.action.js.map +1 -0
- package/dist/resources/s3/storage/actions/update-source-paths-in-s3-storage.resource.action.d.ts +9 -0
- package/dist/resources/s3/storage/actions/update-source-paths-in-s3-storage.resource.action.js +82 -0
- package/dist/resources/s3/storage/actions/update-source-paths-in-s3-storage.resource.action.js.map +1 -0
- package/dist/resources/s3/storage/s3-storage.interface.d.ts +4 -0
- package/dist/resources/s3/storage/s3-storage.interface.js +2 -0
- package/dist/resources/s3/storage/s3-storage.interface.js.map +1 -0
- package/dist/resources/s3/storage/s3-storage.resource.d.ts +9 -0
- package/dist/resources/s3/storage/s3-storage.resource.js +35 -0
- package/dist/resources/s3/storage/s3-storage.resource.js.map +1 -0
- package/dist/resources/s3/website/actions/add-s3-website.resource.action.d.ts +9 -0
- package/dist/resources/s3/website/actions/add-s3-website.resource.action.js +73 -0
- package/dist/resources/s3/website/actions/add-s3-website.resource.action.js.map +1 -0
- package/dist/resources/s3/website/actions/delete-s3-website.resource.action.d.ts +9 -0
- package/dist/resources/s3/website/actions/delete-s3-website.resource.action.js +52 -0
- package/dist/resources/s3/website/actions/delete-s3-website.resource.action.js.map +1 -0
- package/dist/resources/s3/website/actions/update-source-paths-in-s3-website.resource.action.d.ts +9 -0
- package/dist/resources/s3/website/actions/update-source-paths-in-s3-website.resource.action.js +63 -0
- package/dist/resources/s3/website/actions/update-source-paths-in-s3-website.resource.action.js.map +1 -0
- package/dist/resources/s3/website/s3-website.interface.d.ts +9 -0
- package/dist/resources/s3/website/s3-website.interface.js +2 -0
- package/dist/resources/s3/website/s3-website.interface.js.map +1 -0
- package/dist/resources/s3/website/s3-website.resource.d.ts +9 -0
- package/dist/resources/s3/website/s3-website.resource.js +35 -0
- package/dist/resources/s3/website/s3-website.resource.js.map +1 -0
- package/dist/resources/security-group/actions/add-security-group.resource.action.d.ts +9 -0
- package/dist/resources/security-group/actions/add-security-group.resource.action.js +78 -0
- package/dist/resources/security-group/actions/add-security-group.resource.action.js.map +1 -0
- package/dist/resources/security-group/actions/delete-security-group.resource.action.d.ts +9 -0
- package/dist/resources/security-group/actions/delete-security-group.resource.action.js +37 -0
- package/dist/resources/security-group/actions/delete-security-group.resource.action.js.map +1 -0
- package/dist/resources/security-group/security-group.interface.d.ts +13 -0
- package/dist/resources/security-group/security-group.interface.js +2 -0
- package/dist/resources/security-group/security-group.interface.js.map +1 -0
- package/dist/resources/security-group/security-group.resource.d.ts +7 -0
- package/dist/resources/security-group/security-group.resource.js +22 -0
- package/dist/resources/security-group/security-group.resource.js.map +1 -0
- package/dist/resources/subnet/actions/add-subnet.resource.action.d.ts +9 -0
- package/dist/resources/subnet/actions/add-subnet.resource.action.js +42 -0
- package/dist/resources/subnet/actions/add-subnet.resource.action.js.map +1 -0
- package/dist/resources/subnet/actions/delete-subnet.resource.action.d.ts +9 -0
- package/dist/resources/subnet/actions/delete-subnet.resource.action.js +37 -0
- package/dist/resources/subnet/actions/delete-subnet.resource.action.js.map +1 -0
- package/dist/resources/subnet/subnet.interface.d.ts +8 -0
- package/dist/resources/subnet/subnet.interface.js +2 -0
- package/dist/resources/subnet/subnet.interface.js.map +1 -0
- package/dist/resources/subnet/subnet.resource.d.ts +7 -0
- package/dist/resources/subnet/subnet.resource.js +22 -0
- package/dist/resources/subnet/subnet.resource.js.map +1 -0
- package/dist/resources/vpc/actions/add-vpc.resource.action.d.ts +9 -0
- package/dist/resources/vpc/actions/add-vpc.resource.action.js +39 -0
- package/dist/resources/vpc/actions/add-vpc.resource.action.js.map +1 -0
- package/dist/resources/vpc/actions/delete-vpc.resource.action.d.ts +9 -0
- package/dist/resources/vpc/actions/delete-vpc.resource.action.js +37 -0
- package/dist/resources/vpc/actions/delete-vpc.resource.action.js.map +1 -0
- package/dist/resources/vpc/vpc.interface.d.ts +8 -0
- package/dist/resources/vpc/vpc.interface.js +2 -0
- package/dist/resources/vpc/vpc.interface.js.map +1 -0
- package/dist/resources/vpc/vpc.resource.d.ts +6 -0
- package/dist/resources/vpc/vpc.resource.js +22 -0
- package/dist/resources/vpc/vpc.resource.js.map +1 -0
- package/dist/utilities/common/common.utility.d.ts +4 -0
- package/dist/utilities/common/common.utility.js +19 -0
- package/dist/utilities/common/common.utility.js.map +1 -0
- package/dist/utilities/file/file.utility.d.ts +5 -0
- package/dist/utilities/file/file.utility.js +34 -0
- package/dist/utilities/file/file.utility.js.map +1 -0
- package/dist/utilities/process/process.utility.d.ts +5 -0
- package/dist/utilities/process/process.utility.js +14 -0
- package/dist/utilities/process/process.utility.js.map +1 -0
- package/dist/utilities/retry/retry.utility.d.ts +11 -0
- package/dist/utilities/retry/retry.utility.js +25 -0
- package/dist/utilities/retry/retry.utility.js.map +1 -0
- package/package.json +73 -0
|
@@ -0,0 +1,93 @@
|
|
|
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
|
+
import { AttachUserPolicyCommand, CreatePolicyCommand, DeletePolicyCommand, DetachUserPolicyCommand, IAMClient, } from '@aws-sdk/client-iam';
|
|
8
|
+
import { Action, Container, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
9
|
+
let UpdateIamUserWithS3StoragePolicyResourceAction = class UpdateIamUserWithS3StoragePolicyResourceAction {
|
|
10
|
+
ACTION_NAME = 'UpdateIamUserWithS3StoragePolicyResourceAction';
|
|
11
|
+
filter(diff) {
|
|
12
|
+
return (diff.action === DiffAction.UPDATE &&
|
|
13
|
+
diff.model.MODEL_NAME === 'iam-user' &&
|
|
14
|
+
diff.value.overlay.MODEL_NAME === 's3-storage-access');
|
|
15
|
+
}
|
|
16
|
+
async handle(diff) {
|
|
17
|
+
const iamUser = diff.model;
|
|
18
|
+
const policyAction = diff.value.action;
|
|
19
|
+
const overlayId = diff.field;
|
|
20
|
+
const overlayProperties = diff.value.overlay
|
|
21
|
+
.properties;
|
|
22
|
+
const response = iamUser.response;
|
|
23
|
+
const iamClient = await Container.get(IAMClient);
|
|
24
|
+
if (policyAction === 'add') {
|
|
25
|
+
const policyDocument = [];
|
|
26
|
+
if (overlayProperties.allowRead) {
|
|
27
|
+
policyDocument.push({
|
|
28
|
+
Action: [
|
|
29
|
+
's3:GetObject',
|
|
30
|
+
's3:GetObjectAttributes',
|
|
31
|
+
's3:GetObjectTagging',
|
|
32
|
+
's3:GetObjectVersionAcl',
|
|
33
|
+
's3:GetObjectVersionAttributes',
|
|
34
|
+
's3:GetObjectVersionTagging',
|
|
35
|
+
's3:ListBucket',
|
|
36
|
+
],
|
|
37
|
+
Effect: 'Allow',
|
|
38
|
+
Resource: [
|
|
39
|
+
`arn:aws:s3:::${overlayProperties.bucketName}/${overlayProperties.remoteDirectoryPath}`,
|
|
40
|
+
`arn:aws:s3:::${overlayProperties.bucketName}/${overlayProperties.remoteDirectoryPath}/*`,
|
|
41
|
+
],
|
|
42
|
+
Sid: 'Allow read',
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
if (overlayProperties.allowWrite) {
|
|
46
|
+
policyDocument.push({
|
|
47
|
+
Action: ['s3:PutObject', 's3:DeleteObjectVersion', 's3:DeleteObject'],
|
|
48
|
+
Effect: 'Allow',
|
|
49
|
+
Resource: [`arn:aws:s3:::${overlayProperties.bucketName}/${overlayProperties.remoteDirectoryPath}/*`],
|
|
50
|
+
Sid: 'Allow write',
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
const data = await iamClient.send(new CreatePolicyCommand({
|
|
54
|
+
PolicyDocument: JSON.stringify({
|
|
55
|
+
Statement: policyDocument,
|
|
56
|
+
}),
|
|
57
|
+
PolicyName: overlayId,
|
|
58
|
+
}));
|
|
59
|
+
await iamClient.send(new AttachUserPolicyCommand({
|
|
60
|
+
PolicyArn: data.Policy.Arn,
|
|
61
|
+
UserName: response.UserName,
|
|
62
|
+
}));
|
|
63
|
+
response.policies[overlayId] = [data.Policy.Arn];
|
|
64
|
+
}
|
|
65
|
+
else if (policyAction === 'delete') {
|
|
66
|
+
const policies = response.policies[overlayId] || [];
|
|
67
|
+
await Promise.all(policies.map(async (policyArn) => {
|
|
68
|
+
await iamClient.send(new DetachUserPolicyCommand({
|
|
69
|
+
PolicyArn: policyArn,
|
|
70
|
+
UserName: response.UserName,
|
|
71
|
+
}));
|
|
72
|
+
await iamClient.send(new DeletePolicyCommand({
|
|
73
|
+
PolicyArn: policyArn,
|
|
74
|
+
}));
|
|
75
|
+
}));
|
|
76
|
+
delete response.policies[overlayId];
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
UpdateIamUserWithS3StoragePolicyResourceAction = __decorate([
|
|
81
|
+
Action(ModelType.RESOURCE)
|
|
82
|
+
], UpdateIamUserWithS3StoragePolicyResourceAction);
|
|
83
|
+
export { UpdateIamUserWithS3StoragePolicyResourceAction };
|
|
84
|
+
let UpdateIamUserWithS3StoragePolicyResourceActionFactory = class UpdateIamUserWithS3StoragePolicyResourceActionFactory {
|
|
85
|
+
static async create() {
|
|
86
|
+
return new UpdateIamUserWithS3StoragePolicyResourceAction();
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
UpdateIamUserWithS3StoragePolicyResourceActionFactory = __decorate([
|
|
90
|
+
Factory(UpdateIamUserWithS3StoragePolicyResourceAction)
|
|
91
|
+
], UpdateIamUserWithS3StoragePolicyResourceActionFactory);
|
|
92
|
+
export { UpdateIamUserWithS3StoragePolicyResourceActionFactory };
|
|
93
|
+
//# sourceMappingURL=update-iam-user-with-s3-storage-policy.resource.action.js.map
|
package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-iam-user-with-s3-storage-policy.resource.action.js","sourceRoot":"","sources":["../../../../src/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iam-role.interface.js","sourceRoot":"","sources":["../../../src/resources/iam/iam-role.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { AResource, Diff, UnknownOverlay } from '@quadnix/octo';
|
|
2
|
+
import { IIamRoleProperties } from './iam-role.interface.js';
|
|
3
|
+
export type IamRolePolicyDiff = {
|
|
4
|
+
[key: string]: {
|
|
5
|
+
action: 'add' | 'delete';
|
|
6
|
+
overlay: UnknownOverlay;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
export declare class IamRole extends AResource<IamRole> {
|
|
10
|
+
readonly MODEL_NAME: string;
|
|
11
|
+
private readonly policyDiff;
|
|
12
|
+
constructor(resourceId: string, properties: IIamRoleProperties);
|
|
13
|
+
diff(previous?: IamRole): Promise<Diff[]>;
|
|
14
|
+
updatePolicyDiff(policyDiff: IamRolePolicyDiff): void;
|
|
15
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
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 { AResource, Diff, DiffAction, Resource } from '@quadnix/octo';
|
|
11
|
+
let IamRole = class IamRole extends AResource {
|
|
12
|
+
MODEL_NAME = 'iam-role';
|
|
13
|
+
policyDiff = {};
|
|
14
|
+
constructor(resourceId, properties) {
|
|
15
|
+
super(resourceId, properties, []);
|
|
16
|
+
}
|
|
17
|
+
async diff(previous) {
|
|
18
|
+
const diffs = await super.diff(previous);
|
|
19
|
+
if (this.policyDiff && Object.keys(this.policyDiff).length > 0) {
|
|
20
|
+
for (const key of Object.keys(this.policyDiff)) {
|
|
21
|
+
diffs.push(new Diff(this, DiffAction.UPDATE, key, this.policyDiff[key]));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return diffs;
|
|
25
|
+
}
|
|
26
|
+
updatePolicyDiff(policyDiff) {
|
|
27
|
+
for (const key of Object.keys(policyDiff)) {
|
|
28
|
+
this.policyDiff[key] = { ...policyDiff[key] };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
IamRole = __decorate([
|
|
33
|
+
Resource(),
|
|
34
|
+
__metadata("design:paramtypes", [String, Object])
|
|
35
|
+
], IamRole);
|
|
36
|
+
export { IamRole };
|
|
37
|
+
//# sourceMappingURL=iam-role.resource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iam-role.resource.js","sourceRoot":"","sources":["../../../src/resources/iam/iam-role.resource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAa,QAAQ,EAAkB,MAAM,eAAe,CAAC;AAOjG,IACa,OAAO,GADpB,MACa,OAAQ,SAAQ,SAAkB;IACpC,UAAU,GAAW,UAAU,CAAC;IAExB,UAAU,GAAsB,EAAE,CAAC;IAEpD,YAAY,UAAkB,EAAE,UAA8B;QAC5D,KAAK,CAAC,UAAU,EAAE,UAAgD,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAEQ,KAAK,CAAC,IAAI,CAAC,QAAkB;QACpC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEzC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBAC9C,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC1E;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,UAA6B;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;SAC/C;IACH,CAAC;CACF,CAAA;AA1BY,OAAO;IADnB,QAAQ,EAAE;;GACE,OAAO,CA0BnB;SA1BY,OAAO"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iam-user.interface.js","sourceRoot":"","sources":["../../../src/resources/iam/iam-user.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { AResource, Diff, UnknownOverlay } from '@quadnix/octo';
|
|
2
|
+
import { IIamUserProperties } from './iam-user.interface.js';
|
|
3
|
+
export type IamUserPolicyDiff = {
|
|
4
|
+
[key: string]: {
|
|
5
|
+
action: 'add' | 'delete';
|
|
6
|
+
overlay: UnknownOverlay;
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
export declare class IamUser extends AResource<IamUser> {
|
|
10
|
+
readonly MODEL_NAME: string;
|
|
11
|
+
private readonly policyDiff;
|
|
12
|
+
constructor(resourceId: string, properties: IIamUserProperties);
|
|
13
|
+
diff(previous?: IamUser): Promise<Diff[]>;
|
|
14
|
+
updatePolicyDiff(policyDiff: IamUserPolicyDiff): void;
|
|
15
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
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 { AResource, Diff, DiffAction, Resource } from '@quadnix/octo';
|
|
11
|
+
let IamUser = class IamUser extends AResource {
|
|
12
|
+
MODEL_NAME = 'iam-user';
|
|
13
|
+
policyDiff = {};
|
|
14
|
+
constructor(resourceId, properties) {
|
|
15
|
+
super(resourceId, properties, []);
|
|
16
|
+
}
|
|
17
|
+
async diff(previous) {
|
|
18
|
+
const diffs = await super.diff(previous);
|
|
19
|
+
if (this.policyDiff && Object.keys(this.policyDiff).length > 0) {
|
|
20
|
+
for (const key of Object.keys(this.policyDiff)) {
|
|
21
|
+
diffs.push(new Diff(this, DiffAction.UPDATE, key, this.policyDiff[key]));
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return diffs;
|
|
25
|
+
}
|
|
26
|
+
updatePolicyDiff(policyDiff) {
|
|
27
|
+
for (const key of Object.keys(policyDiff)) {
|
|
28
|
+
this.policyDiff[key] = { ...policyDiff[key] };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
IamUser = __decorate([
|
|
33
|
+
Resource(),
|
|
34
|
+
__metadata("design:paramtypes", [String, Object])
|
|
35
|
+
], IamUser);
|
|
36
|
+
export { IamUser };
|
|
37
|
+
//# sourceMappingURL=iam-user.resource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"iam-user.resource.js","sourceRoot":"","sources":["../../../src/resources/iam/iam-user.resource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAa,QAAQ,EAAkB,MAAM,eAAe,CAAC;AAOjG,IACa,OAAO,GADpB,MACa,OAAQ,SAAQ,SAAkB;IACpC,UAAU,GAAW,UAAU,CAAC;IAExB,UAAU,GAAsB,EAAE,CAAC;IAEpD,YAAY,UAAkB,EAAE,UAA8B;QAC5D,KAAK,CAAC,UAAU,EAAE,UAAgD,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAEQ,KAAK,CAAC,IAAI,CAAC,QAAkB;QACpC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEzC,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBAC9C,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC1E;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,UAA6B;QAC5C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;SAC/C;IACH,CAAC;CACF,CAAA;AA1BY,OAAO;IADnB,QAAQ,EAAE;;GACE,OAAO,CA0BnB;SA1BY,OAAO"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Diff, IResourceAction } from '@quadnix/octo';
|
|
2
|
+
export declare class AddInternetGatewayResourceAction implements IResourceAction {
|
|
3
|
+
readonly ACTION_NAME: string;
|
|
4
|
+
filter(diff: Diff): boolean;
|
|
5
|
+
handle(diff: Diff): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class AddInternetGatewayResourceActionFactory {
|
|
8
|
+
static create(): Promise<AddInternetGatewayResourceAction>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
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
|
+
import { AttachInternetGatewayCommand, CreateInternetGatewayCommand, EC2Client } from '@aws-sdk/client-ec2';
|
|
8
|
+
import { Action, Container, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
9
|
+
let AddInternetGatewayResourceAction = class AddInternetGatewayResourceAction {
|
|
10
|
+
ACTION_NAME = 'AddInternetGatewayResourceAction';
|
|
11
|
+
filter(diff) {
|
|
12
|
+
return diff.action === DiffAction.ADD && diff.model.MODEL_NAME === 'internet-gateway';
|
|
13
|
+
}
|
|
14
|
+
async handle(diff) {
|
|
15
|
+
const internetGateway = diff.model;
|
|
16
|
+
const properties = internetGateway.properties;
|
|
17
|
+
const response = internetGateway.response;
|
|
18
|
+
const ec2Client = await Container.get(EC2Client, { args: [properties.awsRegionId] });
|
|
19
|
+
const vpc = internetGateway.getParents('vpc')['vpc'][0].to;
|
|
20
|
+
const vpcResponse = vpc.response;
|
|
21
|
+
const internetGWOutput = await ec2Client.send(new CreateInternetGatewayCommand({}));
|
|
22
|
+
await ec2Client.send(new AttachInternetGatewayCommand({
|
|
23
|
+
InternetGatewayId: internetGWOutput.InternetGateway.InternetGatewayId,
|
|
24
|
+
VpcId: vpcResponse.VpcId,
|
|
25
|
+
}));
|
|
26
|
+
response.InternetGatewayId = internetGWOutput.InternetGateway.InternetGatewayId;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
AddInternetGatewayResourceAction = __decorate([
|
|
30
|
+
Action(ModelType.RESOURCE)
|
|
31
|
+
], AddInternetGatewayResourceAction);
|
|
32
|
+
export { AddInternetGatewayResourceAction };
|
|
33
|
+
let AddInternetGatewayResourceActionFactory = class AddInternetGatewayResourceActionFactory {
|
|
34
|
+
static async create() {
|
|
35
|
+
return new AddInternetGatewayResourceAction();
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
AddInternetGatewayResourceActionFactory = __decorate([
|
|
39
|
+
Factory(AddInternetGatewayResourceAction)
|
|
40
|
+
], AddInternetGatewayResourceActionFactory);
|
|
41
|
+
export { AddInternetGatewayResourceActionFactory };
|
|
42
|
+
//# sourceMappingURL=add-internet-gateway.resource.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-internet-gateway.resource.action.js","sourceRoot":"","sources":["../../../../src/resources/internet-gateway/actions/add-internet-gateway.resource.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,4BAA4B,EAAE,4BAA4B,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC5G,OAAO,EAAE,MAAM,EAAE,SAAS,EAAQ,UAAU,EAAE,OAAO,EAAmB,SAAS,EAAE,MAAM,eAAe,CAAC;AAOzG,IAAa,gCAAgC,GAA7C,MAAa,gCAAgC;IAClC,WAAW,GAAW,kCAAkC,CAAC;IAElE,MAAM,CAAC,IAAU;QACf,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,kBAAkB,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU;QAErB,MAAM,eAAe,GAAG,IAAI,CAAC,KAAwB,CAAC;QACtD,MAAM,UAAU,GAAG,eAAe,CAAC,UAAmD,CAAC;QACvF,MAAM,QAAQ,GAAG,eAAe,CAAC,QAA+C,CAAC;QAGjF,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAErF,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAS,CAAC;QAClE,MAAM,WAAW,GAAG,GAAG,CAAC,QAAmC,CAAC;QAG5D,MAAM,gBAAgB,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,4BAA4B,CAAC,EAAE,CAAC,CAAC,CAAC;QAGpF,MAAM,SAAS,CAAC,IAAI,CAClB,IAAI,4BAA4B,CAAC;YAC/B,iBAAiB,EAAE,gBAAiB,CAAC,eAAgB,CAAC,iBAAiB;YACvE,KAAK,EAAE,WAAW,CAAC,KAAK;SACzB,CAAC,CACH,CAAC;QAGF,QAAQ,CAAC,iBAAiB,GAAG,gBAAiB,CAAC,eAAgB,CAAC,iBAA2B,CAAC;IAC9F,CAAC;CACF,CAAA;AAjCY,gCAAgC;IAD5C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;GACd,gCAAgC,CAiC5C;SAjCY,gCAAgC;AAoC7C,IAAa,uCAAuC,GAApD,MAAa,uCAAuC;IAClD,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,gCAAgC,EAAE,CAAC;IAChD,CAAC;CACF,CAAA;AAJY,uCAAuC;IADnD,OAAO,CAAmC,gCAAgC,CAAC;GAC/D,uCAAuC,CAInD;SAJY,uCAAuC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Diff, IResourceAction } from '@quadnix/octo';
|
|
2
|
+
export declare class DeleteInternetGatewayResourceAction implements IResourceAction {
|
|
3
|
+
readonly ACTION_NAME: string;
|
|
4
|
+
filter(diff: Diff): boolean;
|
|
5
|
+
handle(diff: Diff): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class DeleteInternetGatewayResourceActionFactory {
|
|
8
|
+
static create(): Promise<DeleteInternetGatewayResourceAction>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
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
|
+
import { DeleteInternetGatewayCommand, DetachInternetGatewayCommand, EC2Client } from '@aws-sdk/client-ec2';
|
|
8
|
+
import { Action, Container, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
9
|
+
let DeleteInternetGatewayResourceAction = class DeleteInternetGatewayResourceAction {
|
|
10
|
+
ACTION_NAME = 'DeleteInternetGatewayResourceAction';
|
|
11
|
+
filter(diff) {
|
|
12
|
+
return diff.action === DiffAction.DELETE && diff.model.MODEL_NAME === 'internet-gateway';
|
|
13
|
+
}
|
|
14
|
+
async handle(diff) {
|
|
15
|
+
const internetGateway = diff.model;
|
|
16
|
+
const properties = internetGateway.properties;
|
|
17
|
+
const response = internetGateway.response;
|
|
18
|
+
const ec2Client = await Container.get(EC2Client, { args: [properties.awsRegionId] });
|
|
19
|
+
const vpc = internetGateway.getParents('vpc')['vpc'][0].to;
|
|
20
|
+
const vpcResponse = vpc.response;
|
|
21
|
+
await ec2Client.send(new DetachInternetGatewayCommand({
|
|
22
|
+
InternetGatewayId: response.InternetGatewayId,
|
|
23
|
+
VpcId: vpcResponse.VpcId,
|
|
24
|
+
}));
|
|
25
|
+
await ec2Client.send(new DeleteInternetGatewayCommand({
|
|
26
|
+
InternetGatewayId: response.InternetGatewayId,
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
DeleteInternetGatewayResourceAction = __decorate([
|
|
31
|
+
Action(ModelType.RESOURCE)
|
|
32
|
+
], DeleteInternetGatewayResourceAction);
|
|
33
|
+
export { DeleteInternetGatewayResourceAction };
|
|
34
|
+
let DeleteInternetGatewayResourceActionFactory = class DeleteInternetGatewayResourceActionFactory {
|
|
35
|
+
static async create() {
|
|
36
|
+
return new DeleteInternetGatewayResourceAction();
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
DeleteInternetGatewayResourceActionFactory = __decorate([
|
|
40
|
+
Factory(DeleteInternetGatewayResourceAction)
|
|
41
|
+
], DeleteInternetGatewayResourceActionFactory);
|
|
42
|
+
export { DeleteInternetGatewayResourceActionFactory };
|
|
43
|
+
//# sourceMappingURL=delete-internet-gateway.resource.action.js.map
|
package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-internet-gateway.resource.action.js","sourceRoot":"","sources":["../../../../src/resources/internet-gateway/actions/delete-internet-gateway.resource.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,4BAA4B,EAAE,4BAA4B,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC5G,OAAO,EAAE,MAAM,EAAE,SAAS,EAAQ,UAAU,EAAE,OAAO,EAAmB,SAAS,EAAE,MAAM,eAAe,CAAC;AAOzG,IAAa,mCAAmC,GAAhD,MAAa,mCAAmC;IACrC,WAAW,GAAW,qCAAqC,CAAC;IAErE,MAAM,CAAC,IAAU;QACf,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,kBAAkB,CAAC;IAC3F,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU;QAErB,MAAM,eAAe,GAAG,IAAI,CAAC,KAAwB,CAAC;QACtD,MAAM,UAAU,GAAG,eAAe,CAAC,UAAmD,CAAC;QACvF,MAAM,QAAQ,GAAG,eAAe,CAAC,QAA+C,CAAC;QAGjF,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAErF,MAAM,GAAG,GAAG,eAAe,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAS,CAAC;QAClE,MAAM,WAAW,GAAG,GAAG,CAAC,QAAmC,CAAC;QAG5D,MAAM,SAAS,CAAC,IAAI,CAClB,IAAI,4BAA4B,CAAC;YAC/B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;YAC7C,KAAK,EAAE,WAAW,CAAC,KAAK;SACzB,CAAC,CACH,CAAC;QAGF,MAAM,SAAS,CAAC,IAAI,CAClB,IAAI,4BAA4B,CAAC;YAC/B,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB;SAC9C,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AAlCY,mCAAmC;IAD/C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;GACd,mCAAmC,CAkC/C;SAlCY,mCAAmC;AAqChD,IAAa,0CAA0C,GAAvD,MAAa,0CAA0C;IACrD,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,mCAAmC,EAAE,CAAC;IACnD,CAAC;CACF,CAAA;AAJY,0CAA0C;IADtD,OAAO,CAAsC,mCAAmC,CAAC;GACrE,0CAA0C,CAItD;SAJY,0CAA0C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internet-gateway.interface.js","sourceRoot":"","sources":["../../../src/resources/internet-gateway/internet-gateway.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { AResource } from '@quadnix/octo';
|
|
2
|
+
import { Vpc } from '../vpc/vpc.resource.js';
|
|
3
|
+
import { IInternetGatewayProperties } from './internet-gateway.interface.js';
|
|
4
|
+
export declare class InternetGateway extends AResource<InternetGateway> {
|
|
5
|
+
readonly MODEL_NAME: string;
|
|
6
|
+
constructor(resourceId: string, properties: IInternetGatewayProperties, parents: [Vpc]);
|
|
7
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
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 { AResource, Resource } from '@quadnix/octo';
|
|
11
|
+
let InternetGateway = class InternetGateway extends AResource {
|
|
12
|
+
MODEL_NAME = 'internet-gateway';
|
|
13
|
+
constructor(resourceId, properties, parents) {
|
|
14
|
+
super(resourceId, properties, parents);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
InternetGateway = __decorate([
|
|
18
|
+
Resource(),
|
|
19
|
+
__metadata("design:paramtypes", [String, Object, Array])
|
|
20
|
+
], InternetGateway);
|
|
21
|
+
export { InternetGateway };
|
|
22
|
+
//# sourceMappingURL=internet-gateway.resource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internet-gateway.resource.js","sourceRoot":"","sources":["../../../src/resources/internet-gateway/internet-gateway.resource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAa,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI/D,IACa,eAAe,GAD5B,MACa,eAAgB,SAAQ,SAA0B;IACpD,UAAU,GAAW,kBAAkB,CAAC;IAEjD,YAAY,UAAkB,EAAE,UAAsC,EAAE,OAAc;QACpF,KAAK,CAAC,UAAU,EAAE,UAAgD,EAAE,OAAO,CAAC,CAAC;IAC/E,CAAC;CACF,CAAA;AANY,eAAe;IAD3B,QAAQ,EAAE;;GACE,eAAe,CAM3B;SANY,eAAe"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Diff, IResourceAction } from '@quadnix/octo';
|
|
2
|
+
export declare class AddNetworkAclResourceAction implements IResourceAction {
|
|
3
|
+
readonly ACTION_NAME: string;
|
|
4
|
+
filter(diff: Diff): boolean;
|
|
5
|
+
handle(diff: Diff): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class AddNetworkAclResourceActionFactory {
|
|
8
|
+
static create(): Promise<AddNetworkAclResourceAction>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
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
|
+
import { CreateNetworkAclCommand, CreateNetworkAclEntryCommand, DescribeNetworkAclsCommand, EC2Client, ReplaceNetworkAclAssociationCommand, } from '@aws-sdk/client-ec2';
|
|
8
|
+
import { Action, Container, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
9
|
+
let AddNetworkAclResourceAction = class AddNetworkAclResourceAction {
|
|
10
|
+
ACTION_NAME = 'AddNetworkAclResourceAction';
|
|
11
|
+
filter(diff) {
|
|
12
|
+
return diff.action === DiffAction.ADD && diff.model.MODEL_NAME === 'network-acl';
|
|
13
|
+
}
|
|
14
|
+
async handle(diff) {
|
|
15
|
+
const networkAcl = diff.model;
|
|
16
|
+
const properties = networkAcl.properties;
|
|
17
|
+
const response = networkAcl.response;
|
|
18
|
+
const ec2Client = await Container.get(EC2Client, { args: [properties.awsRegionId] });
|
|
19
|
+
const parents = networkAcl.getParents();
|
|
20
|
+
const vpc = parents['vpc'][0].to;
|
|
21
|
+
const vpcResponse = vpc.response;
|
|
22
|
+
const subnet = parents['subnet'][0].to;
|
|
23
|
+
const subnetResponse = subnet.response;
|
|
24
|
+
const defaultNACLOutput = await ec2Client.send(new DescribeNetworkAclsCommand({
|
|
25
|
+
Filters: [
|
|
26
|
+
{
|
|
27
|
+
Name: 'association.subnet-id',
|
|
28
|
+
Values: [subnetResponse.SubnetId],
|
|
29
|
+
},
|
|
30
|
+
],
|
|
31
|
+
}));
|
|
32
|
+
const association = defaultNACLOutput.NetworkAcls[0].Associations.find((a) => a.SubnetId === subnetResponse.SubnetId);
|
|
33
|
+
const naclOutput = await ec2Client.send(new CreateNetworkAclCommand({
|
|
34
|
+
VpcId: vpcResponse.VpcId,
|
|
35
|
+
}));
|
|
36
|
+
await Promise.all(properties.entries.map((p) => {
|
|
37
|
+
return ec2Client.send(new CreateNetworkAclEntryCommand({
|
|
38
|
+
CidrBlock: p.CidrBlock,
|
|
39
|
+
Egress: p.Egress,
|
|
40
|
+
NetworkAclId: naclOutput.NetworkAcl.NetworkAclId,
|
|
41
|
+
PortRange: { From: p.PortRange.From, To: p.PortRange.To },
|
|
42
|
+
Protocol: p.Protocol,
|
|
43
|
+
RuleAction: p.RuleAction,
|
|
44
|
+
RuleNumber: p.RuleNumber,
|
|
45
|
+
}));
|
|
46
|
+
}));
|
|
47
|
+
const newAssociation = await ec2Client.send(new ReplaceNetworkAclAssociationCommand({
|
|
48
|
+
AssociationId: association.NetworkAclAssociationId,
|
|
49
|
+
NetworkAclId: naclOutput.NetworkAcl.NetworkAclId,
|
|
50
|
+
}));
|
|
51
|
+
response.associationId = newAssociation.NewAssociationId;
|
|
52
|
+
response.defaultNetworkAclId = defaultNACLOutput.NetworkAcls[0].NetworkAclId;
|
|
53
|
+
response.NetworkAclId = naclOutput.NetworkAcl.NetworkAclId;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
AddNetworkAclResourceAction = __decorate([
|
|
57
|
+
Action(ModelType.RESOURCE)
|
|
58
|
+
], AddNetworkAclResourceAction);
|
|
59
|
+
export { AddNetworkAclResourceAction };
|
|
60
|
+
let AddNetworkAclResourceActionFactory = class AddNetworkAclResourceActionFactory {
|
|
61
|
+
static async create() {
|
|
62
|
+
return new AddNetworkAclResourceAction();
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
AddNetworkAclResourceActionFactory = __decorate([
|
|
66
|
+
Factory(AddNetworkAclResourceAction)
|
|
67
|
+
], AddNetworkAclResourceActionFactory);
|
|
68
|
+
export { AddNetworkAclResourceActionFactory };
|
|
69
|
+
//# sourceMappingURL=add-network-acl.resource.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-network-acl.resource.action.js","sourceRoot":"","sources":["../../../../src/resources/network-acl/actions/add-network-acl.resource.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Diff, IResourceAction } from '@quadnix/octo';
|
|
2
|
+
export declare class DeleteNetworkAclResourceAction implements IResourceAction {
|
|
3
|
+
readonly ACTION_NAME: string;
|
|
4
|
+
filter(diff: Diff): boolean;
|
|
5
|
+
handle(diff: Diff): Promise<void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class DeleteNetworkAclResourceActionFactory {
|
|
8
|
+
static create(): Promise<DeleteNetworkAclResourceAction>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
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
|
+
import { DeleteNetworkAclCommand, EC2Client, ReplaceNetworkAclAssociationCommand } from '@aws-sdk/client-ec2';
|
|
8
|
+
import { Action, Container, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
9
|
+
let DeleteNetworkAclResourceAction = class DeleteNetworkAclResourceAction {
|
|
10
|
+
ACTION_NAME = 'DeleteNetworkAclResourceAction';
|
|
11
|
+
filter(diff) {
|
|
12
|
+
return diff.action === DiffAction.DELETE && diff.model.MODEL_NAME === 'network-acl';
|
|
13
|
+
}
|
|
14
|
+
async handle(diff) {
|
|
15
|
+
const networkAcl = diff.model;
|
|
16
|
+
const properties = networkAcl.properties;
|
|
17
|
+
const response = networkAcl.response;
|
|
18
|
+
const ec2Client = await Container.get(EC2Client, { args: [properties.awsRegionId] });
|
|
19
|
+
await ec2Client.send(new ReplaceNetworkAclAssociationCommand({
|
|
20
|
+
AssociationId: response.associationId,
|
|
21
|
+
NetworkAclId: response.defaultNetworkAclId,
|
|
22
|
+
}));
|
|
23
|
+
await ec2Client.send(new DeleteNetworkAclCommand({
|
|
24
|
+
NetworkAclId: response.NetworkAclId,
|
|
25
|
+
}));
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
DeleteNetworkAclResourceAction = __decorate([
|
|
29
|
+
Action(ModelType.RESOURCE)
|
|
30
|
+
], DeleteNetworkAclResourceAction);
|
|
31
|
+
export { DeleteNetworkAclResourceAction };
|
|
32
|
+
let DeleteNetworkAclResourceActionFactory = class DeleteNetworkAclResourceActionFactory {
|
|
33
|
+
static async create() {
|
|
34
|
+
return new DeleteNetworkAclResourceAction();
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
DeleteNetworkAclResourceActionFactory = __decorate([
|
|
38
|
+
Factory(DeleteNetworkAclResourceAction)
|
|
39
|
+
], DeleteNetworkAclResourceActionFactory);
|
|
40
|
+
export { DeleteNetworkAclResourceActionFactory };
|
|
41
|
+
//# sourceMappingURL=delete-network-acl.resource.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delete-network-acl.resource.action.js","sourceRoot":"","sources":["../../../../src/resources/network-acl/actions/delete-network-acl.resource.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,mCAAmC,EAAE,MAAM,qBAAqB,CAAC;AAC9G,OAAO,EAAE,MAAM,EAAE,SAAS,EAAQ,UAAU,EAAE,OAAO,EAAmB,SAAS,EAAE,MAAM,eAAe,CAAC;AAKzG,IAAa,8BAA8B,GAA3C,MAAa,8BAA8B;IAChC,WAAW,GAAW,gCAAgC,CAAC;IAEhE,MAAM,CAAC,IAAU;QACf,OAAO,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,aAAa,CAAC;IACtF,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU;QAErB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAmB,CAAC;QAC5C,MAAM,UAAU,GAAG,UAAU,CAAC,UAA8C,CAAC;QAC7E,MAAM,QAAQ,GAAG,UAAU,CAAC,QAA0C,CAAC;QAGvE,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAGrF,MAAM,SAAS,CAAC,IAAI,CAClB,IAAI,mCAAmC,CAAC;YACtC,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,YAAY,EAAE,QAAQ,CAAC,mBAAmB;SAC3C,CAAC,CACH,CAAC;QAGF,MAAM,SAAS,CAAC,IAAI,CAClB,IAAI,uBAAuB,CAAC;YAC1B,YAAY,EAAE,QAAQ,CAAC,YAAY;SACpC,CAAC,CACH,CAAC;IACJ,CAAC;CACF,CAAA;AA/BY,8BAA8B;IAD1C,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;GACd,8BAA8B,CA+B1C;SA/BY,8BAA8B;AAkC3C,IAAa,qCAAqC,GAAlD,MAAa,qCAAqC;IAChD,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,8BAA8B,EAAE,CAAC;IAC9C,CAAC;CACF,CAAA;AAJY,qCAAqC;IADjD,OAAO,CAAiC,8BAA8B,CAAC;GAC3D,qCAAqC,CAIjD;SAJY,qCAAqC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface INetworkAclProperties {
|
|
2
|
+
awsRegionId: string;
|
|
3
|
+
entries: {
|
|
4
|
+
CidrBlock: string;
|
|
5
|
+
Egress: boolean;
|
|
6
|
+
PortRange: {
|
|
7
|
+
From: number;
|
|
8
|
+
To: number;
|
|
9
|
+
};
|
|
10
|
+
Protocol: string;
|
|
11
|
+
RuleAction: 'allow' | 'deny';
|
|
12
|
+
RuleNumber: number;
|
|
13
|
+
}[];
|
|
14
|
+
}
|
|
15
|
+
export interface INetworkAclResponse {
|
|
16
|
+
associationId: string;
|
|
17
|
+
defaultNetworkAclId: string;
|
|
18
|
+
NetworkAclId: string;
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"network-acl.interface.js","sourceRoot":"","sources":["../../../src/resources/network-acl/network-acl.interface.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { AResource } from '@quadnix/octo';
|
|
2
|
+
import { Subnet } from '../subnet/subnet.resource.js';
|
|
3
|
+
import { Vpc } from '../vpc/vpc.resource.js';
|
|
4
|
+
import { INetworkAclProperties } from './network-acl.interface.js';
|
|
5
|
+
export declare class NetworkAcl extends AResource<NetworkAcl> {
|
|
6
|
+
readonly MODEL_NAME: string;
|
|
7
|
+
constructor(resourceId: string, properties: INetworkAclProperties, parents: [Vpc, Subnet]);
|
|
8
|
+
}
|