@quadnix/octo-aws-cdk 0.0.6 → 0.0.8
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 +4 -2
- package/dist/anchors/ecs-service.anchor.d.ts +11 -0
- package/dist/anchors/ecs-service.anchor.js +21 -0
- package/dist/anchors/ecs-service.anchor.js.map +1 -0
- package/dist/anchors/environment-variables.anchor.d.ts +10 -0
- package/dist/anchors/environment-variables.anchor.js +21 -0
- package/dist/anchors/environment-variables.anchor.js.map +1 -0
- package/dist/anchors/iam-role.anchor.d.ts +11 -0
- package/dist/anchors/{iam-role.anchor.model.js → iam-role.anchor.js} +4 -4
- package/dist/anchors/iam-role.anchor.js.map +1 -0
- package/dist/anchors/iam-user.anchor.d.ts +11 -0
- package/dist/anchors/{iam-user.anchor.model.js → iam-user.anchor.js} +4 -4
- package/dist/anchors/iam-user.anchor.js.map +1 -0
- package/dist/anchors/region-filesystem.anchor.d.ts +11 -0
- package/dist/anchors/region-filesystem.anchor.js +21 -0
- package/dist/anchors/region-filesystem.anchor.js.map +1 -0
- package/dist/anchors/s3-directory.anchor.d.ts +9 -0
- package/dist/anchors/s3-directory.anchor.js +21 -0
- package/dist/anchors/s3-directory.anchor.js.map +1 -0
- package/dist/anchors/security-group.anchor.d.ts +20 -0
- package/dist/anchors/security-group.anchor.js +21 -0
- package/dist/anchors/security-group.anchor.js.map +1 -0
- package/dist/anchors/subnet-filesystem-mount.anchor.d.ts +11 -0
- package/dist/anchors/subnet-filesystem-mount.anchor.js +21 -0
- package/dist/anchors/subnet-filesystem-mount.anchor.js.map +1 -0
- package/dist/anchors/task-definition.anchor.d.ts +18 -0
- package/dist/anchors/task-definition.anchor.js +21 -0
- package/dist/anchors/task-definition.anchor.js.map +1 -0
- package/dist/factories/aws/s3-upload.aws.factory.d.ts +4 -0
- package/dist/factories/aws/s3-upload.aws.factory.js +18 -0
- package/dist/factories/aws/s3-upload.aws.factory.js.map +1 -0
- package/dist/index.d.ts +41 -7
- package/dist/index.js +41 -7
- package/dist/index.js.map +1 -1
- package/dist/models/app/actions/add-app.model.action.d.ts +11 -0
- package/dist/models/app/actions/add-app.model.action.js +36 -0
- package/dist/models/app/actions/add-app.model.action.js.map +1 -0
- package/dist/models/app/actions/delete-app.model.action.d.ts +11 -0
- package/dist/models/app/actions/delete-app.model.action.js +36 -0
- package/dist/models/app/actions/delete-app.model.action.js.map +1 -0
- package/dist/models/deployment/actions/add-deployment.model.action.d.ts +5 -5
- package/dist/models/deployment/actions/add-deployment.model.action.js +14 -37
- package/dist/models/deployment/actions/add-deployment.model.action.js.map +1 -1
- package/dist/models/deployment/actions/delete-deployment.model.action.d.ts +5 -5
- package/dist/models/deployment/actions/delete-deployment.model.action.js +14 -23
- package/dist/models/deployment/actions/delete-deployment.model.action.js.map +1 -1
- package/dist/models/deployment/aws.deployment.interface.d.ts +1 -1
- package/dist/models/deployment/aws.deployment.model.d.ts +6 -8
- package/dist/models/deployment/aws.deployment.model.js +10 -19
- package/dist/models/deployment/aws.deployment.model.js.map +1 -1
- package/dist/models/environment/actions/add-environment.model.action.d.ts +5 -4
- package/dist/models/environment/actions/add-environment.model.action.js +16 -8
- package/dist/models/environment/actions/add-environment.model.action.js.map +1 -1
- package/dist/models/environment/actions/delete-environment.model.action.d.ts +4 -4
- package/dist/models/environment/actions/delete-environment.model.action.js +14 -9
- package/dist/models/environment/actions/delete-environment.model.action.js.map +1 -1
- package/dist/models/environment/aws.environment.model.d.ts +6 -0
- package/dist/models/environment/aws.environment.model.js +30 -0
- package/dist/models/environment/aws.environment.model.js.map +1 -0
- package/dist/models/execution/actions/add-execution.model.action.d.ts +5 -5
- package/dist/models/execution/actions/add-execution.model.action.js +13 -69
- package/dist/models/execution/actions/add-execution.model.action.js.map +1 -1
- package/dist/models/execution/actions/delete-execution.model.action.d.ts +5 -5
- package/dist/models/execution/actions/delete-execution.model.action.js +13 -20
- package/dist/models/execution/actions/delete-execution.model.action.js.map +1 -1
- package/dist/models/execution/aws.execution.model.d.ts +18 -0
- package/dist/models/execution/aws.execution.model.js +163 -0
- package/dist/models/execution/aws.execution.model.js.map +1 -0
- package/dist/models/image/actions/add-image.model.action.d.ts +4 -4
- package/dist/models/image/actions/add-image.model.action.js +10 -5
- package/dist/models/image/actions/add-image.model.action.js.map +1 -1
- package/dist/models/image/actions/delete-image.model.action.d.ts +5 -4
- package/dist/models/image/actions/delete-image.model.action.js +13 -5
- package/dist/models/image/actions/delete-image.model.action.js.map +1 -1
- package/dist/models/region/actions/add-region.model.action.d.ts +4 -4
- package/dist/models/region/actions/add-region.model.action.js +16 -147
- package/dist/models/region/actions/add-region.model.action.js.map +1 -1
- package/dist/models/region/actions/delete-region.model.action.d.ts +4 -4
- package/dist/models/region/actions/delete-region.model.action.js +19 -63
- package/dist/models/region/actions/delete-region.model.action.js.map +1 -1
- package/dist/models/region/aws.region.interface.d.ts +3 -2
- package/dist/models/region/aws.region.model.d.ts +7 -1
- package/dist/models/region/aws.region.model.js +34 -2
- package/dist/models/region/aws.region.model.js.map +1 -1
- package/dist/models/server/actions/add-server.model.action.d.ts +5 -4
- package/dist/models/server/actions/add-server.model.action.js +19 -10
- package/dist/models/server/actions/add-server.model.action.js.map +1 -1
- package/dist/models/server/actions/delete-server.model.action.d.ts +4 -4
- package/dist/models/server/actions/delete-server.model.action.js +18 -11
- package/dist/models/server/actions/delete-server.model.action.js.map +1 -1
- package/dist/models/server/aws.server.model.d.ts +7 -4
- package/dist/models/server/aws.server.model.js +35 -15
- package/dist/models/server/aws.server.model.js.map +1 -1
- package/dist/models/service/ecr/actions/add-ecr-service.model.action.d.ts +5 -4
- package/dist/models/service/ecr/actions/add-ecr-service.model.action.js +30 -5
- package/dist/models/service/ecr/actions/add-ecr-service.model.action.js.map +1 -1
- package/dist/models/service/ecr/actions/add-image-to-ecr.model.action.d.ts +4 -4
- package/dist/models/service/ecr/actions/add-image-to-ecr.model.action.js +10 -8
- package/dist/models/service/ecr/actions/add-image-to-ecr.model.action.js.map +1 -1
- package/dist/models/service/ecr/actions/delete-image-from-ecr.model.action.d.ts +4 -4
- package/dist/models/service/ecr/actions/delete-image-from-ecr.model.action.js +11 -9
- package/dist/models/service/ecr/actions/delete-image-from-ecr.model.action.js.map +1 -1
- package/dist/models/service/ecr/ecr.service.interface.d.ts +2 -2
- package/dist/models/service/ecr/ecr.service.model.d.ts +3 -3
- package/dist/models/service/ecr/ecr.service.model.js +15 -17
- package/dist/models/service/ecr/ecr.service.model.js.map +1 -1
- package/dist/models/service/s3-static-website/actions/add-s3-static-website.model.action.d.ts +5 -5
- package/dist/models/service/s3-static-website/actions/add-s3-static-website.model.action.js +13 -12
- package/dist/models/service/s3-static-website/actions/add-s3-static-website.model.action.js.map +1 -1
- package/dist/models/service/s3-static-website/actions/delete-s3-static-website.model.action.d.ts +4 -5
- package/dist/models/service/s3-static-website/actions/delete-s3-static-website.model.action.js +11 -13
- package/dist/models/service/s3-static-website/actions/delete-s3-static-website.model.action.js.map +1 -1
- package/dist/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.d.ts +4 -5
- package/dist/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.js +10 -12
- package/dist/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.js.map +1 -1
- package/dist/models/service/s3-static-website/s3-static-website.service.interface.d.ts +2 -2
- package/dist/models/service/s3-static-website/s3-static-website.service.model.d.ts +2 -2
- package/dist/models/service/s3-static-website/s3-static-website.service.model.js +3 -3
- package/dist/models/service/s3-static-website/s3-static-website.service.model.js.map +1 -1
- package/dist/models/service/s3-storage/actions/add-s3-storage.model.action.d.ts +5 -4
- package/dist/models/service/s3-storage/actions/add-s3-storage.model.action.js +14 -9
- package/dist/models/service/s3-storage/actions/add-s3-storage.model.action.js.map +1 -1
- package/dist/models/service/s3-storage/actions/delete-s3-storage.model.action.d.ts +4 -4
- package/dist/models/service/s3-storage/actions/delete-s3-storage.model.action.js +12 -10
- package/dist/models/service/s3-storage/actions/delete-s3-storage.model.action.js.map +1 -1
- package/dist/models/service/s3-storage/s3-storage.service.interface.d.ts +2 -2
- package/dist/models/service/s3-storage/s3-storage.service.model.d.ts +4 -3
- package/dist/models/service/s3-storage/s3-storage.service.model.js +27 -23
- package/dist/models/service/s3-storage/s3-storage.service.model.js.map +1 -1
- package/dist/models/subnet/actions/add-subnet.model.action.d.ts +11 -0
- package/dist/models/subnet/actions/add-subnet.model.action.js +114 -0
- package/dist/models/subnet/actions/add-subnet.model.action.js.map +1 -0
- package/dist/models/subnet/actions/delete-subnet.model.action.d.ts +11 -0
- package/dist/models/subnet/actions/delete-subnet.model.action.js +51 -0
- package/dist/models/subnet/actions/delete-subnet.model.action.js.map +1 -0
- package/dist/models/subnet/actions/update-subnet-association.model.action.d.ts +11 -0
- package/dist/models/subnet/actions/update-subnet-association.model.action.js +102 -0
- package/dist/models/subnet/actions/update-subnet-association.model.action.js.map +1 -0
- package/dist/models/subnet/aws.subnet.interface.d.ts +5 -0
- package/dist/models/subnet/aws.subnet.interface.js +2 -0
- package/dist/models/subnet/aws.subnet.interface.js.map +1 -0
- package/dist/models/subnet/aws.subnet.model.d.ts +14 -0
- package/dist/models/subnet/aws.subnet.model.js +86 -0
- package/dist/models/subnet/aws.subnet.model.js.map +1 -0
- package/dist/modules/s3-website-save-manifest.module.d.ts +4 -0
- package/dist/modules/s3-website-save-manifest.module.js +42 -0
- package/dist/modules/s3-website-save-manifest.module.js.map +1 -0
- package/dist/octo-aws-cdk-package.mock.d.ts +6 -0
- package/dist/octo-aws-cdk-package.mock.js +75 -0
- package/dist/octo-aws-cdk-package.mock.js.map +1 -0
- package/dist/overlays/execution/actions/add-execution.overlay.action.d.ts +11 -0
- package/dist/overlays/execution/actions/add-execution.overlay.action.js +144 -0
- package/dist/overlays/execution/actions/add-execution.overlay.action.js.map +1 -0
- package/dist/overlays/execution/actions/delete-execution.overlay.action.d.ts +11 -0
- package/dist/overlays/execution/actions/delete-execution.overlay.action.js +53 -0
- package/dist/overlays/execution/actions/delete-execution.overlay.action.js.map +1 -0
- package/dist/overlays/execution/actions/update-execution-replace-task-definition.overlay.action.d.ts +11 -0
- package/dist/overlays/execution/actions/update-execution-replace-task-definition.overlay.action.js +106 -0
- package/dist/overlays/execution/actions/update-execution-replace-task-definition.overlay.action.js.map +1 -0
- package/dist/overlays/execution/actions/update-execution-update-service.overlay.action.d.ts +11 -0
- package/dist/overlays/execution/actions/update-execution-update-service.overlay.action.js +74 -0
- package/dist/overlays/execution/actions/update-execution-update-service.overlay.action.js.map +1 -0
- package/dist/overlays/execution/execution.overlay.d.ts +22 -0
- package/dist/overlays/execution/execution.overlay.interface.d.ts +10 -0
- package/dist/overlays/execution/execution.overlay.interface.js +2 -0
- package/dist/overlays/execution/execution.overlay.interface.js.map +1 -0
- package/dist/overlays/execution/execution.overlay.js +22 -0
- package/dist/overlays/execution/execution.overlay.js.map +1 -0
- package/dist/overlays/region-filesystem/actions/add-region-filesystem.overlay.action.d.ts +11 -0
- package/dist/overlays/region-filesystem/actions/add-region-filesystem.overlay.action.js +45 -0
- package/dist/overlays/region-filesystem/actions/add-region-filesystem.overlay.action.js.map +1 -0
- package/dist/overlays/region-filesystem/actions/delete-region-filesystem.overlay.action.d.ts +11 -0
- package/dist/overlays/region-filesystem/actions/delete-region-filesystem.overlay.action.js +47 -0
- package/dist/overlays/region-filesystem/actions/delete-region-filesystem.overlay.action.js.map +1 -0
- package/dist/overlays/region-filesystem/region-filesystem.overlay.d.ts +8 -0
- package/dist/overlays/region-filesystem/region-filesystem.overlay.interface.d.ts +7 -0
- package/dist/overlays/region-filesystem/region-filesystem.overlay.interface.js +2 -0
- package/dist/overlays/region-filesystem/region-filesystem.overlay.interface.js.map +1 -0
- package/dist/overlays/region-filesystem/region-filesystem.overlay.js +22 -0
- package/dist/overlays/region-filesystem/region-filesystem.overlay.js.map +1 -0
- package/dist/overlays/s3-storage-access/actions/add-s3-storage-access.overlay.action.d.ts +11 -0
- package/dist/{models/service/s3-storage → overlays/s3-storage-access}/actions/add-s3-storage-access.overlay.action.js +18 -12
- package/dist/overlays/s3-storage-access/actions/add-s3-storage-access.overlay.action.js.map +1 -0
- package/dist/overlays/s3-storage-access/actions/delete-s3-storage-access.overlay.action.d.ts +11 -0
- package/dist/{models/service/s3-storage → overlays/s3-storage-access}/actions/delete-s3-storage-access.overlay.action.js +18 -12
- package/dist/overlays/s3-storage-access/actions/delete-s3-storage-access.overlay.action.js.map +1 -0
- package/dist/overlays/s3-storage-access/s3-storage-access.overlay.d.ts +9 -0
- package/dist/overlays/s3-storage-access/s3-storage-access.overlay.interface.d.ts +8 -0
- package/dist/overlays/s3-storage-access/s3-storage-access.overlay.interface.js.map +1 -0
- package/dist/{models/service/s3-storage → overlays/s3-storage-access}/s3-storage-access.overlay.js +1 -1
- package/dist/overlays/s3-storage-access/s3-storage-access.overlay.js.map +1 -0
- package/dist/overlays/security-group/actions/add-security-group-anchor.overlay.action.d.ts +11 -0
- package/dist/overlays/security-group/actions/add-security-group-anchor.overlay.action.js +52 -0
- package/dist/overlays/security-group/actions/add-security-group-anchor.overlay.action.js.map +1 -0
- package/dist/overlays/security-group/actions/add-security-group.overlay.action.d.ts +11 -0
- package/dist/overlays/security-group/actions/add-security-group.overlay.action.js +57 -0
- package/dist/overlays/security-group/actions/add-security-group.overlay.action.js.map +1 -0
- package/dist/overlays/security-group/actions/delete-security-group-anchor.overlay.action.d.ts +11 -0
- package/dist/overlays/security-group/actions/delete-security-group-anchor.overlay.action.js +47 -0
- package/dist/overlays/security-group/actions/delete-security-group-anchor.overlay.action.js.map +1 -0
- package/dist/overlays/security-group/actions/delete-security-group.overlay.action.d.ts +11 -0
- package/dist/overlays/security-group/actions/delete-security-group.overlay.action.js +55 -0
- package/dist/overlays/security-group/actions/delete-security-group.overlay.action.js.map +1 -0
- package/dist/overlays/security-group/actions/update-security-group-anchor.overlay.action.d.ts +11 -0
- package/dist/overlays/security-group/actions/update-security-group-anchor.overlay.action.js +45 -0
- package/dist/overlays/security-group/actions/update-security-group-anchor.overlay.action.js.map +1 -0
- package/dist/overlays/security-group/security-group.overlay.d.ts +9 -0
- package/dist/overlays/security-group/security-group.overlay.interface.d.ts +6 -0
- package/dist/overlays/security-group/security-group.overlay.interface.js +2 -0
- package/dist/overlays/security-group/security-group.overlay.interface.js.map +1 -0
- package/dist/overlays/security-group/security-group.overlay.js +54 -0
- package/dist/overlays/security-group/security-group.overlay.js.map +1 -0
- package/dist/overlays/subnet-filesystem-mount/actions/add-subnet-filesystem-mount.overlay.action.d.ts +11 -0
- package/dist/overlays/subnet-filesystem-mount/actions/add-subnet-filesystem-mount.overlay.action.js +68 -0
- package/dist/overlays/subnet-filesystem-mount/actions/add-subnet-filesystem-mount.overlay.action.js.map +1 -0
- package/dist/overlays/subnet-filesystem-mount/actions/delete-subnet-filesystem-mount.overlay.action.d.ts +11 -0
- package/dist/overlays/subnet-filesystem-mount/actions/delete-subnet-filesystem-mount.overlay.action.js +71 -0
- package/dist/overlays/subnet-filesystem-mount/actions/delete-subnet-filesystem-mount.overlay.action.js.map +1 -0
- package/dist/overlays/subnet-filesystem-mount/subnet-filesystem-mount.overlay.d.ts +9 -0
- package/dist/overlays/subnet-filesystem-mount/subnet-filesystem-mount.overlay.interface.d.ts +3 -0
- package/dist/overlays/subnet-filesystem-mount/subnet-filesystem-mount.overlay.interface.js +2 -0
- package/dist/overlays/subnet-filesystem-mount/subnet-filesystem-mount.overlay.interface.js.map +1 -0
- package/dist/overlays/subnet-filesystem-mount/subnet-filesystem-mount.overlay.js +22 -0
- package/dist/overlays/subnet-filesystem-mount/subnet-filesystem-mount.overlay.js.map +1 -0
- package/dist/resources/ecr/actions/add-ecr-image.resource.action.d.ts +3 -1
- package/dist/resources/ecr/actions/add-ecr-image.resource.action.js +13 -1
- package/dist/resources/ecr/actions/add-ecr-image.resource.action.js.map +1 -1
- package/dist/resources/ecr/actions/delete-ecr-image.resource.action.d.ts +2 -1
- package/dist/resources/ecr/actions/delete-ecr-image.resource.action.js +10 -1
- package/dist/resources/ecr/actions/delete-ecr-image.resource.action.js.map +1 -1
- package/dist/resources/ecr/ecr-image.interface.d.ts +5 -2
- package/dist/resources/ecr/ecr-image.resource.d.ts +3 -1
- package/dist/resources/ecr/ecr-image.resource.js.map +1 -1
- package/dist/resources/ecs/actions/add-ecs-cluster.resource.action.d.ts +3 -1
- package/dist/resources/ecs/actions/add-ecs-cluster.resource.action.js +10 -1
- package/dist/resources/ecs/actions/add-ecs-cluster.resource.action.js.map +1 -1
- package/dist/resources/ecs/actions/add-ecs-service.resource.action.d.ts +3 -1
- package/dist/resources/ecs/actions/add-ecs-service.resource.action.js +12 -6
- package/dist/resources/ecs/actions/add-ecs-service.resource.action.js.map +1 -1
- package/dist/resources/ecs/actions/add-ecs-task-definition.resource.action.d.ts +3 -1
- package/dist/resources/ecs/actions/add-ecs-task-definition.resource.action.js +26 -22
- package/dist/resources/ecs/actions/add-ecs-task-definition.resource.action.js.map +1 -1
- package/dist/resources/ecs/actions/delete-ecs-cluster.resource.action.d.ts +2 -1
- package/dist/resources/ecs/actions/delete-ecs-cluster.resource.action.js +10 -1
- package/dist/resources/ecs/actions/delete-ecs-cluster.resource.action.js.map +1 -1
- package/dist/resources/ecs/actions/delete-ecs-service.resource.action.d.ts +2 -1
- package/dist/resources/ecs/actions/delete-ecs-service.resource.action.js +16 -1
- package/dist/resources/ecs/actions/delete-ecs-service.resource.action.js.map +1 -1
- package/dist/resources/ecs/actions/delete-ecs-task-definition.resource.action.d.ts +2 -1
- package/dist/resources/ecs/actions/delete-ecs-task-definition.resource.action.js +18 -2
- package/dist/resources/ecs/actions/delete-ecs-task-definition.resource.action.js.map +1 -1
- package/dist/resources/ecs/actions/update-ecs-service.resource.action.d.ts +10 -0
- package/dist/resources/ecs/actions/update-ecs-service.resource.action.js +59 -0
- package/dist/resources/ecs/actions/update-ecs-service.resource.action.js.map +1 -0
- package/dist/resources/ecs/actions/update-ecs-task-definition.resource.action.d.ts +11 -0
- package/dist/resources/ecs/actions/update-ecs-task-definition.resource.action.js +99 -0
- package/dist/resources/ecs/actions/update-ecs-task-definition.resource.action.js.map +1 -0
- package/dist/resources/ecs/ecs-cluster.interface.d.ts +5 -2
- package/dist/resources/ecs/ecs-cluster.resource.d.ts +3 -1
- package/dist/resources/ecs/ecs-cluster.resource.js.map +1 -1
- package/dist/resources/ecs/ecs-service.interface.d.ts +5 -2
- package/dist/resources/ecs/ecs-service.resource.d.ts +18 -5
- package/dist/resources/ecs/ecs-service.resource.js +53 -1
- package/dist/resources/ecs/ecs-service.resource.js.map +1 -1
- package/dist/resources/ecs/ecs-task-definition.interface.d.ts +8 -3
- package/dist/resources/ecs/ecs-task-definition.resource.d.ts +10 -5
- package/dist/resources/ecs/ecs-task-definition.resource.js +34 -1
- package/dist/resources/ecs/ecs-task-definition.resource.js.map +1 -1
- package/dist/resources/efs/actions/add-efs-mount-target.resource.action.d.ts +11 -0
- package/dist/resources/efs/actions/add-efs-mount-target.resource.action.js +81 -0
- package/dist/resources/efs/actions/add-efs-mount-target.resource.action.js.map +1 -0
- package/dist/resources/efs/actions/add-efs.resource.action.d.ts +3 -1
- package/dist/resources/efs/actions/add-efs.resource.action.js +30 -62
- package/dist/resources/efs/actions/add-efs.resource.action.js.map +1 -1
- package/dist/resources/efs/actions/delete-efs-mount-target.resource.action.d.ts +11 -0
- package/dist/resources/efs/actions/delete-efs-mount-target.resource.action.js +84 -0
- package/dist/resources/efs/actions/delete-efs-mount-target.resource.action.js.map +1 -0
- package/dist/resources/efs/actions/delete-efs.resource.action.d.ts +3 -1
- package/dist/resources/efs/actions/delete-efs.resource.action.js +24 -43
- package/dist/resources/efs/actions/delete-efs.resource.action.js.map +1 -1
- package/dist/resources/efs/efs-mount-target.interface.d.ts +10 -0
- package/dist/resources/efs/efs-mount-target.interface.js +2 -0
- package/dist/resources/efs/efs-mount-target.interface.js.map +1 -0
- package/dist/resources/efs/efs-mount-target.resource.d.ts +10 -0
- package/dist/resources/efs/{efs.shared-resource.js → efs-mount-target.resource.js} +8 -8
- package/dist/resources/efs/efs-mount-target.resource.js.map +1 -0
- package/dist/resources/efs/efs.interface.d.ts +6 -8
- package/dist/resources/efs/efs.resource.d.ts +5 -6
- package/dist/resources/efs/efs.resource.js +1 -27
- package/dist/resources/efs/efs.resource.js.map +1 -1
- package/dist/resources/iam/actions/add-iam-role.resource.action.d.ts +3 -1
- package/dist/resources/iam/actions/add-iam-role.resource.action.js +10 -1
- package/dist/resources/iam/actions/add-iam-role.resource.action.js.map +1 -1
- package/dist/resources/iam/actions/add-iam-user.resource.action.d.ts +3 -1
- package/dist/resources/iam/actions/add-iam-user.resource.action.js +10 -1
- package/dist/resources/iam/actions/add-iam-user.resource.action.js.map +1 -1
- package/dist/resources/iam/actions/delete-iam-role.resource.action.d.ts +2 -1
- package/dist/resources/iam/actions/delete-iam-role.resource.action.js +10 -1
- package/dist/resources/iam/actions/delete-iam-role.resource.action.js.map +1 -1
- package/dist/resources/iam/actions/delete-iam-user.resource.action.d.ts +2 -1
- package/dist/resources/iam/actions/delete-iam-user.resource.action.js +10 -1
- package/dist/resources/iam/actions/delete-iam-user.resource.action.js.map +1 -1
- package/dist/resources/iam/actions/update-iam-role-with-s3-storage-policy.resource.action.d.ts +3 -1
- package/dist/resources/iam/actions/update-iam-role-with-s3-storage-policy.resource.action.js +21 -1
- package/dist/resources/iam/actions/update-iam-role-with-s3-storage-policy.resource.action.js.map +1 -1
- package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.d.ts +3 -1
- package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.js +21 -1
- package/dist/resources/iam/actions/update-iam-user-with-s3-storage-policy.resource.action.js.map +1 -1
- package/dist/resources/iam/iam-role.interface.d.ts +5 -2
- package/dist/resources/iam/iam-role.resource.d.ts +5 -3
- package/dist/resources/iam/iam-role.resource.js +9 -3
- package/dist/resources/iam/iam-role.resource.js.map +1 -1
- package/dist/resources/iam/iam-user.interface.d.ts +5 -2
- package/dist/resources/iam/iam-user.resource.d.ts +5 -3
- package/dist/resources/iam/iam-user.resource.js +9 -3
- package/dist/resources/iam/iam-user.resource.js.map +1 -1
- package/dist/resources/internet-gateway/actions/add-internet-gateway.resource.action.d.ts +3 -1
- package/dist/resources/internet-gateway/actions/add-internet-gateway.resource.action.js +15 -1
- package/dist/resources/internet-gateway/actions/add-internet-gateway.resource.action.js.map +1 -1
- package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.d.ts +2 -1
- package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.js +15 -1
- package/dist/resources/internet-gateway/actions/delete-internet-gateway.resource.action.js.map +1 -1
- package/dist/resources/internet-gateway/internet-gateway.interface.d.ts +5 -2
- package/dist/resources/internet-gateway/internet-gateway.resource.d.ts +4 -2
- package/dist/resources/internet-gateway/internet-gateway.resource.js.map +1 -1
- package/dist/resources/network-acl/actions/add-network-acl.resource.action.d.ts +3 -1
- package/dist/resources/network-acl/actions/add-network-acl.resource.action.js +30 -1
- package/dist/resources/network-acl/actions/add-network-acl.resource.action.js.map +1 -1
- package/dist/resources/network-acl/actions/delete-network-acl.resource.action.d.ts +2 -1
- package/dist/resources/network-acl/actions/delete-network-acl.resource.action.js +13 -1
- package/dist/resources/network-acl/actions/delete-network-acl.resource.action.js.map +1 -1
- package/dist/resources/network-acl/actions/update-network-acl-entries.resource.action.d.ts +11 -0
- package/dist/resources/network-acl/actions/update-network-acl-entries.resource.action.js +147 -0
- package/dist/resources/network-acl/actions/update-network-acl-entries.resource.action.js.map +1 -0
- package/dist/resources/network-acl/network-acl.interface.d.ts +5 -2
- package/dist/resources/network-acl/network-acl.resource.d.ts +5 -3
- package/dist/resources/network-acl/network-acl.resource.js.map +1 -1
- package/dist/resources/route-table/actions/add-route-table.resource.action.d.ts +3 -1
- package/dist/resources/route-table/actions/add-route-table.resource.action.js +23 -6
- package/dist/resources/route-table/actions/add-route-table.resource.action.js.map +1 -1
- package/dist/resources/route-table/actions/delete-route-table.resource.action.d.ts +2 -1
- package/dist/resources/route-table/actions/delete-route-table.resource.action.js +13 -1
- package/dist/resources/route-table/actions/delete-route-table.resource.action.js.map +1 -1
- package/dist/resources/route-table/route-table.interface.d.ts +6 -2
- package/dist/resources/route-table/route-table.resource.d.ts +6 -4
- package/dist/resources/route-table/route-table.resource.js.map +1 -1
- package/dist/resources/s3/storage/actions/add-s3-storage.resource.action.d.ts +2 -1
- package/dist/resources/s3/storage/actions/add-s3-storage.resource.action.js +10 -1
- package/dist/resources/s3/storage/actions/add-s3-storage.resource.action.js.map +1 -1
- package/dist/resources/s3/storage/actions/delete-s3-storage.resource.action.d.ts +2 -1
- package/dist/resources/s3/storage/actions/delete-s3-storage.resource.action.js +16 -1
- package/dist/resources/s3/storage/actions/delete-s3-storage.resource.action.js.map +1 -1
- package/dist/resources/s3/storage/actions/update-source-paths-in-s3-storage.resource.action.d.ts +2 -1
- package/dist/resources/s3/storage/actions/update-source-paths-in-s3-storage.resource.action.js +30 -10
- package/dist/resources/s3/storage/actions/update-source-paths-in-s3-storage.resource.action.js.map +1 -1
- package/dist/resources/s3/storage/s3-storage.interface.d.ts +3 -1
- package/dist/resources/s3/storage/s3-storage.resource.d.ts +3 -2
- package/dist/resources/s3/storage/s3-storage.resource.js +6 -3
- package/dist/resources/s3/storage/s3-storage.resource.js.map +1 -1
- package/dist/resources/s3/website/actions/add-s3-website.resource.action.d.ts +2 -1
- package/dist/resources/s3/website/actions/add-s3-website.resource.action.js +19 -1
- package/dist/resources/s3/website/actions/add-s3-website.resource.action.js.map +1 -1
- package/dist/resources/s3/website/actions/delete-s3-website.resource.action.d.ts +2 -1
- package/dist/resources/s3/website/actions/delete-s3-website.resource.action.js +16 -1
- package/dist/resources/s3/website/actions/delete-s3-website.resource.action.js.map +1 -1
- package/dist/resources/s3/website/actions/update-source-paths-in-s3-website.resource.action.d.ts +2 -1
- package/dist/resources/s3/website/actions/update-source-paths-in-s3-website.resource.action.js +24 -10
- package/dist/resources/s3/website/actions/update-source-paths-in-s3-website.resource.action.js.map +1 -1
- package/dist/resources/s3/website/s3-website.interface.d.ts +5 -2
- package/dist/resources/s3/website/s3-website.resource.d.ts +4 -2
- package/dist/resources/s3/website/s3-website.resource.js +6 -3
- package/dist/resources/s3/website/s3-website.resource.js.map +1 -1
- package/dist/resources/security-group/actions/add-security-group.resource.action.d.ts +3 -1
- package/dist/resources/security-group/actions/add-security-group.resource.action.js +40 -13
- package/dist/resources/security-group/actions/add-security-group.resource.action.js.map +1 -1
- package/dist/resources/security-group/actions/delete-security-group.resource.action.d.ts +2 -1
- package/dist/resources/security-group/actions/delete-security-group.resource.action.js +12 -1
- package/dist/resources/security-group/actions/delete-security-group.resource.action.js.map +1 -1
- package/dist/resources/security-group/actions/update-security-group-rules.resource.action.d.ts +11 -0
- package/dist/resources/security-group/actions/update-security-group-rules.resource.action.js +115 -0
- package/dist/resources/security-group/actions/update-security-group-rules.resource.action.js.map +1 -0
- package/dist/resources/security-group/security-group.interface.d.ts +10 -2
- package/dist/resources/security-group/security-group.resource.d.ts +4 -2
- package/dist/resources/security-group/security-group.resource.js.map +1 -1
- package/dist/resources/subnet/actions/add-subnet.resource.action.d.ts +3 -1
- package/dist/resources/subnet/actions/add-subnet.resource.action.js +10 -1
- package/dist/resources/subnet/actions/add-subnet.resource.action.js.map +1 -1
- package/dist/resources/subnet/actions/delete-subnet.resource.action.d.ts +2 -1
- package/dist/resources/subnet/actions/delete-subnet.resource.action.js +10 -1
- package/dist/resources/subnet/actions/delete-subnet.resource.action.js.map +1 -1
- package/dist/resources/subnet/subnet.interface.d.ts +5 -2
- package/dist/resources/subnet/subnet.resource.d.ts +4 -2
- package/dist/resources/subnet/subnet.resource.js.map +1 -1
- package/dist/resources/vpc/actions/add-vpc.resource.action.d.ts +3 -1
- package/dist/resources/vpc/actions/add-vpc.resource.action.js +10 -1
- package/dist/resources/vpc/actions/add-vpc.resource.action.js.map +1 -1
- package/dist/resources/vpc/actions/delete-vpc.resource.action.d.ts +2 -1
- package/dist/resources/vpc/actions/delete-vpc.resource.action.js +10 -1
- package/dist/resources/vpc/actions/delete-vpc.resource.action.js.map +1 -1
- package/dist/resources/vpc/vpc.interface.d.ts +5 -2
- package/dist/resources/vpc/vpc.resource.d.ts +3 -1
- package/dist/resources/vpc/vpc.resource.js.map +1 -1
- package/dist/utilities/process/process.utility.d.ts +1 -1
- package/dist/utilities/process/process.utility.js.map +1 -1
- package/dist/utilities/retry/retry.utility.d.ts +6 -0
- package/dist/utilities/retry/retry.utility.js +23 -1
- package/dist/utilities/retry/retry.utility.js.map +1 -1
- package/package.json +5 -3
- package/dist/anchors/iam-role.anchor.model.d.ts +0 -4
- package/dist/anchors/iam-role.anchor.model.js.map +0 -1
- package/dist/anchors/iam-user.anchor.model.d.ts +0 -4
- package/dist/anchors/iam-user.anchor.model.js.map +0 -1
- package/dist/main.d.ts +0 -21
- package/dist/main.js +0 -87
- package/dist/main.js.map +0 -1
- package/dist/models/action.abstract.d.ts +0 -9
- package/dist/models/action.abstract.js +0 -12
- package/dist/models/action.abstract.js.map +0 -1
- package/dist/models/service/s3-storage/actions/add-s3-storage-access.overlay.action.d.ts +0 -11
- package/dist/models/service/s3-storage/actions/add-s3-storage-access.overlay.action.js.map +0 -1
- package/dist/models/service/s3-storage/actions/delete-s3-storage-access.overlay.action.d.ts +0 -11
- package/dist/models/service/s3-storage/actions/delete-s3-storage-access.overlay.action.js.map +0 -1
- package/dist/models/service/s3-storage/s3-storage-access.overlay.d.ts +0 -6
- package/dist/models/service/s3-storage/s3-storage-access.overlay.interface.d.ts +0 -6
- package/dist/models/service/s3-storage/s3-storage-access.overlay.interface.js.map +0 -1
- package/dist/models/service/s3-storage/s3-storage-access.overlay.js.map +0 -1
- package/dist/modules/routers/nginx.router.module.d.ts +0 -6
- package/dist/modules/routers/nginx.router.module.js +0 -53
- package/dist/modules/routers/nginx.router.module.js.map +0 -1
- package/dist/resources/efs/efs.shared-resource.d.ts +0 -6
- package/dist/resources/efs/efs.shared-resource.js.map +0 -1
- /package/dist/{models/service/s3-storage → overlays/s3-storage-access}/s3-storage-access.overlay.interface.js +0 -0
|
@@ -4,9 +4,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
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
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { Action, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
8
|
-
import {
|
|
9
|
-
let UpdateSourcePathsS3StaticWebsiteModelAction = class UpdateSourcePathsS3StaticWebsiteModelAction
|
|
7
|
+
import { Action, DiffAction, Factory, ModelType, } from '@quadnix/octo';
|
|
8
|
+
import { S3StaticWebsiteService } from '../s3-static-website.service.model.js';
|
|
9
|
+
let UpdateSourcePathsS3StaticWebsiteModelAction = class UpdateSourcePathsS3StaticWebsiteModelAction {
|
|
10
10
|
ACTION_NAME = 'UpdateSourcePathsS3StaticWebsiteModelAction';
|
|
11
11
|
collectInput(diff) {
|
|
12
12
|
const { bucketName } = diff.model;
|
|
@@ -14,21 +14,19 @@ let UpdateSourcePathsS3StaticWebsiteModelAction = class UpdateSourcePathsS3Stati
|
|
|
14
14
|
}
|
|
15
15
|
filter(diff) {
|
|
16
16
|
return (diff.action === DiffAction.UPDATE &&
|
|
17
|
+
diff.model instanceof S3StaticWebsiteService &&
|
|
17
18
|
diff.model.MODEL_NAME === 'service' &&
|
|
18
|
-
diff.field === 'sourcePaths'
|
|
19
|
-
diff.model.serviceId.endsWith('s3-static-website'));
|
|
19
|
+
diff.field === 'sourcePaths');
|
|
20
20
|
}
|
|
21
|
-
async handle(diff, actionInputs) {
|
|
21
|
+
async handle(diff, actionInputs, actionOutputs) {
|
|
22
22
|
const { bucketName } = diff.model;
|
|
23
23
|
const s3Website = actionInputs[`resource.bucket-${bucketName}`];
|
|
24
24
|
s3Website.updateManifestDiff(diff.value);
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
return output;
|
|
25
|
+
actionOutputs[s3Website.resourceId] = s3Website;
|
|
26
|
+
return actionOutputs;
|
|
28
27
|
}
|
|
29
|
-
async
|
|
30
|
-
|
|
31
|
-
await model.saveSourceManifest();
|
|
28
|
+
async revert() {
|
|
29
|
+
return {};
|
|
32
30
|
}
|
|
33
31
|
};
|
|
34
32
|
UpdateSourcePathsS3StaticWebsiteModelAction = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-source-paths-s3-static-website.model.action.js","sourceRoot":"","sources":["../../../../../src/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"update-source-paths-s3-static-website.model.action.js","sourceRoot":"","sources":["../../../../../src/models/service/s3-static-website/actions/update-source-paths-s3-static-website.model.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,MAAM,EAIN,UAAU,EACV,OAAO,EAEP,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAGxE,IAAM,2CAA2C,GAAjD,MAAM,2CAA2C;IAC7C,WAAW,GAAW,6CAA6C,CAAC;IAE7E,YAAY,CAAC,IAAU;QACrB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAA+B,CAAC;QAE5D,OAAO,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,IAAU;QACf,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;YACjC,IAAI,CAAC,KAAK,YAAY,sBAAsB;YAC5C,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;YACnC,IAAI,CAAC,KAAK,KAAK,aAAa,CAC7B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU,EAAE,YAA0B,EAAE,aAA4B;QAC/E,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAA+B,CAAC;QAE5D,MAAM,SAAS,GAAG,YAAY,CAAC,mBAAmB,UAAU,EAAE,CAAc,CAAC;QAC7E,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAkC,CAAC,CAAC;QACtE,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;QAEhD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAA;AA/BY,2CAA2C;IADvD,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;GACX,2CAA2C,CA+BvD;;AAGM,IAAM,kDAAkD,GAAxD,MAAM,kDAAkD;IAC7D,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,2CAA2C,EAAE,CAAC;IAC3D,CAAC;CACF,CAAA;AAJY,kDAAkD;IAD9D,OAAO,CAA8C,2CAA2C,CAAC;GACrF,kDAAkD,CAI9D"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IService } from '@quadnix/octo';
|
|
2
|
-
import { S3StaticWebsiteService } from './s3-static-website.service.model.js';
|
|
1
|
+
import type { IService } from '@quadnix/octo';
|
|
2
|
+
import type { S3StaticWebsiteService } from './s3-static-website.service.model.js';
|
|
3
3
|
export interface IS3StaticWebsiteService extends IService {
|
|
4
4
|
awsRegionId: S3StaticWebsiteService['awsRegionId'];
|
|
5
5
|
bucketName: S3StaticWebsiteService['bucketName'];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Diff, Service } from '@quadnix/octo';
|
|
2
2
|
import { RegionId } from '../../region/aws.region.model.js';
|
|
3
|
-
import { IS3StaticWebsiteService } from './s3-static-website.service.interface.js';
|
|
3
|
+
import type { IS3StaticWebsiteService } from './s3-static-website.service.interface.js';
|
|
4
4
|
export declare class S3StaticWebsiteService extends Service {
|
|
5
5
|
readonly awsRegionId: string;
|
|
6
6
|
readonly bucketName: string;
|
|
@@ -17,7 +17,7 @@ export declare class S3StaticWebsiteService extends Service {
|
|
|
17
17
|
constructor(regionId: RegionId, bucketName: string);
|
|
18
18
|
private generateSourceManifest;
|
|
19
19
|
addSource(directoryPath: string, subDirectoryOrFilePath?: string, filter?: (filePath: string) => boolean, transform?: (filePath: string) => string): Promise<void>;
|
|
20
|
-
|
|
20
|
+
diffProperties(): Promise<Diff[]>;
|
|
21
21
|
saveSourceManifest(): Promise<void>;
|
|
22
22
|
synth(): IS3StaticWebsiteService;
|
|
23
23
|
static unSynth(s3StaticWebsite: IS3StaticWebsiteService): Promise<S3StaticWebsiteService>;
|
|
@@ -101,7 +101,7 @@ let S3StaticWebsiteService = S3StaticWebsiteService_1 = class S3StaticWebsiteSer
|
|
|
101
101
|
}
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
|
-
async
|
|
104
|
+
async diffProperties() {
|
|
105
105
|
const stateManagementService = await Container.get(StateManagementService);
|
|
106
106
|
const manifestFileName = `${this.bucketName}-manifest.json`;
|
|
107
107
|
const oldManifestDataBuffer = await stateManagementService.getState(manifestFileName, '{}');
|
|
@@ -144,9 +144,9 @@ let S3StaticWebsiteService = S3StaticWebsiteService_1 = class S3StaticWebsiteSer
|
|
|
144
144
|
return {
|
|
145
145
|
awsRegionId: this.awsRegionId,
|
|
146
146
|
bucketName: this.bucketName,
|
|
147
|
-
excludePaths:
|
|
147
|
+
excludePaths: JSON.parse(JSON.stringify(this.excludePaths)),
|
|
148
148
|
serviceId: `${this.bucketName}-s3-static-website`,
|
|
149
|
-
sourcePaths:
|
|
149
|
+
sourcePaths: JSON.parse(JSON.stringify(this.sourcePaths)),
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
152
|
static async unSynth(s3StaticWebsite) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-static-website.service.model.js","sourceRoot":"","sources":["../../../../src/models/service/s3-static-website/s3-static-website.service.model.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"s3-static-website.service.model.js","sourceRoot":"","sources":["../../../../src/models/service/s3-static-website/s3-static-website.service.model.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACpG,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,yCAAyC,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAMhE,IAAM,sBAAsB,8BAA5B,MAAM,sBAAuB,SAAQ,OAAO;IACxC,WAAW,CAAS;IAEpB,UAAU,CAAS;IAEnB,YAAY,GAAgE,EAAE,CAAC;IAE/E,WAAW,GAKd,EAAE,CAAC;IAET,YAAY,QAAkB,EAAE,UAAkB;QAChD,KAAK,CAAC,GAAG,UAAU,oBAAoB,CAAC,CAAC;QAEzC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC;QACpE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,sBAAsB;QAClC,MAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QAE1C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,sBAAsB,CAAC,CAAC;gBACnF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChD,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,UAAU,CAAC,sBAAsB,CAAC,CAAC;gBACxF,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,CAAC;gBACxD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;oBACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;oBAEpC,IAAI,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,sBAAsB,CAAC,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;wBAC5G,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;4BACxB,WAAW,CAAC,IAAI,CAAC;gCACf,aAAa,EAAE,QAAQ;gCACvB,WAAW,EAAE,IAAI;gCACjB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC;gCAC1D,sBAAsB,EAAE,EAAE;6BAC3B,CAAC,CAAC;4BACH,SAAS;wBACX,CAAC;wBAED,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;wBAClE,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAChD,QAAQ,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;oBACjE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,SAAS,CACb,aAAqB,EACrB,sBAA+B,EAC/B,MAAsC,EACtC,SAAwC;QAExC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,sBAAsB,GAAG,EAAE,CAAC;QAC9B,CAAC;QAGD,sBAAsB,GAAG,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAGrE,MAAM,8BAA8B,GAAG,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;QACnF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAE1D,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YACnB,IAAI,CAAC,sBAAsB,EAAE,CAAC;gBAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;gBAC3C,aAAa,GAAG,GAAG,CAAC;gBACpB,sBAAsB,GAAG,IAAI,CAAC;YAChC,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACrE,IAAI,aAAa,EAAE,CAAC;gBAClB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;oBACpB,aAAa;oBACb,WAAW,EAAE,KAAK;oBAClB,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,sBAAsB;oBAClF,sBAAsB;iBACvB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;gBACpB,aAAa;gBACb,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,sBAAsB;gBAClF,sBAAsB;aACvB,CAAC,CAAC;YAEH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,8BAA8B,CAAC,CAAC;YAChE,KAAK,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;gBAC/B,QAAQ,GAAG,IAAI,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC;gBAElD,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACvD,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;wBACrB,aAAa;wBACb,sBAAsB,EAAE,QAAQ;qBACjC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAEQ,KAAK,CAAC,cAAc;QAC3B,MAAM,sBAAsB,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAE3E,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,UAAU,gBAAgB,CAAC;QAG5D,MAAM,qBAAqB,GAAG,MAAM,sBAAsB,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAC5F,MAAM,eAAe,GAAc,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC;QAGhF,MAAM,eAAe,GAAc,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAGvE,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;YACpG,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACtE,CAAC;QAGD,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;YACzC,IAAI,UAAU,IAAI,eAAe,EAAE,CAAC;gBAClC,IACE,eAAe,CAAC,UAAU,CAAC,CAAC,SAAS,KAAK,eAAe,CAAC,UAAU,CAAC,CAAC,SAAS;oBAC/E,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,EACzE,CAAC;oBACD,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC9E,CAAC;QACH,CAAC;QACD,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;YACzC,IAAI,CAAC,CAAC,UAAU,IAAI,eAAe,CAAC,EAAE,CAAC;gBACrC,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC3E,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,CAAC;QACZ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,sBAAsB,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;QAE3E,MAAM,gBAAgB,GAAG,GAAG,IAAI,CAAC,UAAU,gBAAgB,CAAC;QAC5D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEzD,MAAM,sBAAsB,CAAC,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACtG,CAAC;IAEQ,KAAK;QACZ,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC3D,SAAS,EAAE,GAAG,IAAI,CAAC,UAAU,oBAAoB;YACjD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC1D,CAAC;IACJ,CAAC;IAED,MAAM,CAAU,KAAK,CAAC,OAAO,CAAC,eAAwC;QACpE,MAAM,WAAW,GAAG,SAAS,CAAC,gCAAgC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC5F,MAAM,OAAO,GAAG,IAAI,wBAAsB,CAAC,WAAY,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;QACrF,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;QAC3D,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;QACzD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF,CAAA;AA1LY,sBAAsB;IADlC,KAAK,EAAE;;GACK,sBAAsB,CA0LlC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { ActionOutputs, Diff } from '@quadnix/octo';
|
|
2
|
-
|
|
3
|
-
export declare class AddS3StorageModelAction extends AAction {
|
|
1
|
+
import { ActionInputs, type ActionOutputs, Diff, type IModelAction } from '@quadnix/octo';
|
|
2
|
+
export declare class AddS3StorageModelAction implements IModelAction {
|
|
4
3
|
readonly ACTION_NAME: string;
|
|
4
|
+
collectInput(): string[];
|
|
5
5
|
filter(diff: Diff): boolean;
|
|
6
|
-
handle(diff: Diff): Promise<ActionOutputs>;
|
|
6
|
+
handle(diff: Diff, actionInputs: ActionInputs, actionOutputs: ActionOutputs): Promise<ActionOutputs>;
|
|
7
|
+
revert(): Promise<ActionOutputs>;
|
|
7
8
|
}
|
|
8
9
|
export declare class AddS3StorageModelActionFactory {
|
|
9
10
|
static create(): Promise<AddS3StorageModelAction>;
|
|
@@ -4,26 +4,31 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
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
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { Action, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
7
|
+
import { Action, DiffAction, Factory, ModelType, } from '@quadnix/octo';
|
|
8
8
|
import { S3Storage } from '../../../../resources/s3/storage/s3-storage.resource.js';
|
|
9
|
-
import {
|
|
10
|
-
let AddS3StorageModelAction = class AddS3StorageModelAction
|
|
9
|
+
import { S3StorageService } from '../s3-storage.service.model.js';
|
|
10
|
+
let AddS3StorageModelAction = class AddS3StorageModelAction {
|
|
11
11
|
ACTION_NAME = 'AddS3StorageModelAction';
|
|
12
|
+
collectInput() {
|
|
13
|
+
return [];
|
|
14
|
+
}
|
|
12
15
|
filter(diff) {
|
|
13
16
|
return (diff.action === DiffAction.ADD &&
|
|
17
|
+
diff.model instanceof S3StorageService &&
|
|
14
18
|
diff.model.MODEL_NAME === 'service' &&
|
|
15
|
-
diff.field === 'serviceId'
|
|
16
|
-
diff.model.serviceId.endsWith('s3-storage'));
|
|
19
|
+
diff.field === 'serviceId');
|
|
17
20
|
}
|
|
18
|
-
async handle(diff) {
|
|
21
|
+
async handle(diff, actionInputs, actionOutputs) {
|
|
19
22
|
const { awsRegionId, bucketName } = diff.model;
|
|
20
23
|
const s3Storage = new S3Storage(`bucket-${bucketName}`, {
|
|
21
24
|
awsRegionId,
|
|
22
25
|
Bucket: bucketName,
|
|
23
26
|
});
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
+
actionOutputs[s3Storage.resourceId] = s3Storage;
|
|
28
|
+
return actionOutputs;
|
|
29
|
+
}
|
|
30
|
+
async revert() {
|
|
31
|
+
return {};
|
|
27
32
|
}
|
|
28
33
|
};
|
|
29
34
|
AddS3StorageModelAction = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-s3-storage.model.action.js","sourceRoot":"","sources":["../../../../../src/models/service/s3-storage/actions/add-s3-storage.model.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"add-s3-storage.model.action.js","sourceRoot":"","sources":["../../../../../src/models/service/s3-storage/actions/add-s3-storage.model.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,MAAM,EAIN,UAAU,EACV,OAAO,EAEP,SAAS,GACV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,yDAAyD,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAG3D,IAAM,uBAAuB,GAA7B,MAAM,uBAAuB;IACzB,WAAW,GAAW,yBAAyB,CAAC;IAEzD,YAAY;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,CAAC,IAAU;QACf,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,GAAG;YAC9B,IAAI,CAAC,KAAK,YAAY,gBAAgB;YACtC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;YACnC,IAAI,CAAC,KAAK,KAAK,WAAW,CAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU,EAAE,YAA0B,EAAE,aAA4B;QAC/E,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAyB,CAAC;QAGnE,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,UAAU,UAAU,EAAE,EAAE;YACtD,WAAW;YACX,MAAM,EAAE,UAAU;SACnB,CAAC,CAAC;QACH,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;QAEhD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAA;AAhCY,uBAAuB;IADnC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;GACX,uBAAuB,CAgCnC;;AAGM,IAAM,8BAA8B,GAApC,MAAM,8BAA8B;IACzC,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,uBAAuB,EAAE,CAAC;IACvC,CAAC;CACF,CAAA;AAJY,8BAA8B;IAD1C,OAAO,CAA0B,uBAAuB,CAAC;GAC7C,8BAA8B,CAI1C"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ActionInputs, ActionOutputs, Diff } from '@quadnix/octo';
|
|
2
|
-
|
|
3
|
-
export declare class DeleteS3StorageModelAction extends AAction {
|
|
1
|
+
import { type ActionInputs, type ActionOutputs, Diff, type IModelAction } from '@quadnix/octo';
|
|
2
|
+
export declare class DeleteS3StorageModelAction implements IModelAction {
|
|
4
3
|
readonly ACTION_NAME: string;
|
|
5
4
|
collectInput(diff: Diff): string[];
|
|
6
5
|
filter(diff: Diff): boolean;
|
|
7
|
-
handle(diff: Diff, actionInputs: ActionInputs): Promise<ActionOutputs>;
|
|
6
|
+
handle(diff: Diff, actionInputs: ActionInputs, actionOutputs: ActionOutputs): Promise<ActionOutputs>;
|
|
7
|
+
revert(): Promise<ActionOutputs>;
|
|
8
8
|
}
|
|
9
9
|
export declare class DeleteS3StorageModelActionFactory {
|
|
10
10
|
static create(): Promise<DeleteS3StorageModelAction>;
|
|
@@ -4,9 +4,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
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
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { Action, DiffAction, Factory, ModelType } from '@quadnix/octo';
|
|
8
|
-
import {
|
|
9
|
-
let DeleteS3StorageModelAction = class DeleteS3StorageModelAction
|
|
7
|
+
import { Action, DiffAction, Factory, ModelType, } from '@quadnix/octo';
|
|
8
|
+
import { S3StorageService } from '../s3-storage.service.model.js';
|
|
9
|
+
let DeleteS3StorageModelAction = class DeleteS3StorageModelAction {
|
|
10
10
|
ACTION_NAME = 'DeleteS3StorageModelAction';
|
|
11
11
|
collectInput(diff) {
|
|
12
12
|
const { bucketName } = diff.model;
|
|
@@ -14,17 +14,19 @@ let DeleteS3StorageModelAction = class DeleteS3StorageModelAction extends AActio
|
|
|
14
14
|
}
|
|
15
15
|
filter(diff) {
|
|
16
16
|
return (diff.action === DiffAction.DELETE &&
|
|
17
|
+
diff.model instanceof S3StorageService &&
|
|
17
18
|
diff.model.MODEL_NAME === 'service' &&
|
|
18
|
-
diff.field === 'serviceId'
|
|
19
|
-
diff.model.serviceId.endsWith('s3-storage'));
|
|
19
|
+
diff.field === 'serviceId');
|
|
20
20
|
}
|
|
21
|
-
async handle(diff, actionInputs) {
|
|
21
|
+
async handle(diff, actionInputs, actionOutputs) {
|
|
22
22
|
const { bucketName } = diff.model;
|
|
23
23
|
const s3Storage = actionInputs[`resource.bucket-${bucketName}`];
|
|
24
|
-
s3Storage.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
s3Storage.remove();
|
|
25
|
+
actionOutputs[s3Storage.resourceId] = s3Storage;
|
|
26
|
+
return actionOutputs;
|
|
27
|
+
}
|
|
28
|
+
async revert() {
|
|
29
|
+
return {};
|
|
28
30
|
}
|
|
29
31
|
};
|
|
30
32
|
DeleteS3StorageModelAction = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-s3-storage.model.action.js","sourceRoot":"","sources":["../../../../../src/models/service/s3-storage/actions/delete-s3-storage.model.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"delete-s3-storage.model.action.js","sourceRoot":"","sources":["../../../../../src/models/service/s3-storage/actions/delete-s3-storage.model.action.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,MAAM,EAIN,UAAU,EACV,OAAO,EAEP,SAAS,GACV,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAG3D,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAC5B,WAAW,GAAW,4BAA4B,CAAC;IAE5D,YAAY,CAAC,IAAU;QACrB,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAyB,CAAC;QAEtD,OAAO,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,IAAU;QACf,OAAO,CACL,IAAI,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;YACjC,IAAI,CAAC,KAAK,YAAY,gBAAgB;YACtC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;YACnC,IAAI,CAAC,KAAK,KAAK,WAAW,CAC3B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAU,EAAE,YAA0B,EAAE,aAA4B;QAC/E,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,KAAyB,CAAC;QAEtD,MAAM,SAAS,GAAG,YAAY,CAAC,mBAAmB,UAAU,EAAE,CAAc,CAAC;QAC7E,SAAS,CAAC,MAAM,EAAE,CAAC;QACnB,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;QAEhD,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,MAAM;QACV,OAAO,EAAE,CAAC;IACZ,CAAC;CACF,CAAA;AA/BY,0BAA0B;IADtC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;GACX,0BAA0B,CA+BtC;;AAGM,IAAM,iCAAiC,GAAvC,MAAM,iCAAiC;IAC5C,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,OAAO,IAAI,0BAA0B,EAAE,CAAC;IAC1C,CAAC;CACF,CAAA;AAJY,iCAAiC;IAD7C,OAAO,CAA6B,0BAA0B,CAAC;GACnD,iCAAiC,CAI7C"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { IService } from '@quadnix/octo';
|
|
2
|
-
import { S3StorageService } from './s3-storage.service.model.js';
|
|
1
|
+
import type { IService } from '@quadnix/octo';
|
|
2
|
+
import type { S3StorageService } from './s3-storage.service.model.js';
|
|
3
3
|
export interface IS3StorageService extends IService {
|
|
4
4
|
awsRegionId: S3StorageService['awsRegionId'];
|
|
5
5
|
bucketName: S3StorageService['bucketName'];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Service } from '@quadnix/octo';
|
|
2
2
|
import { RegionId } from '../../region/aws.region.model.js';
|
|
3
|
-
import { AwsServer } from '../../server/aws.server.model.js';
|
|
4
|
-
import { IS3StorageService } from './s3-storage.service.interface.js';
|
|
3
|
+
import type { AwsServer } from '../../server/aws.server.model.js';
|
|
4
|
+
import type { IS3StorageService } from './s3-storage.service.interface.js';
|
|
5
5
|
export declare enum S3StorageAccess {
|
|
6
6
|
READ = "READ",
|
|
7
7
|
READ_WRITE = "READ_WRITE",
|
|
@@ -11,13 +11,14 @@ export declare class S3StorageService extends Service {
|
|
|
11
11
|
readonly awsRegionId: string;
|
|
12
12
|
readonly bucketName: string;
|
|
13
13
|
readonly directories: {
|
|
14
|
+
directoryAnchorName: string;
|
|
14
15
|
remoteDirectoryPath: string;
|
|
15
16
|
}[];
|
|
16
17
|
constructor(regionId: RegionId, bucketName: string);
|
|
17
18
|
addDirectory(remoteDirectoryPath: string): void;
|
|
18
19
|
allowDirectoryAccess(server: AwsServer, remoteDirectoryPath: string, accessLevel: S3StorageAccess): Promise<void>;
|
|
19
|
-
revokeDirectoryAccess(server: AwsServer, remoteDirectoryPath: string, accessLevel: S3StorageAccess): Promise<void>;
|
|
20
20
|
removeDirectory(remoteDirectoryPath: string): Promise<void>;
|
|
21
|
+
revokeDirectoryAccess(server: AwsServer, remoteDirectoryPath: string, accessLevel: S3StorageAccess): Promise<void>;
|
|
21
22
|
synth(): IS3StorageService;
|
|
22
23
|
static unSynth(s3Storage: IS3StorageService): Promise<S3StorageService>;
|
|
23
24
|
}
|
|
@@ -9,9 +9,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
var S3StorageService_1;
|
|
11
11
|
import { Container, Model, OverlayService, Service } from '@quadnix/octo';
|
|
12
|
+
import { S3DirectoryAnchor } from '../../../anchors/s3-directory.anchor.js';
|
|
12
13
|
import { CommonUtility } from '../../../utilities/common/common.utility.js';
|
|
13
14
|
import { AwsRegion, RegionId } from '../../region/aws.region.model.js';
|
|
14
|
-
import { S3StorageAccessOverlay } from '
|
|
15
|
+
import { S3StorageAccessOverlay } from '../../../overlays/s3-storage-access/s3-storage-access.overlay.js';
|
|
15
16
|
export var S3StorageAccess;
|
|
16
17
|
(function (S3StorageAccess) {
|
|
17
18
|
S3StorageAccess["READ"] = "READ";
|
|
@@ -31,51 +32,42 @@ let S3StorageService = S3StorageService_1 = class S3StorageService extends Servi
|
|
|
31
32
|
if (this.directories.find((d) => d.remoteDirectoryPath === remoteDirectoryPath)) {
|
|
32
33
|
throw new Error('Remote directory already added in S3 bucket!');
|
|
33
34
|
}
|
|
34
|
-
|
|
35
|
+
const directoryAnchorName = `${CommonUtility.hash(remoteDirectoryPath).substring(0, 12)}S3DirectoryAnchor`;
|
|
36
|
+
const directoryAnchor = new S3DirectoryAnchor(directoryAnchorName, {}, this);
|
|
37
|
+
this.addAnchor(directoryAnchor);
|
|
38
|
+
this.directories.push({ directoryAnchorName, remoteDirectoryPath });
|
|
35
39
|
}
|
|
36
40
|
async allowDirectoryAccess(server, remoteDirectoryPath, accessLevel) {
|
|
37
41
|
const directory = this.directories.find((d) => d.remoteDirectoryPath === remoteDirectoryPath);
|
|
38
42
|
if (!directory) {
|
|
39
43
|
throw new Error('Cannot find remote directory!');
|
|
40
44
|
}
|
|
41
|
-
const principal = server.getAnchors()[0];
|
|
42
|
-
const overlayId = CommonUtility.hash(principal.anchorId, directory.remoteDirectoryPath, accessLevel);
|
|
43
45
|
const allowRead = accessLevel === S3StorageAccess.READ || accessLevel === S3StorageAccess.READ_WRITE;
|
|
44
46
|
const allowWrite = accessLevel === S3StorageAccess.WRITE || accessLevel === S3StorageAccess.READ_WRITE;
|
|
45
47
|
if (!allowRead && !allowWrite) {
|
|
46
48
|
return;
|
|
47
49
|
}
|
|
50
|
+
const directoryAnchor = this.getAnchor(directory.directoryAnchorName);
|
|
51
|
+
const serverRoleAnchor = server.getAnchor('ServerIamRoleAnchor');
|
|
48
52
|
const overlayService = await Container.get(OverlayService);
|
|
53
|
+
const overlayIdSuffix = CommonUtility.hash(serverRoleAnchor.anchorId, directory.remoteDirectoryPath, accessLevel);
|
|
54
|
+
const overlayId = `s3-storage-access-overlay-${overlayIdSuffix}`;
|
|
49
55
|
const s3StorageAccessOverlay = new S3StorageAccessOverlay(overlayId, {
|
|
50
56
|
allowRead,
|
|
51
57
|
allowWrite,
|
|
52
58
|
bucketName: this.bucketName,
|
|
53
59
|
remoteDirectoryPath: directory.remoteDirectoryPath,
|
|
54
|
-
}, [
|
|
55
|
-
|
|
56
|
-
}
|
|
57
|
-
async revokeDirectoryAccess(server, remoteDirectoryPath, accessLevel) {
|
|
58
|
-
const directory = this.directories.find((d) => d.remoteDirectoryPath === remoteDirectoryPath);
|
|
59
|
-
if (!directory) {
|
|
60
|
-
throw new Error('Cannot find remote directory!');
|
|
61
|
-
}
|
|
62
|
-
const principal = server.getAnchors()[0];
|
|
63
|
-
const overlayId = CommonUtility.hash(principal.anchorId, directory.remoteDirectoryPath, accessLevel);
|
|
64
|
-
const overlayService = await Container.get(OverlayService);
|
|
65
|
-
const overlay = await overlayService.getOverlayById(overlayId);
|
|
66
|
-
if (!overlay) {
|
|
67
|
-
throw new Error('Cannot find overlay!');
|
|
68
|
-
}
|
|
69
|
-
await overlayService.removeOverlay(overlay);
|
|
60
|
+
}, [serverRoleAnchor, directoryAnchor]);
|
|
61
|
+
overlayService.addOverlay(s3StorageAccessOverlay);
|
|
70
62
|
}
|
|
71
63
|
async removeDirectory(remoteDirectoryPath) {
|
|
72
64
|
const directoryIndex = this.directories.findIndex((d) => d.remoteDirectoryPath === remoteDirectoryPath);
|
|
73
65
|
if (directoryIndex === -1) {
|
|
74
66
|
throw new Error('Cannot find remote directory!');
|
|
75
67
|
}
|
|
76
|
-
const overlayService = await Container.get(OverlayService);
|
|
77
68
|
const directory = this.directories[directoryIndex];
|
|
78
|
-
const
|
|
69
|
+
const overlayService = await Container.get(OverlayService);
|
|
70
|
+
const overlays = overlayService.getOverlaysByProperties([
|
|
79
71
|
{ key: 'bucketName', value: this.bucketName },
|
|
80
72
|
{ key: 'remoteDirectoryPath', value: directory.remoteDirectoryPath },
|
|
81
73
|
]);
|
|
@@ -84,11 +76,23 @@ let S3StorageService = S3StorageService_1 = class S3StorageService extends Servi
|
|
|
84
76
|
}
|
|
85
77
|
this.directories.splice(directoryIndex, 1);
|
|
86
78
|
}
|
|
79
|
+
async revokeDirectoryAccess(server, remoteDirectoryPath, accessLevel) {
|
|
80
|
+
const directory = this.directories.find((d) => d.remoteDirectoryPath === remoteDirectoryPath);
|
|
81
|
+
if (!directory) {
|
|
82
|
+
throw new Error('Cannot find remote directory!');
|
|
83
|
+
}
|
|
84
|
+
const serverRoleAnchor = server.getAnchor('ServerIamRoleAnchor');
|
|
85
|
+
const overlayService = await Container.get(OverlayService);
|
|
86
|
+
const overlayIdSuffix = CommonUtility.hash(serverRoleAnchor.anchorId, directory.remoteDirectoryPath, accessLevel);
|
|
87
|
+
const overlayId = `s3-storage-access-overlay-${overlayIdSuffix}`;
|
|
88
|
+
const overlay = overlayService.getOverlayById(overlayId);
|
|
89
|
+
overlayService.removeOverlay(overlay);
|
|
90
|
+
}
|
|
87
91
|
synth() {
|
|
88
92
|
return {
|
|
89
93
|
awsRegionId: this.awsRegionId,
|
|
90
94
|
bucketName: this.bucketName,
|
|
91
|
-
directories:
|
|
95
|
+
directories: JSON.parse(JSON.stringify(this.directories)),
|
|
92
96
|
serviceId: `${this.bucketName}-s3-storage`,
|
|
93
97
|
};
|
|
94
98
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"s3-storage.service.model.js","sourceRoot":"","sources":["../../../../src/models/service/s3-storage/s3-storage.service.model.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"s3-storage.service.model.js","sourceRoot":"","sources":["../../../../src/models/service/s3-storage/s3-storage.service.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ActionInputs, type ActionOutputs, Diff, type IModelAction } from '@quadnix/octo';
|
|
2
|
+
export declare class AddSubnetModelAction implements IModelAction {
|
|
3
|
+
readonly ACTION_NAME: string;
|
|
4
|
+
collectInput(diff: Diff): string[];
|
|
5
|
+
filter(diff: Diff): boolean;
|
|
6
|
+
handle(diff: Diff, actionInputs: ActionInputs, actionOutputs: ActionOutputs): Promise<ActionOutputs>;
|
|
7
|
+
revert(): Promise<ActionOutputs>;
|
|
8
|
+
}
|
|
9
|
+
export declare class AddSubnetModelActionFactory {
|
|
10
|
+
static create(): Promise<AddSubnetModelAction>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
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 { Action, DiffAction, Factory, ModelType, SubnetType, } from '@quadnix/octo';
|
|
8
|
+
import { NetworkAcl } from '../../../resources/network-acl/network-acl.resource.js';
|
|
9
|
+
import { RouteTable } from '../../../resources/route-table/route-table.resource.js';
|
|
10
|
+
import { Subnet } from '../../../resources/subnet/subnet.resource.js';
|
|
11
|
+
import { AwsSubnet } from '../aws.subnet.model.js';
|
|
12
|
+
let AddSubnetModelAction = class AddSubnetModelAction {
|
|
13
|
+
ACTION_NAME = 'AddSubnetModelAction';
|
|
14
|
+
collectInput(diff) {
|
|
15
|
+
const subnet = diff.model;
|
|
16
|
+
const parents = subnet.getParents();
|
|
17
|
+
const awsRegion = parents['region'][0].to;
|
|
18
|
+
const regionId = awsRegion.regionId;
|
|
19
|
+
const siblings = subnet.getSiblings()['subnet'] ?? [];
|
|
20
|
+
const siblingSubnets = siblings.map((s) => s.to);
|
|
21
|
+
return [
|
|
22
|
+
`input.region.${regionId}.subnet.${subnet.subnetName}.CidrBlock`,
|
|
23
|
+
`resource.vpc-${regionId}`,
|
|
24
|
+
`resource.igw-${regionId}`,
|
|
25
|
+
...siblingSubnets.map((s) => `resource.subnet-${s.subnetId}`),
|
|
26
|
+
];
|
|
27
|
+
}
|
|
28
|
+
filter(diff) {
|
|
29
|
+
return (diff.action === DiffAction.ADD &&
|
|
30
|
+
diff.model instanceof AwsSubnet &&
|
|
31
|
+
diff.model.MODEL_NAME === 'subnet' &&
|
|
32
|
+
diff.field === 'subnetId');
|
|
33
|
+
}
|
|
34
|
+
async handle(diff, actionInputs, actionOutputs) {
|
|
35
|
+
const subnet = diff.model;
|
|
36
|
+
const parents = subnet.getParents();
|
|
37
|
+
const awsRegion = parents['region'][0].to;
|
|
38
|
+
const regionId = awsRegion.regionId;
|
|
39
|
+
const siblings = subnet.getSiblings()['subnet'] ?? [];
|
|
40
|
+
const siblingSubnets = siblings.map((s) => s.to);
|
|
41
|
+
const subnetCidrBlock = actionInputs[`input.region.${regionId}.subnet.${subnet.subnetName}.CidrBlock`];
|
|
42
|
+
const vpc = actionInputs[`resource.vpc-${regionId}`];
|
|
43
|
+
const internetGateway = actionInputs[`resource.igw-${regionId}`];
|
|
44
|
+
const siblingSubnetsSubnet = siblingSubnets.map((s) => actionInputs[`resource.subnet-${s.subnetId}`]);
|
|
45
|
+
const subnetSubnet = new Subnet(`subnet-${subnet.subnetId}`, {
|
|
46
|
+
AvailabilityZone: awsRegion.awsRegionAZ,
|
|
47
|
+
awsRegionId: awsRegion.awsRegionId,
|
|
48
|
+
CidrBlock: subnetCidrBlock,
|
|
49
|
+
}, [vpc]);
|
|
50
|
+
actionOutputs[subnetSubnet.resourceId] = subnetSubnet;
|
|
51
|
+
const subnetRT = new RouteTable(`rt-${subnet.subnetId}`, { associateWithInternetGateway: subnet.subnetType === SubnetType.PUBLIC, awsRegionId: awsRegion.awsRegionId }, [vpc, internetGateway, subnetSubnet]);
|
|
52
|
+
actionOutputs[subnetRT.resourceId] = subnetRT;
|
|
53
|
+
const subnetNAclEntries = [];
|
|
54
|
+
if (subnet.disableSubnetIntraNetwork) {
|
|
55
|
+
subnetNAclEntries.push({
|
|
56
|
+
CidrBlock: subnetCidrBlock,
|
|
57
|
+
Egress: false,
|
|
58
|
+
PortRange: { From: -1, To: -1 },
|
|
59
|
+
Protocol: '-1',
|
|
60
|
+
RuleAction: 'deny',
|
|
61
|
+
RuleNumber: 1,
|
|
62
|
+
});
|
|
63
|
+
subnetNAclEntries.push({
|
|
64
|
+
CidrBlock: subnetCidrBlock,
|
|
65
|
+
Egress: true,
|
|
66
|
+
PortRange: { From: -1, To: -1 },
|
|
67
|
+
Protocol: '-1',
|
|
68
|
+
RuleAction: 'deny',
|
|
69
|
+
RuleNumber: 1,
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
siblingSubnetsSubnet.forEach((s, i) => {
|
|
73
|
+
subnetNAclEntries.push({
|
|
74
|
+
CidrBlock: s.properties.CidrBlock,
|
|
75
|
+
Egress: false,
|
|
76
|
+
PortRange: { From: -1, To: -1 },
|
|
77
|
+
Protocol: '-1',
|
|
78
|
+
RuleAction: 'allow',
|
|
79
|
+
RuleNumber: (i + 1) * 10,
|
|
80
|
+
});
|
|
81
|
+
subnetNAclEntries.push({
|
|
82
|
+
CidrBlock: s.properties.CidrBlock,
|
|
83
|
+
Egress: true,
|
|
84
|
+
PortRange: { From: -1, To: -1 },
|
|
85
|
+
Protocol: '-1',
|
|
86
|
+
RuleAction: 'allow',
|
|
87
|
+
RuleNumber: (i + 1) * 10,
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
const subnetNAcl = new NetworkAcl(`nacl-${subnet.subnetId}`, {
|
|
91
|
+
awsRegionId: awsRegion.awsRegionId,
|
|
92
|
+
entries: subnetNAclEntries,
|
|
93
|
+
}, [vpc, subnetSubnet]);
|
|
94
|
+
actionOutputs[subnetNAcl.resourceId] = subnetNAcl;
|
|
95
|
+
return actionOutputs;
|
|
96
|
+
}
|
|
97
|
+
async revert() {
|
|
98
|
+
return {};
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
AddSubnetModelAction = __decorate([
|
|
102
|
+
Action(ModelType.MODEL)
|
|
103
|
+
], AddSubnetModelAction);
|
|
104
|
+
export { AddSubnetModelAction };
|
|
105
|
+
let AddSubnetModelActionFactory = class AddSubnetModelActionFactory {
|
|
106
|
+
static async create() {
|
|
107
|
+
return new AddSubnetModelAction();
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
AddSubnetModelActionFactory = __decorate([
|
|
111
|
+
Factory(AddSubnetModelAction)
|
|
112
|
+
], AddSubnetModelActionFactory);
|
|
113
|
+
export { AddSubnetModelActionFactory };
|
|
114
|
+
//# sourceMappingURL=add-subnet.model.action.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-subnet.model.action.js","sourceRoot":"","sources":["../../../../src/models/subnet/actions/add-subnet.model.action.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ActionInputs, type ActionOutputs, Diff, type IModelAction } from '@quadnix/octo';
|
|
2
|
+
export declare class DeleteSubnetModelAction implements IModelAction {
|
|
3
|
+
readonly ACTION_NAME: string;
|
|
4
|
+
collectInput(diff: Diff): string[];
|
|
5
|
+
filter(diff: Diff): boolean;
|
|
6
|
+
handle(diff: Diff, actionInputs: ActionInputs, actionOutputs: ActionOutputs): Promise<ActionOutputs>;
|
|
7
|
+
revert(): Promise<ActionOutputs>;
|
|
8
|
+
}
|
|
9
|
+
export declare class DeleteSubnetModelActionFactory {
|
|
10
|
+
static create(): Promise<DeleteSubnetModelAction>;
|
|
11
|
+
}
|