@kensio/yulin 1.21.3 → 1.21.5
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/service/athena/engine/sim-athena-column-types.d.ts +2 -0
- package/dist/service/athena/engine/sim-athena-column-types.js +4 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.d.ts +7 -0
- package/dist/service/athena/engine/sim-athena-delimited-format.js +51 -0
- package/dist/service/athena/engine/sim-athena-engine-result.js +5 -0
- package/dist/service/athena/engine/sim-athena-engine-run.d.ts +22 -2
- package/dist/service/athena/engine/sim-athena-engine-run.js +21 -31
- package/dist/service/athena/engine/sim-athena-loaded-tables.d.ts +10 -0
- package/dist/service/athena/engine/sim-athena-loaded-tables.js +35 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.d.ts +25 -0
- package/dist/service/athena/engine/sim-athena-parquet-module.js +39 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.d.ts +13 -0
- package/dist/service/athena/engine/sim-athena-parquet-records.js +57 -0
- package/dist/service/athena/engine/sim-athena-query-engine.d.ts +23 -5
- package/dist/service/athena/engine/sim-athena-query-engine.js +31 -10
- package/dist/service/athena/engine/sim-athena-record-reader.d.ts +12 -6
- package/dist/service/athena/engine/sim-athena-record-reader.js +28 -53
- package/dist/service/athena/engine/sim-athena-sql-translation.d.ts +15 -9
- package/dist/service/athena/engine/sim-athena-sql-translation.js +25 -13
- package/dist/service/athena/engine/sim-athena-sqlite-values.d.ts +5 -0
- package/dist/service/athena/engine/sim-athena-sqlite-values.js +24 -1
- package/dist/service/athena/engine/sim-athena-table-objects.d.ts +7 -2
- package/dist/service/athena/engine/sim-athena-table-objects.js +8 -4
- package/dist/service/athena/engine/sim-athena-table-rows.js +4 -3
- package/dist/service/athena/engine/sim-athena-turn-down.d.ts +26 -0
- package/dist/service/athena/engine/sim-athena-turn-down.js +43 -0
- package/dist/service/athena/execution/sim-athena-query-completion.d.ts +3 -1
- package/dist/service/athena/execution/sim-athena-query-completion.js +7 -1
- package/dist/service/athena/index.d.ts +1 -1
- package/dist/service/athena/index.js +1 -1
- package/dist/service/athena/result/sim-athena-query-answer.d.ts +12 -0
- package/dist/service/athena/result/sim-athena-query-answer.js +26 -4
- package/dist/service/athena/sim-athena-answered-query.fixture.d.ts +2 -0
- package/dist/service/athena/sim-athena-answered-query.fixture.js +1 -0
- package/dist/service/athena/sim-athena-engine.fixture.d.ts +20 -0
- package/dist/service/athena/sim-athena-engine.fixture.js +34 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.d.ts +23 -0
- package/dist/service/cloudformation/authorize/sim-cloudformation-authorization.js +37 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts +18 -13
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +16 -24
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.d.ts +2 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-copier.js +1 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.d.ts +7 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-file.js +13 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.d.ts +6 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/copy/sim-cdk-bucket-deploy-pruner.js +7 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.d.ts +50 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/notify/sim-cdk-bucket-deploy-notifier.js +71 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/sim-cdk-bucket-deployment.js +6 -1
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.d.ts +5 -0
- package/dist/service/cloudformation/cdk/s3/bucket-deployment/source/sim-cdk-bucket-deploy-source.js +7 -0
- package/dist/service/cloudformation/cdk/sim-cdk-cloud-assembly.factory.d.ts +12 -0
- package/dist/service/cloudformation/cdk/sim-cdk-cloud-assembly.factory.js +16 -7
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.d.ts +9 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-arn.js +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.d.ts +42 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-changes.js +69 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.d.ts +62 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-commands.js +89 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.d.ts +31 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-execution.js +59 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.d.ts +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-failure.js +19 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.d.ts +17 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-input.js +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.d.ts +18 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack-id.js +13 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.d.ts +45 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-stack.js +52 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.d.ts +12 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set-type.js +21 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.d.ts +54 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.js +49 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.d.ts +35 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-set.type.js +1 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.d.ts +53 -0
- package/dist/service/cloudformation/changeset/sim-cfn-change-sets.js +83 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.d.ts +32 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.d.ts +38 -0
- package/dist/service/cloudformation/command/create-change-set/create-change-set.handler.js +80 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts +3 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +16 -13
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.d.ts +22 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.d.ts +27 -0
- package/dist/service/cloudformation/command/delete-change-set/delete-change-set.handler.js +35 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.command.d.ts +6 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.d.ts +11 -0
- package/dist/service/cloudformation/command/delete-stack/delete-stack.handler.js +15 -1
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.d.ts +48 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.d.ts +23 -0
- package/dist/service/cloudformation/command/describe-change-set/describe-change-set.handler.js +52 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.d.ts +3 -0
- package/dist/service/cloudformation/command/describe-stacks/describe-stacks.handler.js +8 -4
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.d.ts +18 -6
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-described-stacks.js +22 -7
- package/dist/service/cloudformation/command/describe-stacks/sim-cfn-stack-describer.js +1 -1
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.d.ts +25 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.command.js +1 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.d.ts +31 -0
- package/dist/service/cloudformation/command/execute-change-set/execute-change-set.handler.js +37 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.d.ts +36 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.command.js +1 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.d.ts +26 -0
- package/dist/service/cloudformation/command/list-change-sets/list-change-sets.handler.js +39 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.d.ts +31 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-previous-values.js +52 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.d.ts +22 -0
- package/dist/service/cloudformation/command/update-stack/update-stack-template.js +34 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.command.d.ts +17 -1
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts +6 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +15 -16
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-options-deployed.d.ts +10 -0
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-options-deployed.js +14 -0
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.d.ts +11 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.js +3 -2
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts +5 -8
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.js +0 -14
- package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +9 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +2 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +10 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js +1 -0
- package/dist/service/cloudformation/error/sim-cloudformation.error.d.ts +21 -0
- package/dist/service/cloudformation/error/sim-cloudformation.error.js +25 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.d.ts +7 -0
- package/dist/service/cloudformation/parameters/pseudo/sim-cfn-pseudo-parameters.js +3 -1
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.d.ts +9 -0
- package/dist/service/cloudformation/parameters/sim-cfn-parameters.js +12 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.d.ts +4 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-delete-operation.js +10 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.d.ts +44 -0
- package/dist/service/cloudformation/resource/delete/sim-cfn-resource-retention.js +33 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.d.ts +15 -0
- package/dist/service/cloudformation/resource/sim-cfn-resource-record.js +21 -1
- package/dist/service/cloudformation/resource/sim-cfn-resource.d.ts +9 -7
- package/dist/service/cloudformation/resource/sim-cfn-resource.js +11 -11
- package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +8 -0
- package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.d.ts +3 -3
- package/dist/service/cloudformation/resource/state/sim-cfn-resource-deletion-state.js +3 -3
- package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.d.ts +4 -0
- package/dist/service/cloudformation/resource/template/sim-cfn-resource-template-reader.js +9 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.d.ts +37 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.js +77 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.d.ts +51 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-auth.types.js +10 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-authorizers.js +34 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.d.ts +21 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-api-identity.js +31 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.d.ts +14 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-definition.js +1 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-authorizer-function.js +58 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-event-authorization.js +89 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-api-auth.js +65 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-jwt-authorizer.js +60 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-http-lambda-authorizer.js +50 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.d.ts +13 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-prefixes.js +30 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-identity-source.js +44 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-api-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.d.ts +11 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-cognito-authorizer.js +43 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.d.ts +15 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-rest-lambda-authorizer.js +67 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.d.ts +26 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-template-api-auth.js +61 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.d.ts +18 -0
- package/dist/service/cloudformation/sam/api/auth/sim-cfn-sam-unsupported-auth.js +59 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.d.ts +4 -0
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-http-api.js +12 -5
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api-template.factory.js +1 -1
- package/dist/service/cloudformation/sam/api/sim-cfn-sam-rest-api.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-api-event.js +7 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.d.ts +26 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-cognito-event.js +88 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.d.ts +12 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-declared-event.js +1 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-function-events.js +8 -5
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-event.js +23 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.d.ts +9 -2
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-http-api-route.js +5 -3
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.d.ts +6 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-implicit-http-api.js +7 -1
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.d.ts +19 -0
- package/dist/service/cloudformation/sam/function/event/sim-cfn-sam-triggered-user-pool.js +69 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.d.ts +5 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-template.factory.js +3 -1
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.d.ts +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-type.js +8 -0
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function-url.js +1 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.d.ts +6 -4
- package/dist/service/cloudformation/sam/function/sim-cfn-sam-function.js +2 -4
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.d.ts +31 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-error.js +17 -0
- package/dist/service/cloudformation/sam/sim-cfn-sam-expansion.js +11 -6
- package/dist/service/cloudformation/sdk/sim-cloudformation-sdk-command-router.js +20 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-api.d.ts +4 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-api.js +6 -3
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.d.ts +10 -0
- package/dist/service/cloudformation/serve/sim-cloudformation-change-set-api.js +94 -0
- package/dist/service/cloudformation/sim-cloudformation.d.ts +31 -0
- package/dist/service/cloudformation/sim-cloudformation.js +56 -9
- package/dist/service/cloudformation/stack/resource-map/sim-cfn-stack-resource-map.js +1 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.d.ts +20 -0
- package/dist/service/cloudformation/stack/sim-cfn-deleted-stacks.js +23 -0
- package/dist/service/cloudformation/stack/sim-cfn-deployed-stack.type.d.ts +6 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-deploy-context.d.ts +47 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-deploy-context.js +46 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.d.ts +30 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-id.js +24 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +53 -20
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +79 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +28 -16
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +60 -32
- package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +21 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.d.ts +7 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-deletion-lifecycle.js +3 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +2 -1
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.d.ts +18 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-retained-logical-ids.js +30 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.d.ts +9 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-guard.js +14 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.d.ts +25 -14
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-lifecycle.js +41 -24
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.d.ts +9 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-update-plan.js +14 -0
- package/dist/service/cloudformation/stack/update/sim-cfn-stack-updater.js +6 -1
- package/dist/service/cloudformation/template/condition/sim-cfn-condition-expression.d.ts +12 -3
- package/dist/service/cloudformation/template/condition/sim-cfn-condition-expression.js +29 -3
- package/dist/service/cloudformation/template/condition/sim-cfn-output-conditions.d.ts +28 -0
- package/dist/service/cloudformation/template/condition/sim-cfn-output-conditions.js +39 -0
- package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.d.ts +25 -1
- package/dist/service/cloudformation/template/node/fn/find-in-map/sim-cfn-fn-find-in-map.js +43 -11
- package/dist/service/cloudformation/template/parse/fn/find-in-map/sim-cfn-fn-find-in-map-parser.d.ts +7 -0
- package/dist/service/cloudformation/template/parse/fn/find-in-map/sim-cfn-fn-find-in-map-parser.js +29 -3
- package/dist/service/cloudformation/template/sim-cfn-command-template.d.ts +40 -0
- package/dist/service/cloudformation/template/sim-cfn-command-template.js +45 -0
- package/dist/service/cloudformation/template/sim-cfn-template.d.ts +7 -0
- package/dist/service/cloudformation/template/sim-cfn-template.js +15 -1
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.d.ts +2 -0
- package/dist/service/cloudfront/origin/custom/sim-cf-custom-origin-request.js +49 -0
- package/dist/service/cloudfront/origin/custom/sim-cloudfront-custom-origin.js +1 -0
- package/dist/service/cloudfront/origin/s3/sim-cf-s3-origin-responses.js +1 -0
- package/dist/service/cognito/serve/page/sim-cognito-provider-page.js +1 -1
- package/dist/service/cognito/user-pool/idp/sim-cognito-attribute-mapping.d.ts +5 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-attribute-mapping.js +17 -0
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.d.ts +5 -5
- package/dist/service/cognito/user-pool/idp/sim-cognito-presented-external-user.js +24 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query-expressions.d.ts +11 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query-expressions.js +20 -8
- package/dist/service/dynamodb/command/query/sim-dynamodb-query.js +2 -0
- package/dist/service/dynamodb/command/query/sim-dynamodb-unsimulated-query-input.js +0 -1
- package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.d.ts +14 -4
- package/dist/service/dynamodb/command/read/sim-dynamodb-read-answer.js +16 -4
- package/dist/service/dynamodb/command/read/sim-dynamodb-table-read.fixture.d.ts +17 -0
- package/dist/service/dynamodb/command/read/sim-dynamodb-table-read.fixture.js +39 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-expressions.d.ts +28 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan-expressions.js +50 -0
- package/dist/service/dynamodb/command/scan/sim-dynamodb-scan.js +12 -5
- package/dist/service/dynamodb/command/scan/sim-dynamodb-unsimulated-scan-input.d.ts +3 -3
- package/dist/service/dynamodb/command/scan/sim-dynamodb-unsimulated-scan-input.js +3 -4
- package/dist/service/dynamodb/expression/filter/sim-dynamodb-filter-expression.d.ts +5 -16
- package/dist/service/dynamodb/expression/filter/sim-dynamodb-filter-expression.js +4 -21
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection-expression.d.ts +15 -0
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection-expression.js +18 -1
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection.d.ts +13 -0
- package/dist/service/dynamodb/expression/projection/sim-dynamodb-projection.js +15 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-properties.js +2 -0
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-property-rules.js +5 -3
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.d.ts +21 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-cors.js +37 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +6 -0
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js +5 -1
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts +2 -3
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js +1 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.d.ts +6 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-input.js +10 -0
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping-refusals.js +2 -6
- package/dist/service/lambda/command/event-source-mapping/create-event-source-mapping.handler.js +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +2 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-constraints.js +49 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.d.ts +25 -0
- package/dist/service/lambda/command/function-url/function-url-cors-input.js +57 -0
- package/dist/service/lambda/command/function-url/function-url-input.d.ts +7 -0
- package/dist/service/lambda/command/function-url/function-url-input.js +9 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-invocation.js +10 -13
- package/dist/service/lambda/command/invoke/async/sim-lambda-async-outcome.js +2 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.d.ts +13 -0
- package/dist/service/lambda/command/invoke/async/sim-lambda-handler-attempt.js +12 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts +2 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js +1 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-bus.js +1 -1
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-function.js +8 -12
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-queue.js +4 -3
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-send.d.ts +2 -0
- package/dist/service/lambda/destination/deliver/sim-lambda-destination-topic.js +4 -3
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.d.ts +4 -6
- package/dist/service/lambda/destination/sim-aws-lambda-destinations.js +6 -6
- package/dist/service/lambda/destination/sim-lambda-destination-targets.d.ts +3 -0
- package/dist/service/lambda/event-source/poll/kinesis/sim-lambda-kinesis-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-dynamodb-stream-delivery.js +4 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.d.ts +22 -3
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-outcome.js +39 -9
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.d.ts +7 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-batch-response.js +14 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.d.ts +9 -15
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-checkpoint.js +9 -16
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.d.ts +10 -6
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-progress.js +22 -12
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.d.ts +23 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-record-times.js +18 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.d.ts +12 -13
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry-backoff.js +24 -17
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.d.ts +64 -0
- package/dist/service/lambda/event-source/poll/sim-lambda-stream-retry.js +86 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-arn.js +8 -1
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/queue/sim-lambda-sqs-event-source-rules.js +7 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.d.ts +11 -1
- package/dist/service/lambda/event-source/sim-lambda-event-source-mapping.js +13 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.d.ts +39 -0
- package/dist/service/lambda/event-source/sim-lambda-event-source-retry-limits.js +46 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.d.ts +56 -0
- package/dist/service/lambda/event-source/sim-lambda-stream-retry-limits.js +110 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.d.ts +5 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-arn.js +7 -1
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.d.ts +6 -0
- package/dist/service/lambda/event-source/stream/kinesis/sim-lambda-kinesis-event-source-rules.js +6 -0
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.d.ts +6 -1
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-arn.js +8 -6
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.d.ts +10 -8
- package/dist/service/lambda/event-source/stream/sim-lambda-dynamodb-stream-event-source-rules.js +18 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +8 -2
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js +2 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +2 -11
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +13 -39
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +7 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +13 -7
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.d.ts +23 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-handler-lookup.js +42 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.d.ts +12 -4
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-output-stream.js +15 -5
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.d.ts +7 -0
- package/dist/service/lambda/function/invoke/sim-lambda-host-scope.js +6 -2
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.d.ts +26 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation-deadline.js +84 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.d.ts +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invocation.js +44 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +6 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +1 -2
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.d.ts +6 -1
- package/dist/service/lambda/function/invoke/sim-lambda-process-output.js +19 -6
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.d.ts +15 -0
- package/dist/service/lambda/function/invoke/sim-lambda-timed-out.error.js +18 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.d.ts +12 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clear-timer.js +28 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.d.ts +46 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-clock-timer.js +104 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.d.ts +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-host-timers.js +27 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.d.ts +43 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-invocation-timers.js +112 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.d.ts +57 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-process-timers.js +79 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.d.ts +10 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-delay.js +15 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.d.ts +11 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-global.js +24 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.d.ts +50 -0
- package/dist/service/lambda/function/invoke/timer/sim-lambda-timer-handle.js +43 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.d.ts +17 -0
- package/dist/service/lambda/function/logging/sim-lambda-function-logging.js +12 -1
- package/dist/service/lambda/function/logging/sim-lambda-output.d.ts +56 -0
- package/dist/service/lambda/function/logging/sim-lambda-output.js +62 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.d.ts +8 -0
- package/dist/service/lambda/function/outbound/sim-lambda-aws-api-outbound.js +27 -1
- package/dist/service/lambda/function/sim-lambda-function.d.ts +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +11 -9
- package/dist/service/lambda/function/sim-lambda-function.type.d.ts +15 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.d.ts +22 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.factory.js +17 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-cors.js +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js +2 -1
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +2 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts +16 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.js +16 -1
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.js +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.d.ts +50 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-cors-headers.js +96 -0
- package/dist/service/lambda/serve/sim-lambda-controller.d.ts +14 -0
- package/dist/service/lambda/serve/sim-lambda-controller.js +27 -0
- package/dist/service/lambda/sim-lambda-commands.d.ts +10 -0
- package/dist/service/lambda/sim-lambda-commands.js +11 -0
- package/dist/service/lambda/sim-lambda.d.ts +12 -0
- package/dist/service/lambda/sim-lambda.js +13 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.d.ts +67 -0
- package/dist/service/s3/bucket/encryption/sim-s3-bucket-encryption.js +69 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.d.ts +4 -31
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-configuration.js +7 -6
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.d.ts +5 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-expiry.js +8 -4
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.d.ts +1 -14
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-selection.js +16 -8
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.d.ts +41 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-subject.js +1 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.d.ts +14 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-sweep.js +32 -2
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.d.ts +33 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition-instant.js +48 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.d.ts +16 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-lifecycle-transition.js +44 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.d.ts +8 -0
- package/dist/service/s3/bucket/lifecycle/sim-s3-noncurrent-sweep.js +27 -0
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.d.ts +1 -1
- package/dist/service/s3/bucket/notification/sim-s3-notification-event.js +5 -0
- package/dist/service/s3/bucket/notification/sim-s3-unsimulated-notification-events.js +0 -3
- package/dist/service/s3/bucket/sim-s3-bucket-access.d.ts +3 -0
- package/dist/service/s3/bucket/sim-s3-bucket-access.js +6 -2
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.d.ts +84 -0
- package/dist/service/s3/bucket/sim-s3-bucket-configuration.js +115 -0
- package/dist/service/s3/bucket/sim-s3-bucket-maker.d.ts +31 -0
- package/dist/service/s3/bucket/sim-s3-bucket-maker.js +41 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.d.ts +10 -0
- package/dist/service/s3/bucket/sim-s3-bucket-objects.js +18 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.d.ts +41 -0
- package/dist/service/s3/bucket/sim-s3-bucket-properties.js +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +11 -83
- package/dist/service/s3/bucket/sim-s3-bucket.js +14 -83
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.d.ts +6 -0
- package/dist/service/s3/bucket/sim-s3-public-read.fixture.js +20 -6
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.d.ts +58 -0
- package/dist/service/s3/bucket/tagging/sim-s3-taggable-object.js +73 -0
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.d.ts +19 -1
- package/dist/service/s3/bucket/versioning/sim-s3-object-version.js +20 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/encryption/sim-cfn-s3-bucket-encryption.js +44 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-configuration.js +6 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.d.ts +5 -4
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-fields.js +12 -5
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.d.ts +21 -0
- package/dist/service/s3/cfn/bucket/lifecycle/sim-cfn-s3-bucket-lifecycle-filter.js +30 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.d.ts +14 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-declared-configurations.js +41 -16
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.d.ts +3 -5
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-property-names.js +7 -10
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.d.ts +6 -1
- package/dist/service/s3/command/authorize/sim-s3-authorize-action.js +5 -0
- package/dist/service/s3/command/copy-object/copy-object-builder.d.ts +10 -1
- package/dist/service/s3/command/copy-object/copy-object-builder.js +17 -1
- package/dist/service/s3/command/copy-object/copy-object.command.d.ts +11 -1
- package/dist/service/s3/command/copy-object/copy-object.handler.js +2 -1
- package/dist/service/s3/command/create-bucket/create-bucket.handler.d.ts +2 -2
- package/dist/service/s3/command/create-bucket/create-bucket.handler.js +4 -12
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.command.d.ts +5 -1
- package/dist/service/s3/command/create-multipart-upload/create-multipart-upload.handler.js +7 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.d.ts +19 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.d.ts +30 -0
- package/dist/service/s3/command/delete-bucket-encryption/delete-bucket-encryption.handler.js +38 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.d.ts +23 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.command.js +1 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/delete-object-tagging/delete-object-tagging.handler.js +42 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.d.ts +29 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-authorizer.js +49 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.d.ts +22 -0
- package/dist/service/s3/command/encryption/sim-s3-encryption-commands.js +30 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.d.ts +24 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/get-bucket-encryption/get-bucket-encryption.handler.js +39 -0
- package/dist/service/s3/command/get-object/get-object-authorizer.d.ts +11 -8
- package/dist/service/s3/command/get-object/get-object-authorizer.js +26 -34
- package/dist/service/s3/command/get-object/get-object-loader.d.ts +7 -3
- package/dist/service/s3/command/get-object/get-object-loader.js +9 -4
- package/dist/service/s3/command/get-object/get-object.command.d.ts +2 -1
- package/dist/service/s3/command/get-object/get-object.handler.d.ts +4 -0
- package/dist/service/s3/command/get-object/get-object.handler.js +13 -7
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.d.ts +29 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.command.js +1 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.d.ts +21 -0
- package/dist/service/s3/command/get-object-tagging/get-object-tagging.handler.js +33 -0
- package/dist/service/s3/command/head-object/head-object-loader.js +2 -0
- package/dist/service/s3/command/head-object/head-object.command.d.ts +2 -1
- package/dist/service/s3/command/lifecycle/sim-s3-lifecycle-rules-validation.js +18 -0
- package/dist/service/s3/command/list-multipart-uploads/list-multipart-uploads.handler.js +1 -2
- package/dist/service/s3/command/list-object-versions/list-object-versions-summaries.js +1 -2
- package/dist/service/s3/command/list-objects/list-objects-page-builder.d.ts +5 -0
- package/dist/service/s3/command/list-objects/list-objects-page-builder.js +11 -6
- package/dist/service/s3/command/list-objects/list-objects.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects/list-objects.handler.js +5 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.d.ts +6 -0
- package/dist/service/s3/command/list-objects-v2/list-objects-v2-page-builder.js +11 -5
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.command.d.ts +5 -1
- package/dist/service/s3/command/list-objects-v2/list-objects-v2.handler.js +5 -0
- package/dist/service/s3/command/list-parts/list-parts.handler.js +3 -3
- package/dist/service/s3/command/multipart/sim-s3-multipart-access.js +1 -1
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.d.ts +21 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.command.js +1 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.d.ts +31 -0
- package/dist/service/s3/command/put-bucket-encryption/put-bucket-encryption.handler.js +41 -0
- package/dist/service/s3/command/put-object/put-object-builder.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object-builder.js +10 -1
- package/dist/service/s3/command/put-object/put-object.command.d.ts +5 -1
- package/dist/service/s3/command/put-object/put-object.handler.js +2 -1
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.d.ts +37 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.command.js +1 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.d.ts +22 -0
- package/dist/service/s3/command/put-object-tagging/put-object-tagging.handler.js +46 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +6 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.d.ts +61 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-access.js +49 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.d.ts +30 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-authorizer.js +27 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.d.ts +26 -0
- package/dist/service/s3/command/tagging/sim-s3-object-tagging-commands.js +34 -0
- package/dist/service/s3/error/sim-s3-upload.error.d.ts +41 -0
- package/dist/service/s3/error/sim-s3-upload.error.js +47 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +22 -34
- package/dist/service/s3/error/sim-s3.error.js +26 -40
- package/dist/service/s3/mount/sim-s3-mount.type.d.ts +10 -0
- package/dist/service/s3/notification/event/sim-s3-event-records.d.ts +3 -2
- package/dist/service/s3/notification/event/sim-s3-event-records.js +5 -3
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.d.ts +33 -8
- package/dist/service/s3/notification/event/sim-s3-object-event-builder.js +23 -9
- package/dist/service/s3/notification/sim-s3-object-notifier.d.ts +5 -1
- package/dist/service/s3/notification/sim-s3-object-notifier.js +6 -0
- package/dist/service/s3/object/s3-key-encoding.d.ts +12 -0
- package/dist/service/s3/object/s3-key-encoding.js +14 -0
- package/dist/service/s3/object/s3-listing-encoding.d.ts +42 -0
- package/dist/service/s3/object/s3-listing-encoding.js +75 -0
- package/dist/service/s3/object/s3-object-response-headers.d.ts +40 -0
- package/dist/service/s3/object/s3-object-response-headers.js +49 -2
- package/dist/service/s3/object/s3-object-storage-report.d.ts +19 -0
- package/dist/service/s3/object/s3-object-storage-report.js +18 -0
- package/dist/service/s3/object/s3-object-summary.d.ts +2 -10
- package/dist/service/s3/object/s3-object-summary.js +1 -10
- package/dist/service/s3/object/s3-object-tags.d.ts +61 -0
- package/dist/service/s3/object/s3-object-tags.js +77 -0
- package/dist/service/s3/object/s3-object.d.ts +49 -0
- package/dist/service/s3/object/s3-object.js +52 -1
- package/dist/service/s3/object/s3-server-side-encryption.d.ts +30 -0
- package/dist/service/s3/object/s3-server-side-encryption.js +42 -0
- package/dist/service/s3/object/s3-storage-class.d.ts +45 -0
- package/dist/service/s3/object/s3-storage-class.js +67 -0
- package/dist/service/s3/object/s3-write-metadata.d.ts +17 -3
- package/dist/service/s3/object/s3-write-metadata.js +43 -0
- package/dist/service/s3/object/s3-write-storage.d.ts +27 -0
- package/dist/service/s3/object/s3-write-storage.js +21 -0
- package/dist/service/s3/object/s3-write-tagging.d.ts +24 -0
- package/dist/service/s3/object/s3-write-tagging.js +19 -0
- package/dist/service/s3/sdk/sim-s3-sdk-bucket-routes.js +12 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +2 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.d.ts +9 -0
- package/dist/service/s3/sdk/sim-s3-sdk-object-tagging-routes.js +23 -0
- package/dist/service/s3/serve/api/sim-s3-api-bucket-routes.js +22 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.d.ts +4 -0
- package/dist/service/s3/serve/api/sim-s3-api-configuration-output.js +10 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.d.ts +7 -0
- package/dist/service/s3/serve/api/sim-s3-api-encryption-read.js +30 -0
- package/dist/service/s3/serve/api/sim-s3-api-head-output.d.ts +4 -2
- package/dist/service/s3/serve/api/sim-s3-api-head-output.js +8 -2
- package/dist/service/s3/serve/api/sim-s3-api-input.d.ts +0 -6
- package/dist/service/s3/serve/api/sim-s3-api-input.js +2 -13
- package/dist/service/s3/serve/api/sim-s3-api-listing.d.ts +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-listing.js +5 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.d.ts +16 -0
- package/dist/service/s3/serve/api/sim-s3-api-object-input.js +34 -7
- package/dist/service/s3/serve/api/sim-s3-api-object-output.d.ts +18 -1
- package/dist/service/s3/serve/api/sim-s3-api-object-output.js +21 -2
- package/dist/service/s3/serve/api/sim-s3-api-object-routes.js +22 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.d.ts +5 -1
- package/dist/service/s3/serve/api/sim-s3-api-output.js +16 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.d.ts +6 -5
- package/dist/service/s3/serve/api/sim-s3-api-request.js +55 -11
- package/dist/service/s3/serve/api/sim-s3-api-routes.js +2 -2
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.d.ts +9 -0
- package/dist/service/s3/serve/api/sim-s3-api-tagging-read.js +14 -0
- package/dist/service/s3/serve/api/sim-s3-api.d.ts +7 -1
- package/dist/service/s3/serve/api/sim-s3-api.js +7 -1
- package/dist/service/s3/serve/sim-s3-rest-controller.d.ts +1 -5
- package/dist/service/s3/serve/sim-s3-rest-controller.js +3 -17
- package/dist/service/s3/serve/sim-s3-rest-object-reader.d.ts +3 -0
- package/dist/service/s3/serve/sim-s3-rest-object-reader.js +8 -1
- package/dist/service/s3/serve/sim-s3-rest-upload.d.ts +20 -0
- package/dist/service/s3/serve/sim-s3-rest-upload.js +30 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +2 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.js +3 -0
- package/dist/service/s3/sim-s3-commands.d.ts +10 -0
- package/dist/service/s3/sim-s3-commands.js +13 -0
- package/dist/service/s3/sim-s3-operations.d.ts +11 -4
- package/dist/service/s3/sim-s3-operations.js +17 -4
- package/dist/service/s3/sim-s3-tagging-operations.d.ts +21 -0
- package/dist/service/s3/sim-s3-tagging-operations.js +25 -0
- package/dist/service/s3/sim-s3.d.ts +28 -0
- package/dist/service/s3/sim-s3.js +38 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.d.ts +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deleting-storage.js +34 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.d.ts +9 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-deletion.js +24 -0
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.d.ts +5 -4
- package/dist/service/s3/storage/filesystem/s3-filesystem-storage.js +5 -3
- package/dist/service/s3/upload/sim-s3-completed-upload.js +5 -1
- package/dist/service/s3/upload/sim-s3-multipart-upload.d.ts +18 -0
- package/dist/service/s3/upload/sim-s3-multipart-upload.js +8 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.d.ts +6 -0
- package/dist/service/s3/upload/sim-s3-multipart-uploads.js +5 -0
- package/dist/util/background/background-clock-waits.d.ts +52 -0
- package/dist/util/background/background-clock-waits.js +76 -0
- package/dist/util/background/background-jitter.js +1 -0
- package/dist/util/background/background-pending-tasks.d.ts +55 -0
- package/dist/util/background/background-pending-tasks.js +117 -0
- package/dist/util/background/background-settled-tasks.d.ts +4 -1
- package/dist/util/background/background-settled-tasks.js +4 -1
- package/dist/util/background/background.d.ts +43 -0
- package/dist/util/background/background.js +27 -19
- package/dist/util/background/non-deterministic-background.d.ts +12 -0
- package/dist/util/background/non-deterministic-background.js +24 -20
- package/dist/util/clock/sim-clock-control.js +23 -2
- package/docs/services/apigateway/README.md +3 -1
- package/docs/services/athena/README.md +126 -3
- package/docs/services/cloudformation/README.md +831 -67
- package/docs/services/cognito/README.md +5 -0
- package/docs/services/dynamodb/README.md +86 -11
- package/docs/services/lambda/README.md +603 -39
- package/docs/services/s3/README.md +688 -57
- package/package.json +8 -2
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../util/background/background.js";
|
|
2
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
3
|
+
import type { SimCfnResource } from "../resource/sim-cfn-resource.js";
|
|
4
|
+
import type { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
5
|
+
import type { SimCfnTemplate } from "../template/sim-cfn-template.js";
|
|
6
|
+
import type { SimCfnChangeSetType, SimCfnResourceChange } from "./sim-cfn-change-set.type.js";
|
|
7
|
+
interface SimCfnChangeSetPlanProperties {
|
|
8
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
9
|
+
readonly background: BackgroundScheduler;
|
|
10
|
+
readonly stack: SimCfnStack;
|
|
11
|
+
readonly type: SimCfnChangeSetType;
|
|
12
|
+
readonly template: SimCfnTemplate;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* What executing a change set would do to the Stack it is held against.
|
|
16
|
+
*
|
|
17
|
+
* A `CREATE` change set is compared against nothing, because the Stack it
|
|
18
|
+
* brought into being holds no created Resource yet.
|
|
19
|
+
*/
|
|
20
|
+
export declare function simCfnChangeSetPlan(properties: SimCfnChangeSetPlanProperties): readonly SimCfnResourceChange[];
|
|
21
|
+
interface SimCfnChangeSetChangesProperties {
|
|
22
|
+
/** The Resources the Stack holds now. Empty for a Stack in review. */
|
|
23
|
+
readonly current: ReadonlyMap<string, SimCfnResource>;
|
|
24
|
+
/** The Resources the change set's template describes. */
|
|
25
|
+
readonly updated: ReadonlyMap<string, SimCfnResource>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* What executing a change set would do to a Stack's Resources.
|
|
29
|
+
*
|
|
30
|
+
* The same comparison an update makes, reported rather than applied. A
|
|
31
|
+
* Resource only the new template has is an `Add`, one only the Stack has is a
|
|
32
|
+
* `Remove`, and one both have whose resolved template entry changed is a
|
|
33
|
+
* `Modify`. A Resource that would be replaced because it names a replaced one
|
|
34
|
+
* is a `Modify` too, which is how CloudFormation reports a dependent it has to
|
|
35
|
+
* hand a new physical name to.
|
|
36
|
+
*
|
|
37
|
+
* The order follows the templates. The new template's Resources come first, in
|
|
38
|
+
* the order it declares them, and the dropped ones after in the order the Stack
|
|
39
|
+
* holds them.
|
|
40
|
+
*/
|
|
41
|
+
export declare function simCfnChangeSetChanges(properties: SimCfnChangeSetChangesProperties): readonly SimCfnResourceChange[];
|
|
42
|
+
export {};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { makeSimCfnStackResourceMap } from "../stack/resource-map/sim-cfn-stack-resource-map.js";
|
|
2
|
+
import { simCfnStackReplacedLogicalIds } from "../stack/update/sim-cfn-stack-replaced-resources.js";
|
|
3
|
+
/**
|
|
4
|
+
* What executing a change set would do to the Stack it is held against.
|
|
5
|
+
*
|
|
6
|
+
* A `CREATE` change set is compared against nothing, because the Stack it
|
|
7
|
+
* brought into being holds no created Resource yet.
|
|
8
|
+
*/
|
|
9
|
+
export function simCfnChangeSetPlan(properties) {
|
|
10
|
+
const { accountRegionScope, background, stack, type, template } = properties;
|
|
11
|
+
return simCfnChangeSetChanges({
|
|
12
|
+
current: type === "CREATE" ? new Map() : stack.resourceMap,
|
|
13
|
+
updated: makeSimCfnStackResourceMap({
|
|
14
|
+
accountRegionScope,
|
|
15
|
+
background,
|
|
16
|
+
template,
|
|
17
|
+
}),
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* What executing a change set would do to a Stack's Resources.
|
|
22
|
+
*
|
|
23
|
+
* The same comparison an update makes, reported rather than applied. A
|
|
24
|
+
* Resource only the new template has is an `Add`, one only the Stack has is a
|
|
25
|
+
* `Remove`, and one both have whose resolved template entry changed is a
|
|
26
|
+
* `Modify`. A Resource that would be replaced because it names a replaced one
|
|
27
|
+
* is a `Modify` too, which is how CloudFormation reports a dependent it has to
|
|
28
|
+
* hand a new physical name to.
|
|
29
|
+
*
|
|
30
|
+
* The order follows the templates. The new template's Resources come first, in
|
|
31
|
+
* the order it declares them, and the dropped ones after in the order the Stack
|
|
32
|
+
* holds them.
|
|
33
|
+
*/
|
|
34
|
+
export function simCfnChangeSetChanges(properties) {
|
|
35
|
+
const { current, updated } = properties;
|
|
36
|
+
const replaced = simCfnStackReplacedLogicalIds({ current, updated });
|
|
37
|
+
const changed = updated
|
|
38
|
+
.values()
|
|
39
|
+
.filter((resource) => !unchanged(resource, current, replaced))
|
|
40
|
+
.map((resource) => ({
|
|
41
|
+
action: current.has(resource.logicalId)
|
|
42
|
+
? "Modify"
|
|
43
|
+
: "Add",
|
|
44
|
+
logicalResourceId: resource.logicalId,
|
|
45
|
+
resourceType: resource.type,
|
|
46
|
+
replacement: current.has(resource.logicalId)
|
|
47
|
+
? "True"
|
|
48
|
+
: undefined,
|
|
49
|
+
}))
|
|
50
|
+
.toArray();
|
|
51
|
+
const removed = current
|
|
52
|
+
.values()
|
|
53
|
+
.filter((resource) => !updated.has(resource.logicalId))
|
|
54
|
+
.map((resource) => ({
|
|
55
|
+
action: "Remove",
|
|
56
|
+
logicalResourceId: resource.logicalId,
|
|
57
|
+
resourceType: resource.type,
|
|
58
|
+
replacement: undefined,
|
|
59
|
+
}))
|
|
60
|
+
.toArray();
|
|
61
|
+
return [...changed, ...removed];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Whether the Stack already holds this Resource as the new template describes
|
|
65
|
+
* it, which is a Resource the change set leaves out.
|
|
66
|
+
*/
|
|
67
|
+
function unchanged(resource, current, replaced) {
|
|
68
|
+
return current.has(resource.logicalId) && !replaced.has(resource.logicalId);
|
|
69
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { BackgroundCompleter, BackgroundScheduler } from "../../../util/background/background.js";
|
|
2
|
+
import type { SimAws } from "../../aws/sim-aws.js";
|
|
3
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
4
|
+
import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
|
|
5
|
+
import type { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
6
|
+
import type { SimCloudFormationStackName } from "../stack/sim-cfn-stack.type.js";
|
|
7
|
+
import type { SimCfnExports } from "../export/sim-cfn-exports.js";
|
|
8
|
+
import type { SimCloudFormationAuthorization } from "../authorize/sim-cloudformation-authorization.js";
|
|
9
|
+
import type { SimCreateChangeSetCommand, SimCreateChangeSetCommandOutput } from "../command/create-change-set/create-change-set.command.js";
|
|
10
|
+
import type { SimDescribeChangeSetCommand, SimDescribeChangeSetCommandOutput } from "../command/describe-change-set/describe-change-set.command.js";
|
|
11
|
+
import type { SimExecuteChangeSetCommand, SimExecuteChangeSetCommandOutput } from "../command/execute-change-set/execute-change-set.command.js";
|
|
12
|
+
import type { SimDeleteChangeSetCommand, SimDeleteChangeSetCommandOutput } from "../command/delete-change-set/delete-change-set.command.js";
|
|
13
|
+
import type { SimListChangeSetsCommand, SimListChangeSetsCommandOutput } from "../command/list-change-sets/list-change-sets.command.js";
|
|
14
|
+
interface SimCfnChangeSetCommandsProperties {
|
|
15
|
+
readonly simAws: SimAws;
|
|
16
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
17
|
+
readonly stacks: Map<SimCloudFormationStackName, SimCfnStack>;
|
|
18
|
+
readonly background: BackgroundScheduler & BackgroundCompleter;
|
|
19
|
+
readonly authorization: SimCloudFormationAuthorization;
|
|
20
|
+
readonly exports?: SimCfnExports | undefined;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The change set half of simulated CloudFormation's SDK surface.
|
|
24
|
+
*
|
|
25
|
+
* The five change set commands share one registry of held change sets and the
|
|
26
|
+
* same Stack map every other command reads, so they are assembled once here
|
|
27
|
+
* rather than in SimCloudFormation alongside the Stack commands.
|
|
28
|
+
*
|
|
29
|
+
* Authorization happens here rather than in SimCloudFormation, because three of
|
|
30
|
+
* the five commands can name a change set by its ARN alone. The Stack such a
|
|
31
|
+
* request operates on is the one the change set belongs to, and only this
|
|
32
|
+
* registry knows which that is.
|
|
33
|
+
*/
|
|
34
|
+
export declare class SimCfnChangeSetCommands {
|
|
35
|
+
private readonly properties;
|
|
36
|
+
private readonly changeSets;
|
|
37
|
+
constructor(properties: SimCfnChangeSetCommandsProperties);
|
|
38
|
+
/** Work out what a template would change about a Stack, and hold it. */
|
|
39
|
+
create(command: SimCreateChangeSetCommand, caller?: SimAwsCaller): Promise<SimCreateChangeSetCommandOutput>;
|
|
40
|
+
/** Report what a held change set would do to its Stack. */
|
|
41
|
+
describe(command: SimDescribeChangeSetCommand, caller?: SimAwsCaller): Promise<SimDescribeChangeSetCommandOutput>;
|
|
42
|
+
/** Apply what a change set describes to its Stack. */
|
|
43
|
+
execute(command: SimExecuteChangeSetCommand, caller?: SimAwsCaller): Promise<SimExecuteChangeSetCommandOutput>;
|
|
44
|
+
/** Take a change set away without executing it. */
|
|
45
|
+
delete(command: SimDeleteChangeSetCommand, caller?: SimAwsCaller): Promise<SimDeleteChangeSetCommandOutput>;
|
|
46
|
+
/** List the change sets held against one Stack. */
|
|
47
|
+
list(command: SimListChangeSetsCommand, caller?: SimAwsCaller): Promise<SimListChangeSetsCommandOutput>;
|
|
48
|
+
/**
|
|
49
|
+
* The Stack a request naming one change set operates on.
|
|
50
|
+
*
|
|
51
|
+
* A request carrying the change set ARN alone leaves out the Stack name, and
|
|
52
|
+
* the change set it names knows which Stack it belongs to. Authorizing on
|
|
53
|
+
* what the request said would ask about every Stack in the scope, so a
|
|
54
|
+
* caller allowed one Stack would be refused a change set against it.
|
|
55
|
+
*
|
|
56
|
+
* A change set the registry does not hold falls back to what the request
|
|
57
|
+
* said. The handler refuses it, and refusing an unauthorized caller first is
|
|
58
|
+
* what keeps that refusal from saying which change sets exist.
|
|
59
|
+
*/
|
|
60
|
+
private stackNameFor;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { CreateChangeSetCommandHandler } from "../command/create-change-set/create-change-set.handler.js";
|
|
2
|
+
import { DescribeChangeSetCommandHandler } from "../command/describe-change-set/describe-change-set.handler.js";
|
|
3
|
+
import { ExecuteChangeSetCommandHandler } from "../command/execute-change-set/execute-change-set.handler.js";
|
|
4
|
+
import { DeleteChangeSetCommandHandler } from "../command/delete-change-set/delete-change-set.handler.js";
|
|
5
|
+
import { ListChangeSetsCommandHandler } from "../command/list-change-sets/list-change-sets.handler.js";
|
|
6
|
+
import { SimCfnChangeSets } from "./sim-cfn-change-sets.js";
|
|
7
|
+
/**
|
|
8
|
+
* The change set half of simulated CloudFormation's SDK surface.
|
|
9
|
+
*
|
|
10
|
+
* The five change set commands share one registry of held change sets and the
|
|
11
|
+
* same Stack map every other command reads, so they are assembled once here
|
|
12
|
+
* rather than in SimCloudFormation alongside the Stack commands.
|
|
13
|
+
*
|
|
14
|
+
* Authorization happens here rather than in SimCloudFormation, because three of
|
|
15
|
+
* the five commands can name a change set by its ARN alone. The Stack such a
|
|
16
|
+
* request operates on is the one the change set belongs to, and only this
|
|
17
|
+
* registry knows which that is.
|
|
18
|
+
*/
|
|
19
|
+
export class SimCfnChangeSetCommands {
|
|
20
|
+
properties;
|
|
21
|
+
changeSets = new SimCfnChangeSets();
|
|
22
|
+
constructor(properties) {
|
|
23
|
+
this.properties = properties;
|
|
24
|
+
}
|
|
25
|
+
/** Work out what a template would change about a Stack, and hold it. */
|
|
26
|
+
async create(command, caller) {
|
|
27
|
+
this.properties.authorization.createChangeSet(command.input.StackName, caller);
|
|
28
|
+
return await new CreateChangeSetCommandHandler({
|
|
29
|
+
...this.properties,
|
|
30
|
+
changeSets: this.changeSets,
|
|
31
|
+
caller,
|
|
32
|
+
}).handle(command);
|
|
33
|
+
}
|
|
34
|
+
/** Report what a held change set would do to its Stack. */
|
|
35
|
+
async describe(command, caller) {
|
|
36
|
+
this.properties.authorization.describeChangeSet(this.stackNameFor(command.input), caller);
|
|
37
|
+
return await new DescribeChangeSetCommandHandler({
|
|
38
|
+
changeSets: this.changeSets,
|
|
39
|
+
background: this.properties.background,
|
|
40
|
+
}).handle(command);
|
|
41
|
+
}
|
|
42
|
+
/** Apply what a change set describes to its Stack. */
|
|
43
|
+
async execute(command, caller) {
|
|
44
|
+
this.properties.authorization.executeChangeSet(this.stackNameFor(command.input), caller);
|
|
45
|
+
return await new ExecuteChangeSetCommandHandler({
|
|
46
|
+
stacks: this.properties.stacks,
|
|
47
|
+
changeSets: this.changeSets,
|
|
48
|
+
background: this.properties.background,
|
|
49
|
+
caller,
|
|
50
|
+
}).handle(command);
|
|
51
|
+
}
|
|
52
|
+
/** Take a change set away without executing it. */
|
|
53
|
+
async delete(command, caller) {
|
|
54
|
+
this.properties.authorization.deleteChangeSet(this.stackNameFor(command.input), caller);
|
|
55
|
+
return await new DeleteChangeSetCommandHandler({
|
|
56
|
+
changeSets: this.changeSets,
|
|
57
|
+
background: this.properties.background,
|
|
58
|
+
}).handle(command);
|
|
59
|
+
}
|
|
60
|
+
/** List the change sets held against one Stack. */
|
|
61
|
+
async list(command, caller) {
|
|
62
|
+
this.properties.authorization.listChangeSets(command.input.StackName, caller);
|
|
63
|
+
return await new ListChangeSetsCommandHandler({
|
|
64
|
+
changeSets: this.changeSets,
|
|
65
|
+
background: this.properties.background,
|
|
66
|
+
}).handle(command);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* The Stack a request naming one change set operates on.
|
|
70
|
+
*
|
|
71
|
+
* A request carrying the change set ARN alone leaves out the Stack name, and
|
|
72
|
+
* the change set it names knows which Stack it belongs to. Authorizing on
|
|
73
|
+
* what the request said would ask about every Stack in the scope, so a
|
|
74
|
+
* caller allowed one Stack would be refused a change set against it.
|
|
75
|
+
*
|
|
76
|
+
* A change set the registry does not hold falls back to what the request
|
|
77
|
+
* said. The handler refuses it, and refusing an unauthorized caller first is
|
|
78
|
+
* what keeps that refusal from saying which change sets exist.
|
|
79
|
+
*/
|
|
80
|
+
stackNameFor(input) {
|
|
81
|
+
if (input.ChangeSetName === undefined) {
|
|
82
|
+
return input.StackName;
|
|
83
|
+
}
|
|
84
|
+
return (this.changeSets.find({
|
|
85
|
+
changeSetName: input.ChangeSetName,
|
|
86
|
+
stackName: input.StackName,
|
|
87
|
+
})?.stackName ?? input.StackName);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { BackgroundScheduler } from "../../../util/background/background.js";
|
|
2
|
+
import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
|
|
3
|
+
import type { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
4
|
+
import type { SimCfnChangeSet } from "./sim-cfn-change-set.js";
|
|
5
|
+
import { type SimCfnChangeSets } from "./sim-cfn-change-sets.js";
|
|
6
|
+
interface SimCfnChangeSetExecutionProperties {
|
|
7
|
+
readonly changeSet: SimCfnChangeSet;
|
|
8
|
+
readonly stack: SimCfnStack;
|
|
9
|
+
readonly changeSets: SimCfnChangeSets;
|
|
10
|
+
readonly background: BackgroundScheduler;
|
|
11
|
+
readonly caller?: SimAwsCaller | undefined;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Start the Stack operation a change set describes.
|
|
15
|
+
*
|
|
16
|
+
* A `CREATE` change set deploys the Stack it brought into being, and an
|
|
17
|
+
* `UPDATE` change set applies its template to the Stack it was worked out
|
|
18
|
+
* against. Either way the work is scheduled in the background, so this returns
|
|
19
|
+
* once the operation has started.
|
|
20
|
+
*
|
|
21
|
+
* A Stack that has moved on since the change set was worked out leaves the
|
|
22
|
+
* change set obsolete, which is what CloudFormation calls a change set whose
|
|
23
|
+
* Stack was already updated. Executing it would apply a difference nobody has
|
|
24
|
+
* seen, because what it reports was worked out against the template the Stack
|
|
25
|
+
* held then.
|
|
26
|
+
*
|
|
27
|
+
* Every other executable change set against the Stack becomes obsolete for the
|
|
28
|
+
* same reason once this one has been applied.
|
|
29
|
+
*/
|
|
30
|
+
export declare function runSimCfnChangeSet(properties: SimCfnChangeSetExecutionProperties): Promise<void>;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { simCfnStackTemplateChanged } from "../stack/update/sim-cfn-stack-template-changes.js";
|
|
2
|
+
import { simCfnChangeSetNotExecutable, } from "./sim-cfn-change-sets.js";
|
|
3
|
+
/**
|
|
4
|
+
* Start the Stack operation a change set describes.
|
|
5
|
+
*
|
|
6
|
+
* A `CREATE` change set deploys the Stack it brought into being, and an
|
|
7
|
+
* `UPDATE` change set applies its template to the Stack it was worked out
|
|
8
|
+
* against. Either way the work is scheduled in the background, so this returns
|
|
9
|
+
* once the operation has started.
|
|
10
|
+
*
|
|
11
|
+
* A Stack that has moved on since the change set was worked out leaves the
|
|
12
|
+
* change set obsolete, which is what CloudFormation calls a change set whose
|
|
13
|
+
* Stack was already updated. Executing it would apply a difference nobody has
|
|
14
|
+
* seen, because what it reports was worked out against the template the Stack
|
|
15
|
+
* held then.
|
|
16
|
+
*
|
|
17
|
+
* Every other executable change set against the Stack becomes obsolete for the
|
|
18
|
+
* same reason once this one has been applied.
|
|
19
|
+
*/
|
|
20
|
+
export async function runSimCfnChangeSet(properties) {
|
|
21
|
+
const { changeSet, stack, changeSets, background, caller } = properties;
|
|
22
|
+
if (simCfnStackTemplateChanged(changeSet.plannedFrom, stack.currentTemplate)) {
|
|
23
|
+
changeSet.executionStatus = "OBSOLETE";
|
|
24
|
+
throw simCfnChangeSetNotExecutable(changeSet);
|
|
25
|
+
}
|
|
26
|
+
changeSet.executionStatus = "EXECUTE_IN_PROGRESS";
|
|
27
|
+
try {
|
|
28
|
+
await (changeSet.type === "CREATE"
|
|
29
|
+
? stack.deploy()
|
|
30
|
+
: stack.update(changeSet.template, { caller }));
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
changeSet.executionStatus = "EXECUTE_FAILED";
|
|
34
|
+
throw error;
|
|
35
|
+
}
|
|
36
|
+
changeSets.markOthersObsolete(changeSet);
|
|
37
|
+
settleExecution(changeSet, stack, background);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Record how the Stack operation went, once it has finished in the background.
|
|
41
|
+
*
|
|
42
|
+
* The failure itself belongs to the Stack, which holds it as a failed status
|
|
43
|
+
* and rethrows it to whoever waits for the operation. This only reads which way
|
|
44
|
+
* it went, so a change set describes its own execution as well as the Stack
|
|
45
|
+
* describes the deployment or update behind it.
|
|
46
|
+
*/
|
|
47
|
+
function settleExecution(changeSet, stack, background) {
|
|
48
|
+
background.schedule(async () => {
|
|
49
|
+
try {
|
|
50
|
+
await (changeSet.type === "CREATE"
|
|
51
|
+
? stack.waitForDeployComplete()
|
|
52
|
+
: stack.waitForUpdateComplete());
|
|
53
|
+
changeSet.executionStatus = "EXECUTE_COMPLETE";
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
changeSet.executionStatus = "EXECUTE_FAILED";
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
2
|
+
import type { SimCfnTemplate } from "../template/sim-cfn-template.js";
|
|
3
|
+
import type { SimCfnChangeSetType } from "./sim-cfn-change-set.type.js";
|
|
4
|
+
interface SimCfnChangeSetFailureProperties {
|
|
5
|
+
readonly stack: SimCfnStack;
|
|
6
|
+
readonly type: SimCfnChangeSetType;
|
|
7
|
+
readonly template: SimCfnTemplate;
|
|
8
|
+
readonly changeCount: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Why a change set failed, for one that would change nothing.
|
|
12
|
+
*
|
|
13
|
+
* Everything else in the template counts as well as the Resources, the same way
|
|
14
|
+
* it does for an update, because a change set that only moves an Output still
|
|
15
|
+
* has something to execute.
|
|
16
|
+
*
|
|
17
|
+
* A `CREATE` change set never fails this way. The Stack it was made for holds
|
|
18
|
+
* no Resource, so there is always something for it to do.
|
|
19
|
+
*/
|
|
20
|
+
export declare function simCfnChangeSetFailure(properties: SimCfnChangeSetFailureProperties): string | undefined;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { simCfnStackTemplateChanged } from "../stack/update/sim-cfn-stack-template-changes.js";
|
|
2
|
+
import { simCfnChangeSetNoChangesMessage } from "./sim-cfn-change-set-type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Why a change set failed, for one that would change nothing.
|
|
5
|
+
*
|
|
6
|
+
* Everything else in the template counts as well as the Resources, the same way
|
|
7
|
+
* it does for an update, because a change set that only moves an Output still
|
|
8
|
+
* has something to execute.
|
|
9
|
+
*
|
|
10
|
+
* A `CREATE` change set never fails this way. The Stack it was made for holds
|
|
11
|
+
* no Resource, so there is always something for it to do.
|
|
12
|
+
*/
|
|
13
|
+
export function simCfnChangeSetFailure(properties) {
|
|
14
|
+
const { stack, type, template, changeCount } = properties;
|
|
15
|
+
const noChanges = type === "UPDATE" &&
|
|
16
|
+
changeCount === 0 &&
|
|
17
|
+
!simCfnStackTemplateChanged(stack.currentTemplate, template);
|
|
18
|
+
return noChanges ? simCfnChangeSetNoChangesMessage : undefined;
|
|
19
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SimCloudFormationStackName } from "../stack/sim-cfn-stack.type.js";
|
|
2
|
+
import type { SimCreateChangeSetCommandInput } from "../command/create-change-set/create-change-set.command.js";
|
|
3
|
+
import type { SimCfnChangeSetName, SimCfnChangeSetType } from "./sim-cfn-change-set.type.js";
|
|
4
|
+
/**
|
|
5
|
+
* What a CreateChangeSet input says, once it has been read.
|
|
6
|
+
*/
|
|
7
|
+
export interface SimCfnChangeSetRequest {
|
|
8
|
+
readonly stackName: SimCloudFormationStackName;
|
|
9
|
+
readonly changeSetName: SimCfnChangeSetName;
|
|
10
|
+
readonly type: SimCfnChangeSetType;
|
|
11
|
+
readonly templateBody: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Read a CreateChangeSet input, refusing one that leaves out what a change set
|
|
15
|
+
* cannot be built without.
|
|
16
|
+
*/
|
|
17
|
+
export declare function simCfnChangeSetRequest(input: SimCreateChangeSetCommandInput): SimCfnChangeSetRequest;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { assertDefined } from "../../../util/type-guard/defined.js";
|
|
2
|
+
import { simCfnChangeSetType } from "./sim-cfn-change-set-type.js";
|
|
3
|
+
/**
|
|
4
|
+
* Read a CreateChangeSet input, refusing one that leaves out what a change set
|
|
5
|
+
* cannot be built without.
|
|
6
|
+
*/
|
|
7
|
+
export function simCfnChangeSetRequest(input) {
|
|
8
|
+
const { StackName, ChangeSetName, TemplateBody } = input;
|
|
9
|
+
assertDefined(StackName, "CreateChangeSetCommand.input.StackName");
|
|
10
|
+
assertDefined(ChangeSetName, "CreateChangeSetCommand.input.ChangeSetName");
|
|
11
|
+
assertDefined(TemplateBody, "CreateChangeSetCommand.input.TemplateBody");
|
|
12
|
+
return {
|
|
13
|
+
stackName: StackName,
|
|
14
|
+
changeSetName: ChangeSetName,
|
|
15
|
+
type: simCfnChangeSetType(input.ChangeSetType),
|
|
16
|
+
templateBody: TemplateBody,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
2
|
+
import type { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
3
|
+
import type { SimCloudFormationStackName } from "../stack/sim-cfn-stack.type.js";
|
|
4
|
+
import { type SimCfnStackId } from "../stack/sim-cfn-stack-id.js";
|
|
5
|
+
interface SimCfnChangeSetStackIdProperties {
|
|
6
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
7
|
+
readonly stacks: ReadonlyMap<SimCloudFormationStackName, SimCfnStack>;
|
|
8
|
+
readonly stackName: SimCloudFormationStackName;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The Stack ID a change set's template resolves `AWS::StackId` to.
|
|
12
|
+
*
|
|
13
|
+
* An `UPDATE` change set is held against a Stack that already has one. A
|
|
14
|
+
* `CREATE` change set brings the Stack into being, and this is the ID that
|
|
15
|
+
* Stack keeps for the rest of its life.
|
|
16
|
+
*/
|
|
17
|
+
export declare function simCfnChangeSetStackId(properties: SimCfnChangeSetStackIdProperties): SimCfnStackId;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { makeSimCfnStackId, } from "../stack/sim-cfn-stack-id.js";
|
|
2
|
+
/**
|
|
3
|
+
* The Stack ID a change set's template resolves `AWS::StackId` to.
|
|
4
|
+
*
|
|
5
|
+
* An `UPDATE` change set is held against a Stack that already has one. A
|
|
6
|
+
* `CREATE` change set brings the Stack into being, and this is the ID that
|
|
7
|
+
* Stack keeps for the rest of its life.
|
|
8
|
+
*/
|
|
9
|
+
export function simCfnChangeSetStackId(properties) {
|
|
10
|
+
const { accountRegionScope, stacks, stackName } = properties;
|
|
11
|
+
return (stacks.get(stackName)?.stackId ??
|
|
12
|
+
makeSimCfnStackId({ accountRegionScope, stackName }));
|
|
13
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { BackgroundCompleter, BackgroundScheduler } from "../../../util/background/background.js";
|
|
2
|
+
import type { SimAws } from "../../aws/sim-aws.js";
|
|
3
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
4
|
+
import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
|
|
5
|
+
import { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
6
|
+
import type { SimCfnStackId } from "../stack/sim-cfn-stack-id.js";
|
|
7
|
+
import type { SimCloudFormationStackName } from "../stack/sim-cfn-stack.type.js";
|
|
8
|
+
import type { SimCfnExports } from "../export/sim-cfn-exports.js";
|
|
9
|
+
import type { SimCfnTemplate } from "../template/sim-cfn-template.js";
|
|
10
|
+
import type { SimCfnChangeSetType } from "./sim-cfn-change-set.type.js";
|
|
11
|
+
interface SimCfnChangeSetStackProperties {
|
|
12
|
+
readonly simAws: SimAws;
|
|
13
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
14
|
+
readonly stacks: Map<SimCloudFormationStackName, SimCfnStack>;
|
|
15
|
+
readonly background: BackgroundScheduler & BackgroundCompleter;
|
|
16
|
+
readonly stackName: SimCloudFormationStackName;
|
|
17
|
+
readonly stackId: SimCfnStackId;
|
|
18
|
+
readonly type: SimCfnChangeSetType;
|
|
19
|
+
readonly template: SimCfnTemplate;
|
|
20
|
+
readonly caller?: SimAwsCaller | undefined;
|
|
21
|
+
readonly exports?: SimCfnExports | undefined;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The Stack a change set is held against.
|
|
25
|
+
*
|
|
26
|
+
* A `CREATE` change set brings the Stack into being in review, which is the
|
|
27
|
+
* status a Stack holds before anything has deployed it. Its Resources are
|
|
28
|
+
* worked out from the template and none of them is created, so executing the
|
|
29
|
+
* change set is what deploys them.
|
|
30
|
+
*
|
|
31
|
+
* An `UPDATE` change set needs a Stack that is already there, and leaves it
|
|
32
|
+
* exactly as it is.
|
|
33
|
+
*/
|
|
34
|
+
export declare function simCfnChangeSetStack(properties: SimCfnChangeSetStackProperties): SimCfnStack;
|
|
35
|
+
/**
|
|
36
|
+
* The Stack a change set was created against, for executing it.
|
|
37
|
+
*
|
|
38
|
+
* A Stack that has gone since the change set was created leaves the change set
|
|
39
|
+
* naming nothing, which CloudFormation refuses the way it refuses any command
|
|
40
|
+
* naming a Stack it cannot find.
|
|
41
|
+
*/
|
|
42
|
+
export declare function simCfnChangeSetDeployedStack(stacks: ReadonlyMap<SimCloudFormationStackName, SimCfnStack>, changeSet: {
|
|
43
|
+
readonly stackName: SimCloudFormationStackName;
|
|
44
|
+
}): SimCfnStack;
|
|
45
|
+
export {};
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { SimCfnStack } from "../stack/sim-cfn-stack.js";
|
|
2
|
+
import { SimCloudFormationAlreadyExistsException, SimCloudFormationValidationError, } from "../error/sim-cloudformation.error.js";
|
|
3
|
+
/**
|
|
4
|
+
* The Stack a change set is held against.
|
|
5
|
+
*
|
|
6
|
+
* A `CREATE` change set brings the Stack into being in review, which is the
|
|
7
|
+
* status a Stack holds before anything has deployed it. Its Resources are
|
|
8
|
+
* worked out from the template and none of them is created, so executing the
|
|
9
|
+
* change set is what deploys them.
|
|
10
|
+
*
|
|
11
|
+
* An `UPDATE` change set needs a Stack that is already there, and leaves it
|
|
12
|
+
* exactly as it is.
|
|
13
|
+
*/
|
|
14
|
+
export function simCfnChangeSetStack(properties) {
|
|
15
|
+
const { stacks, stackName, type } = properties;
|
|
16
|
+
const deployed = stacks.get(stackName);
|
|
17
|
+
if (type === "UPDATE") {
|
|
18
|
+
if (deployed === undefined) {
|
|
19
|
+
throw new SimCloudFormationValidationError(`Stack [${stackName}] does not exist`);
|
|
20
|
+
}
|
|
21
|
+
return deployed;
|
|
22
|
+
}
|
|
23
|
+
if (deployed !== undefined) {
|
|
24
|
+
throw new SimCloudFormationAlreadyExistsException(`Stack [${stackName}] already exists`);
|
|
25
|
+
}
|
|
26
|
+
const stack = new SimCfnStack({
|
|
27
|
+
simAws: properties.simAws,
|
|
28
|
+
accountRegionScope: properties.accountRegionScope,
|
|
29
|
+
background: properties.background,
|
|
30
|
+
stackName,
|
|
31
|
+
stackId: properties.stackId,
|
|
32
|
+
template: properties.template,
|
|
33
|
+
caller: properties.caller,
|
|
34
|
+
exports: properties.exports,
|
|
35
|
+
});
|
|
36
|
+
stacks.set(stack.stackName, stack);
|
|
37
|
+
return stack;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* The Stack a change set was created against, for executing it.
|
|
41
|
+
*
|
|
42
|
+
* A Stack that has gone since the change set was created leaves the change set
|
|
43
|
+
* naming nothing, which CloudFormation refuses the way it refuses any command
|
|
44
|
+
* naming a Stack it cannot find.
|
|
45
|
+
*/
|
|
46
|
+
export function simCfnChangeSetDeployedStack(stacks, changeSet) {
|
|
47
|
+
const stack = stacks.get(changeSet.stackName);
|
|
48
|
+
if (stack === undefined) {
|
|
49
|
+
throw new SimCloudFormationValidationError(`Stack [${changeSet.stackName}] does not exist`);
|
|
50
|
+
}
|
|
51
|
+
return stack;
|
|
52
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { SimCfnChangeSetType } from "./sim-cfn-change-set.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* What CloudFormation answers a change set that would change nothing.
|
|
4
|
+
*/
|
|
5
|
+
export declare const simCfnChangeSetNoChangesMessage: string;
|
|
6
|
+
/**
|
|
7
|
+
* Read the ChangeSetType a CreateChangeSet input asks for.
|
|
8
|
+
*
|
|
9
|
+
* CloudFormation defaults to `UPDATE`. `IMPORT` is outside the simulation,
|
|
10
|
+
* because nothing here can adopt a Resource it did not create.
|
|
11
|
+
*/
|
|
12
|
+
export declare function simCfnChangeSetType(changeSetType: string | undefined): SimCfnChangeSetType;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SimCloudFormationValidationError } from "../error/sim-cloudformation.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* What CloudFormation answers a change set that would change nothing.
|
|
4
|
+
*/
|
|
5
|
+
export const simCfnChangeSetNoChangesMessage = "The submitted information didn't contain changes. " +
|
|
6
|
+
"Submit different information to create a change set.";
|
|
7
|
+
/**
|
|
8
|
+
* Read the ChangeSetType a CreateChangeSet input asks for.
|
|
9
|
+
*
|
|
10
|
+
* CloudFormation defaults to `UPDATE`. `IMPORT` is outside the simulation,
|
|
11
|
+
* because nothing here can adopt a Resource it did not create.
|
|
12
|
+
*/
|
|
13
|
+
export function simCfnChangeSetType(changeSetType) {
|
|
14
|
+
if (changeSetType === undefined || changeSetType === "UPDATE") {
|
|
15
|
+
return "UPDATE";
|
|
16
|
+
}
|
|
17
|
+
if (changeSetType === "CREATE") {
|
|
18
|
+
return "CREATE";
|
|
19
|
+
}
|
|
20
|
+
throw new SimCloudFormationValidationError(`Sim CloudFormation ChangeSetType ${changeSetType} is not supported`);
|
|
21
|
+
}
|