@aws-cdk/toolkit-lib 0.3.2 → 0.3.4
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/api-extractor.json +3 -0
- package/build-info.json +2 -2
- package/db.json.gz +0 -0
- package/lib/actions/bootstrap/index.d.ts +1 -1
- package/lib/actions/bootstrap/index.js +5 -5
- package/lib/actions/bootstrap/private/helpers.js +3 -3
- package/lib/actions/deploy/index.d.ts +1 -1
- package/lib/actions/deploy/index.js +1 -1
- package/lib/actions/deploy/private/deploy-options.d.ts +1 -1
- package/lib/actions/deploy/private/deploy-options.js +1 -1
- package/lib/actions/deploy/private/helpers.d.ts +3 -2
- package/lib/actions/deploy/private/helpers.js +3 -3
- package/lib/actions/diff/index.d.ts +1 -1
- package/lib/actions/diff/index.js +1 -1
- package/lib/actions/diff/private/helpers.d.ts +5 -9
- package/lib/actions/diff/private/helpers.js +13 -30
- package/lib/actions/refactor/index.d.ts +12 -0
- package/lib/actions/refactor/index.js +1 -1
- package/lib/api/aws-auth/account-cache.d.ts +41 -0
- package/lib/api/aws-auth/account-cache.js +108 -0
- package/lib/api/aws-auth/awscli-compatible.d.ts +70 -0
- package/lib/api/aws-auth/awscli-compatible.js +250 -0
- package/lib/api/aws-auth/cached.d.ts +11 -0
- package/lib/api/aws-auth/cached.js +26 -0
- package/lib/api/aws-auth/credential-plugins.d.ts +38 -0
- package/lib/api/aws-auth/credential-plugins.js +154 -0
- package/lib/api/aws-auth/private/index.d.ts +11 -0
- package/lib/api/aws-auth/private/index.js +37 -0
- package/lib/api/aws-auth/provider-caching.d.ts +13 -0
- package/lib/api/aws-auth/provider-caching.js +24 -0
- package/lib/api/aws-auth/proxy-agent.d.ts +13 -0
- package/lib/api/aws-auth/proxy-agent.js +54 -0
- package/lib/api/aws-auth/sdk-logger.d.ts +69 -0
- package/lib/api/aws-auth/sdk-logger.js +128 -0
- package/lib/api/aws-auth/sdk-provider.d.ts +195 -0
- package/lib/api/aws-auth/sdk-provider.js +373 -0
- package/lib/api/aws-auth/sdk.d.ts +235 -0
- package/lib/api/aws-auth/sdk.js +391 -0
- package/lib/api/aws-auth/tracing.d.ts +11 -0
- package/lib/api/aws-auth/tracing.js +60 -0
- package/lib/api/aws-auth/user-agent.d.ts +7 -0
- package/lib/api/aws-auth/user-agent.js +20 -0
- package/lib/api/aws-auth/util.d.ts +6 -0
- package/lib/api/aws-auth/util.js +21 -0
- package/lib/api/bootstrap/bootstrap-environment.d.ts +35 -0
- package/lib/api/bootstrap/bootstrap-environment.js +323 -0
- package/lib/api/bootstrap/bootstrap-props.d.ts +130 -0
- package/lib/api/bootstrap/bootstrap-props.js +14 -0
- package/lib/api/bootstrap/deploy-bootstrap.d.ts +39 -0
- package/lib/api/bootstrap/deploy-bootstrap.js +147 -0
- package/lib/api/bootstrap/index.d.ts +3 -0
- package/lib/api/bootstrap/index.js +23 -0
- package/lib/api/bootstrap/legacy-template.d.ts +2 -0
- package/lib/api/bootstrap/legacy-template.js +82 -0
- package/lib/api/cloud-assembly/environment.d.ts +43 -0
- package/lib/api/cloud-assembly/environment.js +127 -0
- package/lib/api/cloud-assembly/index.d.ts +1 -1
- package/lib/api/cloud-assembly/index.js +5 -4
- package/lib/api/cloud-assembly/private/context-aware-source.d.ts +1 -1
- package/lib/api/cloud-assembly/private/context-aware-source.js +7 -7
- package/lib/api/cloud-assembly/private/exec.js +3 -3
- package/lib/api/cloud-assembly/private/prepare-source.d.ts +2 -1
- package/lib/api/cloud-assembly/private/prepare-source.js +17 -15
- package/lib/api/cloud-assembly/private/readable-assembly.d.ts +1 -1
- package/lib/api/cloud-assembly/private/readable-assembly.js +1 -1
- package/lib/api/cloud-assembly/private/source-builder.d.ts +10 -8
- package/lib/api/cloud-assembly/private/source-builder.js +43 -24
- package/lib/api/cloud-assembly/private/stack-assembly.d.ts +2 -1
- package/lib/api/cloud-assembly/private/stack-assembly.js +16 -15
- package/lib/api/cloud-assembly/source-builder.d.ts +19 -0
- package/lib/api/cloud-assembly/source-builder.js +1 -1
- package/lib/api/cloud-assembly/stack-assembly.d.ts +55 -0
- package/lib/api/cloud-assembly/stack-assembly.js +139 -0
- package/lib/api/cloud-assembly/stack-collection.d.ts +27 -0
- package/lib/api/cloud-assembly/stack-collection.js +112 -0
- package/lib/api/cloud-assembly/stack-selector.d.ts +81 -2
- package/lib/api/cloud-assembly/stack-selector.js +62 -5
- package/lib/api/cloudformation/evaluate-cloudformation-template.d.ts +85 -0
- package/lib/api/cloudformation/evaluate-cloudformation-template.js +456 -0
- package/lib/api/cloudformation/index.d.ts +4 -0
- package/lib/api/cloudformation/index.js +21 -0
- package/lib/api/cloudformation/nested-stack-helpers.d.ts +25 -0
- package/lib/api/cloudformation/nested-stack-helpers.js +86 -0
- package/lib/api/cloudformation/stack-helpers.d.ts +96 -0
- package/lib/api/cloudformation/stack-helpers.js +163 -0
- package/lib/api/cloudformation/template-body-parameter.d.ts +22 -0
- package/lib/api/cloudformation/template-body-parameter.js +104 -0
- package/lib/api/context.d.ts +40 -0
- package/lib/api/context.js +84 -0
- package/lib/api/deployments/asset-manifest-builder.d.ts +8 -0
- package/lib/api/deployments/asset-manifest-builder.js +33 -0
- package/lib/api/deployments/asset-publishing.d.ts +60 -0
- package/lib/api/deployments/asset-publishing.js +144 -0
- package/lib/api/deployments/assets.d.ts +11 -0
- package/lib/api/deployments/assets.js +108 -0
- package/lib/api/deployments/cfn-api.d.ts +145 -0
- package/lib/api/deployments/cfn-api.js +444 -0
- package/lib/api/deployments/checks.d.ts +9 -0
- package/lib/api/deployments/checks.js +72 -0
- package/lib/api/deployments/deploy-stack.d.ts +164 -0
- package/lib/api/deployments/deploy-stack.js +490 -0
- package/lib/api/deployments/deployment-method.d.ts +24 -0
- package/lib/api/deployments/deployment-method.js +3 -0
- package/lib/api/deployments/deployment-result.d.ts +21 -0
- package/lib/api/deployments/deployment-result.js +10 -0
- package/lib/api/deployments/deployments.d.ts +289 -0
- package/lib/api/deployments/deployments.js +355 -0
- package/lib/api/deployments/index.d.ts +6 -0
- package/lib/api/deployments/index.js +27 -0
- package/lib/api/diff/diff-formatter.d.ts +147 -0
- package/lib/api/diff/diff-formatter.js +225 -0
- package/lib/api/diff/index.d.ts +1 -0
- package/lib/api/diff/index.js +18 -0
- package/lib/api/environment/environment-access.d.ts +139 -0
- package/lib/api/environment/environment-access.js +205 -0
- package/lib/api/environment/environment-resources.d.ts +75 -0
- package/lib/api/environment/environment-resources.js +213 -0
- package/lib/api/environment/index.d.ts +3 -0
- package/lib/api/environment/index.js +20 -0
- package/lib/api/environment/placeholders.d.ts +10 -0
- package/lib/api/environment/placeholders.js +23 -0
- package/lib/api/garbage-collection/garbage-collector.d.ts +158 -0
- package/lib/api/garbage-collection/garbage-collector.js +614 -0
- package/lib/api/garbage-collection/index.d.ts +3 -0
- package/lib/api/garbage-collection/index.js +21 -0
- package/lib/api/garbage-collection/progress-printer.d.ts +23 -0
- package/lib/api/garbage-collection/progress-printer.js +80 -0
- package/lib/api/garbage-collection/stack-refresh.d.ts +49 -0
- package/lib/api/garbage-collection/stack-refresh.js +152 -0
- package/lib/api/hotswap/appsync-mapping-templates.d.ts +4 -0
- package/lib/api/hotswap/appsync-mapping-templates.js +162 -0
- package/lib/api/hotswap/code-build-projects.d.ts +4 -0
- package/lib/api/hotswap/code-build-projects.js +62 -0
- package/lib/api/hotswap/common.d.ts +89 -0
- package/lib/api/hotswap/common.js +137 -0
- package/lib/api/hotswap/ecs-services.d.ts +4 -0
- package/lib/api/hotswap/ecs-services.js +159 -0
- package/lib/api/hotswap/hotswap-deployments.d.ts +17 -0
- package/lib/api/hotswap/hotswap-deployments.js +441 -0
- package/lib/api/hotswap/index.d.ts +2 -0
- package/lib/api/hotswap/index.js +19 -0
- package/lib/api/hotswap/lambda-functions.d.ts +4 -0
- package/lib/api/hotswap/lambda-functions.js +297 -0
- package/lib/api/hotswap/s3-bucket-deployments.d.ts +5 -0
- package/lib/api/hotswap/s3-bucket-deployments.js +117 -0
- package/lib/api/hotswap/stepfunctions-state-machines.d.ts +4 -0
- package/lib/api/hotswap/stepfunctions-state-machines.js +48 -0
- package/lib/api/index.d.ts +24 -0
- package/lib/api/index.js +41 -0
- package/lib/api/io/index.d.ts +3 -1
- package/lib/api/io/index.js +18 -1
- package/lib/api/io/io-host.d.ts +15 -0
- package/lib/api/io/io-host.js +3 -0
- package/lib/api/io/io-message.d.ts +76 -0
- package/lib/api/io/io-message.js +3 -0
- package/lib/api/io/private/index.d.ts +7 -1
- package/lib/api/io/private/index.js +8 -5
- package/lib/api/io/private/io-default-messages.d.ts +21 -0
- package/lib/api/io/private/io-default-messages.js +59 -0
- package/lib/api/io/private/io-helper.d.ts +32 -0
- package/lib/api/io/private/io-helper.js +51 -0
- package/lib/api/io/private/level-priority.d.ts +11 -0
- package/lib/api/io/private/level-priority.js +33 -0
- package/lib/api/io/private/message-maker.d.ts +89 -0
- package/lib/api/io/private/message-maker.js +60 -0
- package/lib/api/io/private/messages.d.ts +178 -0
- package/lib/api/io/private/messages.js +534 -0
- package/lib/api/io/private/sdk-logger.d.ts +1 -1
- package/lib/api/io/private/sdk-logger.js +6 -6
- package/lib/api/io/private/span.d.ts +93 -0
- package/lib/api/io/private/span.js +87 -0
- package/lib/api/io/private/testing/fake-io-host.d.ts +28 -0
- package/lib/api/io/private/testing/fake-io-host.js +41 -0
- package/lib/api/io/private/testing/index.d.ts +2 -0
- package/lib/api/io/private/testing/index.js +19 -0
- package/lib/api/io/private/testing/test-io-host.d.ts +27 -0
- package/lib/api/io/private/testing/test-io-host.js +61 -0
- package/lib/api/io/private/types.d.ts +4 -0
- package/lib/api/io/private/types.js +3 -0
- package/lib/api/io/toolkit-action.d.ts +4 -0
- package/lib/api/io/toolkit-action.js +3 -0
- package/lib/api/logs-monitor/find-cloudwatch-logs.d.ts +25 -0
- package/lib/api/logs-monitor/find-cloudwatch-logs.js +95 -0
- package/lib/api/logs-monitor/index.d.ts +2 -0
- package/lib/api/logs-monitor/index.js +19 -0
- package/lib/api/logs-monitor/logs-monitor.d.ts +76 -0
- package/lib/api/logs-monitor/logs-monitor.js +194 -0
- package/lib/api/notices/cached-data-source.d.ts +13 -0
- package/lib/api/notices/cached-data-source.js +77 -0
- package/lib/api/notices/filter.d.ts +59 -0
- package/lib/api/notices/filter.js +189 -0
- package/lib/api/notices/index.d.ts +1 -0
- package/lib/api/notices/index.js +18 -0
- package/lib/api/notices/notices.d.ts +111 -0
- package/lib/api/notices/notices.js +131 -0
- package/lib/api/notices/types.d.ts +37 -0
- package/lib/api/notices/types.js +3 -0
- package/lib/api/notices/web-data-source.d.ts +9 -0
- package/lib/api/notices/web-data-source.js +70 -0
- package/lib/api/plugin/context-provider-plugin.d.ts +6 -0
- package/lib/api/plugin/context-provider-plugin.js +7 -0
- package/lib/api/plugin/index.d.ts +3 -0
- package/lib/api/plugin/index.js +20 -0
- package/lib/api/plugin/mode.d.ts +4 -0
- package/lib/api/plugin/mode.js +9 -0
- package/lib/api/plugin/plugin.d.ts +70 -0
- package/lib/api/plugin/plugin.js +127 -0
- package/lib/api/private.d.ts +1 -0
- package/lib/api/private.js +18 -0
- package/lib/api/refactoring/cloudformation.d.ts +38 -0
- package/lib/api/refactoring/cloudformation.js +56 -0
- package/lib/api/refactoring/digest.d.ts +26 -0
- package/lib/api/refactoring/digest.js +175 -0
- package/lib/api/refactoring/exclude.d.ts +29 -0
- package/lib/api/refactoring/exclude.js +94 -0
- package/lib/api/refactoring/index.d.ts +32 -0
- package/lib/api/refactoring/index.js +191 -0
- package/lib/api/require-approval.d.ts +17 -0
- package/lib/api/require-approval.js +22 -0
- package/lib/api/resource-import/importer.d.ts +216 -0
- package/lib/api/resource-import/importer.js +331 -0
- package/lib/api/resource-import/index.d.ts +2 -0
- package/lib/api/resource-import/index.js +19 -0
- package/lib/api/resource-import/migrator.d.ts +26 -0
- package/lib/api/resource-import/migrator.js +73 -0
- package/lib/api/resource-metadata/index.d.ts +1 -0
- package/lib/api/resource-metadata/index.js +18 -0
- package/lib/api/resource-metadata/resource-metadata.d.ts +24 -0
- package/lib/api/resource-metadata/resource-metadata.js +42 -0
- package/lib/api/rwlock.d.ts +60 -0
- package/lib/api/rwlock.js +204 -0
- package/lib/api/settings.d.ts +26 -0
- package/lib/api/settings.js +107 -0
- package/lib/api/shared-private.d.ts +8 -6
- package/lib/api/shared-private.js +31 -12561
- package/lib/api/stack-events/index.d.ts +4 -0
- package/lib/api/stack-events/index.js +23 -0
- package/lib/api/stack-events/stack-activity-monitor.d.ts +100 -0
- package/lib/api/stack-events/stack-activity-monitor.js +164 -0
- package/lib/api/stack-events/stack-event-poller.d.ts +69 -0
- package/lib/api/stack-events/stack-event-poller.js +130 -0
- package/lib/api/stack-events/stack-progress-monitor.d.ts +48 -0
- package/lib/api/stack-events/stack-progress-monitor.js +98 -0
- package/lib/api/stack-events/stack-status.d.ts +42 -0
- package/lib/api/stack-events/stack-status.js +90 -0
- package/lib/api/streams.d.ts +7 -0
- package/lib/api/streams.js +24 -0
- package/lib/api/tags.d.ts +9 -0
- package/lib/api/tags.js +10 -0
- package/lib/api/toolkit-info.d.ts +52 -0
- package/lib/api/toolkit-info.js +157 -0
- package/lib/api/tree.d.ts +31 -0
- package/lib/api/tree.js +37 -0
- package/lib/api/work-graph/index.d.ts +3 -0
- package/lib/api/work-graph/index.js +20 -0
- package/lib/api/work-graph/work-graph-builder.d.ts +34 -0
- package/lib/api/work-graph/work-graph-builder.js +172 -0
- package/lib/api/work-graph/work-graph-types.d.ts +50 -0
- package/lib/api/work-graph/work-graph-types.js +13 -0
- package/lib/api/work-graph/work-graph.d.ts +72 -0
- package/lib/api/work-graph/work-graph.js +349 -0
- package/lib/context-providers/ami.d.ts +13 -0
- package/lib/context-providers/ami.js +52 -0
- package/lib/context-providers/availability-zones.d.ts +13 -0
- package/lib/context-providers/availability-zones.js +29 -0
- package/lib/context-providers/cc-api-provider.d.ts +30 -0
- package/lib/context-providers/cc-api-provider.js +145 -0
- package/lib/context-providers/endpoint-service-availability-zones.d.ts +13 -0
- package/lib/context-providers/endpoint-service-availability-zones.js +35 -0
- package/lib/context-providers/hosted-zones.d.ts +12 -0
- package/lib/context-providers/hosted-zones.js +69 -0
- package/lib/context-providers/index.d.ts +44 -0
- package/lib/context-providers/index.js +128 -0
- package/lib/context-providers/keys.d.ts +13 -0
- package/lib/context-providers/keys.js +54 -0
- package/lib/context-providers/load-balancers.d.ts +20 -0
- package/lib/context-providers/load-balancers.js +161 -0
- package/lib/context-providers/security-groups.d.ts +9 -0
- package/lib/context-providers/security-groups.js +69 -0
- package/lib/context-providers/ssm-parameters.d.ts +25 -0
- package/lib/context-providers/ssm-parameters.js +61 -0
- package/lib/context-providers/vpcs.d.ts +13 -0
- package/lib/context-providers/vpcs.js +291 -0
- package/lib/index.d.ts +4 -1
- package/lib/index.js +5 -2
- package/lib/index_bg.wasm +0 -0
- package/lib/payloads/bootstrap-environment-progress.d.ts +17 -0
- package/lib/payloads/bootstrap-environment-progress.js +3 -0
- package/lib/payloads/context.d.ts +9 -0
- package/lib/payloads/context.js +3 -0
- package/lib/payloads/deploy.d.ts +50 -0
- package/lib/payloads/deploy.js +3 -0
- package/lib/payloads/destroy.d.ts +23 -0
- package/lib/payloads/destroy.js +3 -0
- package/lib/payloads/diff.d.ts +31 -0
- package/lib/payloads/diff.js +22 -0
- package/lib/payloads/hotswap.d.ts +212 -0
- package/lib/payloads/hotswap.js +43 -0
- package/lib/payloads/index.d.ts +17 -0
- package/lib/payloads/index.js +34 -0
- package/lib/payloads/list.d.ts +4 -0
- package/lib/payloads/list.js +3 -0
- package/lib/payloads/logs-monitor.d.ts +33 -0
- package/lib/payloads/logs-monitor.js +3 -0
- package/lib/payloads/progress.d.ts +14 -0
- package/lib/payloads/progress.js +3 -0
- package/lib/payloads/refactor.d.ts +14 -0
- package/lib/payloads/refactor.js +3 -0
- package/lib/payloads/rollback.d.ts +17 -0
- package/lib/payloads/rollback.js +3 -0
- package/lib/payloads/sdk-trace.d.ts +20 -0
- package/lib/payloads/sdk-trace.js +3 -0
- package/lib/payloads/stack-activity.d.ts +53 -0
- package/lib/payloads/stack-activity.js +3 -0
- package/lib/payloads/stack-details.d.ts +17 -0
- package/lib/payloads/stack-details.js +3 -0
- package/lib/payloads/synth.d.ts +7 -0
- package/lib/payloads/synth.js +3 -0
- package/lib/payloads/types.d.ts +95 -0
- package/lib/payloads/types.js +3 -0
- package/lib/payloads/watch.d.ts +27 -0
- package/lib/payloads/watch.js +3 -0
- package/lib/private/activity-printer/base.d.ts +50 -0
- package/lib/private/activity-printer/base.js +120 -0
- package/lib/private/activity-printer/current.d.ts +26 -0
- package/lib/private/activity-printer/current.js +122 -0
- package/lib/private/activity-printer/display.d.ts +13 -0
- package/lib/private/activity-printer/display.js +81 -0
- package/lib/private/activity-printer/history.d.ts +32 -0
- package/lib/private/activity-printer/history.js +109 -0
- package/lib/private/activity-printer/index.d.ts +3 -0
- package/lib/private/activity-printer/index.js +20 -0
- package/lib/private/index.d.ts +1 -0
- package/lib/private/index.js +18 -0
- package/lib/toolkit/non-interactive-io-host.js +5 -4
- package/lib/toolkit/private/index.d.ts +2 -1
- package/lib/toolkit/private/index.js +1 -1
- package/lib/toolkit/toolkit-error.d.ts +86 -0
- package/lib/toolkit/toolkit-error.js +132 -0
- package/lib/toolkit/toolkit.d.ts +2 -2
- package/lib/toolkit/toolkit.js +161 -130
- package/lib/toolkit/types.d.ts +0 -55
- package/lib/toolkit/types.js +1 -1
- package/lib/util/archive.d.ts +1 -0
- package/lib/util/archive.js +86 -0
- package/lib/util/arrays.d.ts +14 -0
- package/lib/util/arrays.js +36 -0
- package/lib/util/bool.d.ts +7 -0
- package/lib/util/bool.js +13 -0
- package/lib/util/bytes.d.ts +8 -0
- package/lib/util/bytes.js +21 -0
- package/lib/util/cloudformation.d.ts +16 -0
- package/lib/util/cloudformation.js +36 -0
- package/lib/util/content-hash.d.ts +5 -0
- package/lib/util/content-hash.js +43 -0
- package/lib/util/directories.d.ts +22 -0
- package/lib/util/directories.js +59 -0
- package/lib/util/format-error.d.ts +9 -0
- package/lib/util/format-error.js +22 -0
- package/lib/util/index.d.ts +19 -0
- package/lib/util/index.js +36 -0
- package/lib/util/json.d.ts +48 -0
- package/lib/util/json.js +68 -0
- package/lib/util/net.d.ts +9 -0
- package/lib/util/net.js +60 -0
- package/lib/util/objects.d.ts +65 -0
- package/lib/util/objects.js +230 -0
- package/lib/util/package-info.d.ts +3 -0
- package/lib/util/package-info.js +22 -0
- package/lib/util/parallel.d.ts +6 -0
- package/lib/util/parallel.js +48 -0
- package/lib/util/serialize.d.ts +27 -0
- package/lib/util/serialize.js +86 -0
- package/lib/util/string-manipulation.d.ts +18 -0
- package/lib/util/string-manipulation.js +46 -0
- package/lib/util/type-brands.d.ts +39 -0
- package/lib/util/type-brands.js +39 -0
- package/lib/util/types.d.ts +27 -0
- package/lib/util/types.js +25 -0
- package/lib/util/version-range.d.ts +2 -0
- package/lib/util/version-range.js +36 -0
- package/lib/util/yaml-cfn.d.ts +15 -0
- package/lib/util/yaml-cfn.js +58 -0
- package/package.json +26 -28
- package/tsdoc.json +15 -0
- package/lib/api/shared-private.js.map +0 -7
- package/lib/api/shared-public.d.ts +0 -2159
- package/lib/api/shared-public.js +0 -1110
- package/lib/api/shared-public.js.map +0 -7
- package/lib/private/util.d.ts +0 -1
- package/lib/private/util.js +0 -787
- package/lib/private/util.js.map +0 -7
|
@@ -1,2159 +0,0 @@
|
|
|
1
|
-
import * as cxapi from '@aws-cdk/cx-api';
|
|
2
|
-
import { CloudFormationStackArtifact } from '@aws-cdk/cx-api';
|
|
3
|
-
import { StackEvent } from '@aws-sdk/client-cloudformation';
|
|
4
|
-
|
|
5
|
-
interface BootstrapRole {
|
|
6
|
-
/**
|
|
7
|
-
* The ARN of the IAM role created as part of bootrapping
|
|
8
|
-
* e.g. lookupRoleArn
|
|
9
|
-
*/
|
|
10
|
-
readonly arn: string;
|
|
11
|
-
/**
|
|
12
|
-
* External ID to use when assuming the bootstrap role
|
|
13
|
-
*
|
|
14
|
-
* @default - No external ID
|
|
15
|
-
*/
|
|
16
|
-
readonly assumeRoleExternalId?: string;
|
|
17
|
-
/**
|
|
18
|
-
* Additional options to pass to STS when assuming the role.
|
|
19
|
-
*
|
|
20
|
-
* - `RoleArn` should not be used. Use the dedicated `arn` property instead.
|
|
21
|
-
* - `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead.
|
|
22
|
-
*
|
|
23
|
-
* @see https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
|
|
24
|
-
* @default - No additional options.
|
|
25
|
-
*/
|
|
26
|
-
readonly assumeRoleAdditionalOptions?: {
|
|
27
|
-
[key: string]: any;
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Version of bootstrap stack required to use this role
|
|
31
|
-
*
|
|
32
|
-
* @default - No bootstrap stack required
|
|
33
|
-
*/
|
|
34
|
-
readonly requiresBootstrapStackVersion?: number;
|
|
35
|
-
/**
|
|
36
|
-
* Name of SSM parameter with bootstrap stack version
|
|
37
|
-
*
|
|
38
|
-
* @default - Discover SSM parameter by reading stack
|
|
39
|
-
*/
|
|
40
|
-
readonly bootstrapStackVersionSsmParameter?: string;
|
|
41
|
-
}
|
|
42
|
-
interface AwsCloudFormationStackProperties {
|
|
43
|
-
/**
|
|
44
|
-
* A file relative to the assembly root which contains the CloudFormation template for this stack.
|
|
45
|
-
*/
|
|
46
|
-
readonly templateFile: string;
|
|
47
|
-
/**
|
|
48
|
-
* Values for CloudFormation stack parameters that should be passed when the stack is deployed.
|
|
49
|
-
*
|
|
50
|
-
* @default - No parameters
|
|
51
|
-
*/
|
|
52
|
-
readonly parameters?: {
|
|
53
|
-
[id: string]: string;
|
|
54
|
-
};
|
|
55
|
-
/**
|
|
56
|
-
* Values for CloudFormation stack tags that should be passed when the stack is deployed.
|
|
57
|
-
*
|
|
58
|
-
* @default - No tags
|
|
59
|
-
*/
|
|
60
|
-
readonly tags?: {
|
|
61
|
-
[id: string]: string;
|
|
62
|
-
};
|
|
63
|
-
/**
|
|
64
|
-
* SNS Notification ARNs that should receive CloudFormation Stack Events.
|
|
65
|
-
*
|
|
66
|
-
* @default - No notification arns
|
|
67
|
-
*/
|
|
68
|
-
readonly notificationArns?: string[];
|
|
69
|
-
/**
|
|
70
|
-
* The name to use for the CloudFormation stack.
|
|
71
|
-
* @default - name derived from artifact ID
|
|
72
|
-
*/
|
|
73
|
-
readonly stackName?: string;
|
|
74
|
-
/**
|
|
75
|
-
* Whether to enable termination protection for this stack.
|
|
76
|
-
*
|
|
77
|
-
* @default false
|
|
78
|
-
*/
|
|
79
|
-
readonly terminationProtection?: boolean;
|
|
80
|
-
/**
|
|
81
|
-
* The role that needs to be assumed to deploy the stack
|
|
82
|
-
*
|
|
83
|
-
* @default - No role is assumed (current credentials are used)
|
|
84
|
-
*/
|
|
85
|
-
readonly assumeRoleArn?: string;
|
|
86
|
-
/**
|
|
87
|
-
* External ID to use when assuming role for cloudformation deployments
|
|
88
|
-
*
|
|
89
|
-
* @default - No external ID
|
|
90
|
-
*/
|
|
91
|
-
readonly assumeRoleExternalId?: string;
|
|
92
|
-
/**
|
|
93
|
-
* Additional options to pass to STS when assuming the role.
|
|
94
|
-
*
|
|
95
|
-
* - `RoleArn` should not be used. Use the dedicated `assumeRoleArn` property instead.
|
|
96
|
-
* - `ExternalId` should not be used. Use the dedicated `assumeRoleExternalId` instead.
|
|
97
|
-
*
|
|
98
|
-
* @see https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
|
|
99
|
-
* @default - No additional options.
|
|
100
|
-
*/
|
|
101
|
-
readonly assumeRoleAdditionalOptions?: {
|
|
102
|
-
[key: string]: any;
|
|
103
|
-
};
|
|
104
|
-
/**
|
|
105
|
-
* The role that is passed to CloudFormation to execute the change set
|
|
106
|
-
*
|
|
107
|
-
* @default - No role is passed (currently assumed role/credentials are used)
|
|
108
|
-
*/
|
|
109
|
-
readonly cloudFormationExecutionRoleArn?: string;
|
|
110
|
-
/**
|
|
111
|
-
* The role to use to look up values from the target AWS account
|
|
112
|
-
*
|
|
113
|
-
* @default - No role is assumed (current credentials are used)
|
|
114
|
-
*/
|
|
115
|
-
readonly lookupRole?: BootstrapRole;
|
|
116
|
-
/**
|
|
117
|
-
* If the stack template has already been included in the asset manifest, its asset URL
|
|
118
|
-
*
|
|
119
|
-
* @default - Not uploaded yet, upload just before deploying
|
|
120
|
-
*/
|
|
121
|
-
readonly stackTemplateAssetObjectUrl?: string;
|
|
122
|
-
/**
|
|
123
|
-
* Version of bootstrap stack required to deploy this stack
|
|
124
|
-
*
|
|
125
|
-
* @default - No bootstrap stack required
|
|
126
|
-
*/
|
|
127
|
-
readonly requiresBootstrapStackVersion?: number;
|
|
128
|
-
/**
|
|
129
|
-
* SSM parameter where the bootstrap stack version number can be found
|
|
130
|
-
*
|
|
131
|
-
* Only used if `requiresBootstrapStackVersion` is set.
|
|
132
|
-
*
|
|
133
|
-
* - If this value is not set, the bootstrap stack name must be known at
|
|
134
|
-
* deployment time so the stack version can be looked up from the stack
|
|
135
|
-
* outputs.
|
|
136
|
-
* - If this value is set, the bootstrap stack can have any name because
|
|
137
|
-
* we won't need to look it up.
|
|
138
|
-
*
|
|
139
|
-
* @default - Bootstrap stack version number looked up
|
|
140
|
-
*/
|
|
141
|
-
readonly bootstrapStackVersionSsmParameter?: string;
|
|
142
|
-
/**
|
|
143
|
-
* Whether this stack should be validated by the CLI after synthesis
|
|
144
|
-
*
|
|
145
|
-
* @default - false
|
|
146
|
-
*/
|
|
147
|
-
readonly validateOnSynth?: boolean;
|
|
148
|
-
}
|
|
149
|
-
interface AssetManifestOptions {
|
|
150
|
-
/**
|
|
151
|
-
* Version of bootstrap stack required to deploy this stack
|
|
152
|
-
*
|
|
153
|
-
* @default - Version 1 (basic modern bootstrap stack)
|
|
154
|
-
*/
|
|
155
|
-
readonly requiresBootstrapStackVersion?: number;
|
|
156
|
-
/**
|
|
157
|
-
* SSM parameter where the bootstrap stack version number can be found
|
|
158
|
-
*
|
|
159
|
-
* - If this value is not set, the bootstrap stack name must be known at
|
|
160
|
-
* deployment time so the stack version can be looked up from the stack
|
|
161
|
-
* outputs.
|
|
162
|
-
* - If this value is set, the bootstrap stack can have any name because
|
|
163
|
-
* we won't need to look it up.
|
|
164
|
-
*
|
|
165
|
-
* @default - Bootstrap stack version number looked up
|
|
166
|
-
*/
|
|
167
|
-
readonly bootstrapStackVersionSsmParameter?: string;
|
|
168
|
-
}
|
|
169
|
-
interface AssetManifestProperties extends AssetManifestOptions {
|
|
170
|
-
/**
|
|
171
|
-
* Filename of the asset manifest
|
|
172
|
-
*/
|
|
173
|
-
readonly file: string;
|
|
174
|
-
}
|
|
175
|
-
interface TreeArtifactProperties {
|
|
176
|
-
/**
|
|
177
|
-
* Filename of the tree artifact
|
|
178
|
-
*/
|
|
179
|
-
readonly file: string;
|
|
180
|
-
}
|
|
181
|
-
interface NestedCloudAssemblyProperties {
|
|
182
|
-
/**
|
|
183
|
-
* Relative path to the nested cloud assembly
|
|
184
|
-
*/
|
|
185
|
-
readonly directoryName: string;
|
|
186
|
-
/**
|
|
187
|
-
* Display name for the cloud assembly
|
|
188
|
-
*
|
|
189
|
-
* @default - The artifact ID
|
|
190
|
-
*/
|
|
191
|
-
readonly displayName?: string;
|
|
192
|
-
}
|
|
193
|
-
type ArtifactProperties = AwsCloudFormationStackProperties | AssetManifestProperties | TreeArtifactProperties | NestedCloudAssemblyProperties;
|
|
194
|
-
interface BaseAssetMetadataEntry {
|
|
195
|
-
/**
|
|
196
|
-
* Requested packaging style
|
|
197
|
-
*/
|
|
198
|
-
readonly packaging: string;
|
|
199
|
-
/**
|
|
200
|
-
* Logical identifier for the asset
|
|
201
|
-
*/
|
|
202
|
-
readonly id: string;
|
|
203
|
-
/**
|
|
204
|
-
* The hash of the asset source.
|
|
205
|
-
*/
|
|
206
|
-
readonly sourceHash: string;
|
|
207
|
-
/**
|
|
208
|
-
* Path on disk to the asset
|
|
209
|
-
*/
|
|
210
|
-
readonly path: string;
|
|
211
|
-
}
|
|
212
|
-
interface FileAssetMetadataEntry extends BaseAssetMetadataEntry {
|
|
213
|
-
/**
|
|
214
|
-
* Requested packaging style
|
|
215
|
-
*/
|
|
216
|
-
readonly packaging: "zip" | "file";
|
|
217
|
-
/**
|
|
218
|
-
* Name of parameter where S3 bucket should be passed in
|
|
219
|
-
*/
|
|
220
|
-
readonly s3BucketParameter: string;
|
|
221
|
-
/**
|
|
222
|
-
* Name of parameter where S3 key should be passed in
|
|
223
|
-
*/
|
|
224
|
-
readonly s3KeyParameter: string;
|
|
225
|
-
/**
|
|
226
|
-
* The name of the parameter where the hash of the bundled asset should be passed in.
|
|
227
|
-
*/
|
|
228
|
-
readonly artifactHashParameter: string;
|
|
229
|
-
}
|
|
230
|
-
interface Tag {
|
|
231
|
-
/**
|
|
232
|
-
* Tag key.
|
|
233
|
-
*
|
|
234
|
-
* (In the actual file on disk this will be cased as "Key", and the structure is
|
|
235
|
-
* patched to match this structure upon loading:
|
|
236
|
-
* https://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)
|
|
237
|
-
*/
|
|
238
|
-
readonly key: string;
|
|
239
|
-
/**
|
|
240
|
-
* Tag value.
|
|
241
|
-
*
|
|
242
|
-
* (In the actual file on disk this will be cased as "Value", and the structure is
|
|
243
|
-
* patched to match this structure upon loading:
|
|
244
|
-
* https://github.com/aws/aws-cdk/blob/4aadaa779b48f35838cccd4e25107b2338f05547/packages/%40aws-cdk/cloud-assembly-schema/lib/manifest.ts#L137)
|
|
245
|
-
*/
|
|
246
|
-
readonly value: string;
|
|
247
|
-
}
|
|
248
|
-
interface ContainerImageAssetCacheOption {
|
|
249
|
-
/**
|
|
250
|
-
* The type of cache to use.
|
|
251
|
-
* Refer to https://docs.docker.com/build/cache/backends/ for full list of backends.
|
|
252
|
-
* @default - unspecified
|
|
253
|
-
*
|
|
254
|
-
* @example 'registry'
|
|
255
|
-
*/
|
|
256
|
-
readonly type: string;
|
|
257
|
-
/**
|
|
258
|
-
* Any parameters to pass into the docker cache backend configuration.
|
|
259
|
-
* Refer to https://docs.docker.com/build/cache/backends/ for cache backend configuration.
|
|
260
|
-
* @default {} No options provided
|
|
261
|
-
*
|
|
262
|
-
* @example
|
|
263
|
-
* declare const branch: string;
|
|
264
|
-
*
|
|
265
|
-
* const params = {
|
|
266
|
-
* ref: `12345678.dkr.ecr.us-west-2.amazonaws.com/cache:${branch}`,
|
|
267
|
-
* mode: "max",
|
|
268
|
-
* };
|
|
269
|
-
*/
|
|
270
|
-
readonly params?: {
|
|
271
|
-
[key: string]: string;
|
|
272
|
-
};
|
|
273
|
-
}
|
|
274
|
-
interface ContainerImageAssetMetadataEntry extends BaseAssetMetadataEntry {
|
|
275
|
-
/**
|
|
276
|
-
* Type of asset
|
|
277
|
-
*/
|
|
278
|
-
readonly packaging: "container-image";
|
|
279
|
-
/**
|
|
280
|
-
* ECR Repository name and repo digest (separated by "@sha256:") where this
|
|
281
|
-
* image is stored.
|
|
282
|
-
*
|
|
283
|
-
* @default undefined If not specified, `repositoryName` and `imageTag` are
|
|
284
|
-
* required because otherwise how will the stack know where to find the asset,
|
|
285
|
-
* ha?
|
|
286
|
-
* @deprecated specify `repositoryName` and `imageTag` instead, and then you
|
|
287
|
-
* know where the image will go.
|
|
288
|
-
*/
|
|
289
|
-
readonly imageNameParameter?: string;
|
|
290
|
-
/**
|
|
291
|
-
* ECR repository name, if omitted a default name based on the asset's ID is
|
|
292
|
-
* used instead. Specify this property if you need to statically address the
|
|
293
|
-
* image, e.g. from a Kubernetes Pod. Note, this is only the repository name,
|
|
294
|
-
* without the registry and the tag parts.
|
|
295
|
-
*
|
|
296
|
-
* @default - this parameter is REQUIRED after 1.21.0
|
|
297
|
-
*/
|
|
298
|
-
readonly repositoryName?: string;
|
|
299
|
-
/**
|
|
300
|
-
* The docker image tag to use for tagging pushed images. This field is
|
|
301
|
-
* required if `imageParameterName` is ommited (otherwise, the app won't be
|
|
302
|
-
* able to find the image).
|
|
303
|
-
*
|
|
304
|
-
* @default - this parameter is REQUIRED after 1.21.0
|
|
305
|
-
*/
|
|
306
|
-
readonly imageTag?: string;
|
|
307
|
-
/**
|
|
308
|
-
* Build args to pass to the `docker build` command
|
|
309
|
-
*
|
|
310
|
-
* @default no build args are passed
|
|
311
|
-
*/
|
|
312
|
-
readonly buildArgs?: {
|
|
313
|
-
[key: string]: string;
|
|
314
|
-
};
|
|
315
|
-
/**
|
|
316
|
-
* SSH agent socket or keys to pass to the `docker build` command
|
|
317
|
-
*
|
|
318
|
-
* @default no ssh arg is passed
|
|
319
|
-
*/
|
|
320
|
-
readonly buildSsh?: string;
|
|
321
|
-
/**
|
|
322
|
-
* Build secrets to pass to the `docker build` command
|
|
323
|
-
*
|
|
324
|
-
* @default no build secrets are passed
|
|
325
|
-
*/
|
|
326
|
-
readonly buildSecrets?: {
|
|
327
|
-
[key: string]: string;
|
|
328
|
-
};
|
|
329
|
-
/**
|
|
330
|
-
* Docker target to build to
|
|
331
|
-
*
|
|
332
|
-
* @default no build target
|
|
333
|
-
*/
|
|
334
|
-
readonly target?: string;
|
|
335
|
-
/**
|
|
336
|
-
* Path to the Dockerfile (relative to the directory).
|
|
337
|
-
*
|
|
338
|
-
* @default - no file is passed
|
|
339
|
-
*/
|
|
340
|
-
readonly file?: string;
|
|
341
|
-
/**
|
|
342
|
-
* Networking mode for the RUN commands during build.
|
|
343
|
-
*
|
|
344
|
-
* @default - no networking mode specified
|
|
345
|
-
*/
|
|
346
|
-
readonly networkMode?: string;
|
|
347
|
-
/**
|
|
348
|
-
* Platform to build for. _Requires Docker Buildx_.
|
|
349
|
-
*
|
|
350
|
-
* @default - current machine platform
|
|
351
|
-
*/
|
|
352
|
-
readonly platform?: string;
|
|
353
|
-
/**
|
|
354
|
-
* Outputs to pass to the `docker build` command.
|
|
355
|
-
*
|
|
356
|
-
* @default - no outputs are passed to the build command (default outputs are used)
|
|
357
|
-
* @see https://docs.docker.com/engine/reference/commandline/build/#custom-build-outputs
|
|
358
|
-
*/
|
|
359
|
-
readonly outputs?: string[];
|
|
360
|
-
/**
|
|
361
|
-
* Cache from options to pass to the `docker build` command.
|
|
362
|
-
*
|
|
363
|
-
* @default - no cache from options are passed to the build command
|
|
364
|
-
* @see https://docs.docker.com/build/cache/backends/
|
|
365
|
-
*/
|
|
366
|
-
readonly cacheFrom?: ContainerImageAssetCacheOption[];
|
|
367
|
-
/**
|
|
368
|
-
* Cache to options to pass to the `docker build` command.
|
|
369
|
-
*
|
|
370
|
-
* @default - no cache to options are passed to the build command
|
|
371
|
-
* @see https://docs.docker.com/build/cache/backends/
|
|
372
|
-
*/
|
|
373
|
-
readonly cacheTo?: ContainerImageAssetCacheOption;
|
|
374
|
-
/**
|
|
375
|
-
* Disable the cache and pass `--no-cache` to the `docker build` command.
|
|
376
|
-
*
|
|
377
|
-
* @default - cache is used
|
|
378
|
-
*/
|
|
379
|
-
readonly cacheDisabled?: boolean;
|
|
380
|
-
}
|
|
381
|
-
type AssetMetadataEntry = FileAssetMetadataEntry | ContainerImageAssetMetadataEntry;
|
|
382
|
-
type LogMessageMetadataEntry = string;
|
|
383
|
-
type LogicalIdMetadataEntry = string;
|
|
384
|
-
type StackTagsMetadataEntry = Tag[];
|
|
385
|
-
type PrimitiveType = boolean | number | string;
|
|
386
|
-
type MetadataEntryData = AssetMetadataEntry | LogMessageMetadataEntry | LogicalIdMetadataEntry | StackTagsMetadataEntry | PrimitiveType;
|
|
387
|
-
interface MetadataEntry {
|
|
388
|
-
/**
|
|
389
|
-
* The type of the metadata entry.
|
|
390
|
-
*/
|
|
391
|
-
readonly type: string;
|
|
392
|
-
/**
|
|
393
|
-
* The data.
|
|
394
|
-
*
|
|
395
|
-
* @default - no data.
|
|
396
|
-
*/
|
|
397
|
-
readonly data?: MetadataEntryData;
|
|
398
|
-
/**
|
|
399
|
-
* A stack trace for when the entry was created.
|
|
400
|
-
*
|
|
401
|
-
* @default - no trace.
|
|
402
|
-
*/
|
|
403
|
-
readonly trace?: string[];
|
|
404
|
-
}
|
|
405
|
-
declare enum ContextProvider {
|
|
406
|
-
/**
|
|
407
|
-
* AMI provider
|
|
408
|
-
*/
|
|
409
|
-
AMI_PROVIDER = "ami",
|
|
410
|
-
/**
|
|
411
|
-
* AZ provider
|
|
412
|
-
*/
|
|
413
|
-
AVAILABILITY_ZONE_PROVIDER = "availability-zones",
|
|
414
|
-
/**
|
|
415
|
-
* Route53 Hosted Zone provider
|
|
416
|
-
*/
|
|
417
|
-
HOSTED_ZONE_PROVIDER = "hosted-zone",
|
|
418
|
-
/**
|
|
419
|
-
* SSM Parameter Provider
|
|
420
|
-
*/
|
|
421
|
-
SSM_PARAMETER_PROVIDER = "ssm",
|
|
422
|
-
/**
|
|
423
|
-
* VPC Provider
|
|
424
|
-
*/
|
|
425
|
-
VPC_PROVIDER = "vpc-provider",
|
|
426
|
-
/**
|
|
427
|
-
* VPC Endpoint Service AZ Provider
|
|
428
|
-
*/
|
|
429
|
-
ENDPOINT_SERVICE_AVAILABILITY_ZONE_PROVIDER = "endpoint-service-availability-zones",
|
|
430
|
-
/**
|
|
431
|
-
* Load balancer provider
|
|
432
|
-
*/
|
|
433
|
-
LOAD_BALANCER_PROVIDER = "load-balancer",
|
|
434
|
-
/**
|
|
435
|
-
* Load balancer listener provider
|
|
436
|
-
*/
|
|
437
|
-
LOAD_BALANCER_LISTENER_PROVIDER = "load-balancer-listener",
|
|
438
|
-
/**
|
|
439
|
-
* Security group provider
|
|
440
|
-
*/
|
|
441
|
-
SECURITY_GROUP_PROVIDER = "security-group",
|
|
442
|
-
/**
|
|
443
|
-
* KMS Key Provider
|
|
444
|
-
*/
|
|
445
|
-
KEY_PROVIDER = "key-provider",
|
|
446
|
-
/**
|
|
447
|
-
* CCAPI Provider
|
|
448
|
-
*/
|
|
449
|
-
CC_API_PROVIDER = "cc-api-provider",
|
|
450
|
-
/**
|
|
451
|
-
* A plugin provider (the actual plugin name will be in the properties)
|
|
452
|
-
*/
|
|
453
|
-
PLUGIN = "plugin"
|
|
454
|
-
}
|
|
455
|
-
interface ContextLookupRoleOptions {
|
|
456
|
-
/**
|
|
457
|
-
* Query account
|
|
458
|
-
*/
|
|
459
|
-
readonly account: string;
|
|
460
|
-
/**
|
|
461
|
-
* Query region
|
|
462
|
-
*/
|
|
463
|
-
readonly region: string;
|
|
464
|
-
/**
|
|
465
|
-
* The ARN of the role that should be used to look up the missing values
|
|
466
|
-
*
|
|
467
|
-
* @default - None
|
|
468
|
-
*/
|
|
469
|
-
readonly lookupRoleArn?: string;
|
|
470
|
-
/**
|
|
471
|
-
* The ExternalId that needs to be supplied while assuming this role
|
|
472
|
-
*
|
|
473
|
-
* @default - No ExternalId will be supplied
|
|
474
|
-
*/
|
|
475
|
-
readonly lookupRoleExternalId?: string;
|
|
476
|
-
/**
|
|
477
|
-
* Additional options to pass to STS when assuming the lookup role.
|
|
478
|
-
*
|
|
479
|
-
* - `RoleArn` should not be used. Use the dedicated `lookupRoleArn` property instead.
|
|
480
|
-
* - `ExternalId` should not be used. Use the dedicated `lookupRoleExternalId` instead.
|
|
481
|
-
*
|
|
482
|
-
* @see https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
|
|
483
|
-
* @default - No additional options.
|
|
484
|
-
*/
|
|
485
|
-
readonly assumeRoleAdditionalOptions?: {
|
|
486
|
-
[key: string]: any;
|
|
487
|
-
};
|
|
488
|
-
}
|
|
489
|
-
interface AmiContextQuery extends ContextLookupRoleOptions {
|
|
490
|
-
/**
|
|
491
|
-
* Owners to DescribeImages call
|
|
492
|
-
*
|
|
493
|
-
* @default - All owners
|
|
494
|
-
*/
|
|
495
|
-
readonly owners?: string[];
|
|
496
|
-
/**
|
|
497
|
-
* Filters to DescribeImages call
|
|
498
|
-
*/
|
|
499
|
-
readonly filters: {
|
|
500
|
-
[key: string]: string[];
|
|
501
|
-
};
|
|
502
|
-
}
|
|
503
|
-
interface AvailabilityZonesContextQuery extends ContextLookupRoleOptions {
|
|
504
|
-
}
|
|
505
|
-
interface HostedZoneContextQuery extends ContextLookupRoleOptions {
|
|
506
|
-
/**
|
|
507
|
-
* The domain name e.g. example.com to lookup
|
|
508
|
-
*/
|
|
509
|
-
readonly domainName: string;
|
|
510
|
-
/**
|
|
511
|
-
* True if the zone you want to find is a private hosted zone
|
|
512
|
-
*
|
|
513
|
-
* @default false
|
|
514
|
-
*/
|
|
515
|
-
readonly privateZone?: boolean;
|
|
516
|
-
/**
|
|
517
|
-
* The VPC ID to that the private zone must be associated with
|
|
518
|
-
*
|
|
519
|
-
* If you provide VPC ID and privateZone is false, this will return no results
|
|
520
|
-
* and raise an error.
|
|
521
|
-
*
|
|
522
|
-
* @default - Required if privateZone=true
|
|
523
|
-
*/
|
|
524
|
-
readonly vpcId?: string;
|
|
525
|
-
}
|
|
526
|
-
interface SSMParameterContextQuery extends ContextLookupRoleOptions {
|
|
527
|
-
/**
|
|
528
|
-
* Parameter name to query
|
|
529
|
-
*/
|
|
530
|
-
readonly parameterName: string;
|
|
531
|
-
}
|
|
532
|
-
interface VpcContextQuery extends ContextLookupRoleOptions {
|
|
533
|
-
/**
|
|
534
|
-
* Filters to apply to the VPC
|
|
535
|
-
*
|
|
536
|
-
* Filter parameters are the same as passed to DescribeVpcs.
|
|
537
|
-
*
|
|
538
|
-
* @see https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html
|
|
539
|
-
*/
|
|
540
|
-
readonly filter: {
|
|
541
|
-
[key: string]: string;
|
|
542
|
-
};
|
|
543
|
-
/**
|
|
544
|
-
* Whether to populate the subnetGroups field of the `VpcContextResponse`,
|
|
545
|
-
* which contains potentially asymmetric subnet groups.
|
|
546
|
-
*
|
|
547
|
-
* @default false
|
|
548
|
-
*/
|
|
549
|
-
readonly returnAsymmetricSubnets?: boolean;
|
|
550
|
-
/**
|
|
551
|
-
* Optional tag for subnet group name.
|
|
552
|
-
* If not provided, we'll look at the aws-cdk:subnet-name tag.
|
|
553
|
-
* If the subnet does not have the specified tag,
|
|
554
|
-
* we'll use its type as the name.
|
|
555
|
-
*
|
|
556
|
-
* @default 'aws-cdk:subnet-name'
|
|
557
|
-
*/
|
|
558
|
-
readonly subnetGroupNameTag?: string;
|
|
559
|
-
/**
|
|
560
|
-
* Whether to populate the `vpnGatewayId` field of the `VpcContextResponse`,
|
|
561
|
-
* which contains the VPN Gateway ID, if one exists. You can explicitly
|
|
562
|
-
* disable this in order to avoid the lookup if you know the VPC does not have
|
|
563
|
-
* a VPN Gatway attached.
|
|
564
|
-
*
|
|
565
|
-
* @default true
|
|
566
|
-
*/
|
|
567
|
-
readonly returnVpnGateways?: boolean;
|
|
568
|
-
}
|
|
569
|
-
interface EndpointServiceAvailabilityZonesContextQuery extends ContextLookupRoleOptions {
|
|
570
|
-
/**
|
|
571
|
-
* Query service name
|
|
572
|
-
*/
|
|
573
|
-
readonly serviceName: string;
|
|
574
|
-
}
|
|
575
|
-
declare enum LoadBalancerType {
|
|
576
|
-
/**
|
|
577
|
-
* Network load balancer
|
|
578
|
-
*/
|
|
579
|
-
NETWORK = "network",
|
|
580
|
-
/**
|
|
581
|
-
* Application load balancer
|
|
582
|
-
*/
|
|
583
|
-
APPLICATION = "application"
|
|
584
|
-
}
|
|
585
|
-
interface LoadBalancerFilter extends ContextLookupRoleOptions {
|
|
586
|
-
/**
|
|
587
|
-
* Filter load balancers by their type
|
|
588
|
-
*/
|
|
589
|
-
readonly loadBalancerType: LoadBalancerType;
|
|
590
|
-
/**
|
|
591
|
-
* Find by load balancer's ARN
|
|
592
|
-
* @default - does not search by load balancer arn
|
|
593
|
-
*/
|
|
594
|
-
readonly loadBalancerArn?: string;
|
|
595
|
-
/**
|
|
596
|
-
* Match load balancer tags
|
|
597
|
-
* @default - does not match load balancers by tags
|
|
598
|
-
*/
|
|
599
|
-
readonly loadBalancerTags?: Tag[];
|
|
600
|
-
}
|
|
601
|
-
interface LoadBalancerContextQuery extends LoadBalancerFilter {
|
|
602
|
-
}
|
|
603
|
-
declare enum LoadBalancerListenerProtocol {
|
|
604
|
-
/**
|
|
605
|
-
* HTTP protocol
|
|
606
|
-
*/
|
|
607
|
-
HTTP = "HTTP",
|
|
608
|
-
/**
|
|
609
|
-
* HTTPS protocol
|
|
610
|
-
*/
|
|
611
|
-
HTTPS = "HTTPS",
|
|
612
|
-
/**
|
|
613
|
-
* TCP protocol
|
|
614
|
-
*/
|
|
615
|
-
TCP = "TCP",
|
|
616
|
-
/**
|
|
617
|
-
* TLS protocol
|
|
618
|
-
*/
|
|
619
|
-
TLS = "TLS",
|
|
620
|
-
/**
|
|
621
|
-
* UDP protocol
|
|
622
|
-
* */
|
|
623
|
-
UDP = "UDP",
|
|
624
|
-
/**
|
|
625
|
-
* TCP and UDP protocol
|
|
626
|
-
* */
|
|
627
|
-
TCP_UDP = "TCP_UDP"
|
|
628
|
-
}
|
|
629
|
-
interface LoadBalancerListenerContextQuery extends LoadBalancerFilter {
|
|
630
|
-
/**
|
|
631
|
-
* Find by listener's arn
|
|
632
|
-
* @default - does not find by listener arn
|
|
633
|
-
*/
|
|
634
|
-
readonly listenerArn?: string;
|
|
635
|
-
/**
|
|
636
|
-
* Filter by listener protocol
|
|
637
|
-
* @default - does not filter by listener protocol
|
|
638
|
-
*/
|
|
639
|
-
readonly listenerProtocol?: LoadBalancerListenerProtocol;
|
|
640
|
-
/**
|
|
641
|
-
* Filter listeners by listener port
|
|
642
|
-
* @default - does not filter by a listener port
|
|
643
|
-
*/
|
|
644
|
-
readonly listenerPort?: number;
|
|
645
|
-
}
|
|
646
|
-
interface SecurityGroupContextQuery extends ContextLookupRoleOptions {
|
|
647
|
-
/**
|
|
648
|
-
* Security group id
|
|
649
|
-
*
|
|
650
|
-
* @default - None
|
|
651
|
-
*/
|
|
652
|
-
readonly securityGroupId?: string;
|
|
653
|
-
/**
|
|
654
|
-
* Security group name
|
|
655
|
-
*
|
|
656
|
-
* @default - None
|
|
657
|
-
*/
|
|
658
|
-
readonly securityGroupName?: string;
|
|
659
|
-
/**
|
|
660
|
-
* VPC ID
|
|
661
|
-
*
|
|
662
|
-
* @default - None
|
|
663
|
-
*/
|
|
664
|
-
readonly vpcId?: string;
|
|
665
|
-
}
|
|
666
|
-
interface KeyContextQuery extends ContextLookupRoleOptions {
|
|
667
|
-
/**
|
|
668
|
-
* Alias name used to search the Key
|
|
669
|
-
*/
|
|
670
|
-
readonly aliasName: string;
|
|
671
|
-
}
|
|
672
|
-
interface CcApiContextQuery extends ContextLookupRoleOptions {
|
|
673
|
-
/**
|
|
674
|
-
* The CloudFormation resource type.
|
|
675
|
-
* See https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/supported-resources.html
|
|
676
|
-
*/
|
|
677
|
-
readonly typeName: string;
|
|
678
|
-
/**
|
|
679
|
-
* Identifier of the resource to look up using `GetResource`.
|
|
680
|
-
*
|
|
681
|
-
* Specifying exactIdentifier will return exactly one result, or throw an error
|
|
682
|
-
* unless `ignoreErrorOnMissingContext` is set.
|
|
683
|
-
*
|
|
684
|
-
* @default - Either exactIdentifier or propertyMatch should be specified.
|
|
685
|
-
*/
|
|
686
|
-
readonly exactIdentifier?: string;
|
|
687
|
-
/**
|
|
688
|
-
* Returns any resources matching these properties, using `ListResources`.
|
|
689
|
-
*
|
|
690
|
-
* By default, specifying propertyMatch will successfully return 0 or more
|
|
691
|
-
* results. To throw an error if the number of results is unexpected (and
|
|
692
|
-
* prevent the query results from being committed to context), specify
|
|
693
|
-
* `expectedMatchCount`.
|
|
694
|
-
*
|
|
695
|
-
* ## Notes on property completeness
|
|
696
|
-
*
|
|
697
|
-
* CloudControl API's `ListResources` may return fewer properties than
|
|
698
|
-
* `GetResource` would, depending on the resource implementation.
|
|
699
|
-
*
|
|
700
|
-
* The resources that `propertyMatch` matches against will *only ever* be the
|
|
701
|
-
* properties returned by the `ListResources` call.
|
|
702
|
-
*
|
|
703
|
-
* @default - Either exactIdentifier or propertyMatch should be specified.
|
|
704
|
-
*/
|
|
705
|
-
readonly propertyMatch?: Record<string, unknown>;
|
|
706
|
-
/**
|
|
707
|
-
* This is a set of properties returned from CC API that we want to return from ContextQuery.
|
|
708
|
-
*
|
|
709
|
-
* If any properties listed here are absent from the target resource, an error will be thrown.
|
|
710
|
-
*
|
|
711
|
-
* The returned object will always include the key `Identifier` with the CC-API returned
|
|
712
|
-
* field `Identifier`.
|
|
713
|
-
*
|
|
714
|
-
* ## Notes on property completeness
|
|
715
|
-
*
|
|
716
|
-
* CloudControl API's `ListResources` may return fewer properties than
|
|
717
|
-
* `GetResource` would, depending on the resource implementation.
|
|
718
|
-
*
|
|
719
|
-
* The returned properties here are *currently* selected from the response
|
|
720
|
-
* object that CloudControl API returns to the CDK CLI.
|
|
721
|
-
*
|
|
722
|
-
* However, if we find there is need to do so, we may decide to change this
|
|
723
|
-
* behavior in the future: we might change it to perform an additional
|
|
724
|
-
* `GetResource` call for resources matched by `propertyMatch`.
|
|
725
|
-
*/
|
|
726
|
-
readonly propertiesToReturn: string[];
|
|
727
|
-
/**
|
|
728
|
-
* Expected count of results if `propertyMatch` is specified.
|
|
729
|
-
*
|
|
730
|
-
* If the expected result count does not match the actual count,
|
|
731
|
-
* by default an error is produced and the result is not committed to cached
|
|
732
|
-
* context, and the user can correct the situation and try again without
|
|
733
|
-
* having to manually clear out the context key using `cdk context --remove`
|
|
734
|
-
*
|
|
735
|
-
* If the value of * `ignoreErrorOnMissingContext` is `true`, the value of
|
|
736
|
-
* `expectedMatchCount` is `at-least-one | exactly-one` and the number
|
|
737
|
-
* of found resources is 0, `dummyValue` is returned and committed to context
|
|
738
|
-
* instead.
|
|
739
|
-
*
|
|
740
|
-
* @default 'any'
|
|
741
|
-
*/
|
|
742
|
-
readonly expectedMatchCount?: "any" | "at-least-one" | "at-most-one" | "exactly-one";
|
|
743
|
-
/**
|
|
744
|
-
* The value to return if the resource was not found and `ignoreErrorOnMissingContext` is true.
|
|
745
|
-
*
|
|
746
|
-
* If supplied, `dummyValue` should be an array of objects.
|
|
747
|
-
*
|
|
748
|
-
* `dummyValue` does not have to have elements, and it may have objects with
|
|
749
|
-
* different properties than the properties in `propertiesToReturn`, but it
|
|
750
|
-
* will be easiest for downstream code if the `dummyValue` conforms to
|
|
751
|
-
* the expected response shape.
|
|
752
|
-
*
|
|
753
|
-
* @default - No dummy value available
|
|
754
|
-
*/
|
|
755
|
-
readonly dummyValue?: any;
|
|
756
|
-
/**
|
|
757
|
-
* Ignore an error and return the `dummyValue` instead if the resource was not found.
|
|
758
|
-
*
|
|
759
|
-
* - In case of an `exactIdentifier` lookup, return the `dummyValue` if the resource with
|
|
760
|
-
* that identifier was not found.
|
|
761
|
-
* - In case of a `propertyMatch` lookup, return the `dummyValue` if `expectedMatchCount`
|
|
762
|
-
* is `at-least-one | exactly-one` and the number of resources found was 0.
|
|
763
|
-
*
|
|
764
|
-
* if `ignoreErrorOnMissingContext` is set, `dummyValue` should be set and be an array.
|
|
765
|
-
*
|
|
766
|
-
* @default false
|
|
767
|
-
*/
|
|
768
|
-
readonly ignoreErrorOnMissingContext?: boolean;
|
|
769
|
-
}
|
|
770
|
-
interface PluginContextQuery {
|
|
771
|
-
/**
|
|
772
|
-
* The name of the plugin
|
|
773
|
-
*/
|
|
774
|
-
readonly pluginName: string;
|
|
775
|
-
/**
|
|
776
|
-
* Arbitrary other arguments for the plugin.
|
|
777
|
-
*
|
|
778
|
-
* This index signature is not usable in non-TypeScript/JavaScript languages.
|
|
779
|
-
*
|
|
780
|
-
* @jsii ignore
|
|
781
|
-
*/
|
|
782
|
-
[key: string]: any;
|
|
783
|
-
}
|
|
784
|
-
type ContextQueryProperties = AmiContextQuery | AvailabilityZonesContextQuery | HostedZoneContextQuery | SSMParameterContextQuery | VpcContextQuery | EndpointServiceAvailabilityZonesContextQuery | LoadBalancerContextQuery | LoadBalancerListenerContextQuery | SecurityGroupContextQuery | KeyContextQuery | CcApiContextQuery | PluginContextQuery;
|
|
785
|
-
declare enum ArtifactType {
|
|
786
|
-
/**
|
|
787
|
-
* Stub required because of JSII.
|
|
788
|
-
*/
|
|
789
|
-
NONE = "none",// required due to a jsii bug
|
|
790
|
-
/**
|
|
791
|
-
* The artifact is an AWS CloudFormation stack.
|
|
792
|
-
*/
|
|
793
|
-
AWS_CLOUDFORMATION_STACK = "aws:cloudformation:stack",
|
|
794
|
-
/**
|
|
795
|
-
* The artifact contains the CDK application's construct tree.
|
|
796
|
-
*/
|
|
797
|
-
CDK_TREE = "cdk:tree",
|
|
798
|
-
/**
|
|
799
|
-
* Manifest for all assets in the Cloud Assembly
|
|
800
|
-
*/
|
|
801
|
-
ASSET_MANIFEST = "cdk:asset-manifest",
|
|
802
|
-
/**
|
|
803
|
-
* Nested Cloud Assembly
|
|
804
|
-
*/
|
|
805
|
-
NESTED_CLOUD_ASSEMBLY = "cdk:cloud-assembly"
|
|
806
|
-
}
|
|
807
|
-
interface RuntimeInfo {
|
|
808
|
-
/**
|
|
809
|
-
* The list of libraries loaded in the application, associated with their versions.
|
|
810
|
-
*/
|
|
811
|
-
readonly libraries: {
|
|
812
|
-
[name: string]: string;
|
|
813
|
-
};
|
|
814
|
-
}
|
|
815
|
-
interface MissingContext {
|
|
816
|
-
/**
|
|
817
|
-
* The missing context key.
|
|
818
|
-
*/
|
|
819
|
-
readonly key: string;
|
|
820
|
-
/**
|
|
821
|
-
* The provider from which we expect this context key to be obtained.
|
|
822
|
-
*/
|
|
823
|
-
readonly provider: ContextProvider;
|
|
824
|
-
/**
|
|
825
|
-
* A set of provider-specific options.
|
|
826
|
-
*/
|
|
827
|
-
readonly props: ContextQueryProperties;
|
|
828
|
-
}
|
|
829
|
-
interface ArtifactManifest {
|
|
830
|
-
/**
|
|
831
|
-
* The type of artifact.
|
|
832
|
-
*/
|
|
833
|
-
readonly type: ArtifactType;
|
|
834
|
-
/**
|
|
835
|
-
* The environment into which this artifact is deployed.
|
|
836
|
-
*
|
|
837
|
-
* @default - no envrionment.
|
|
838
|
-
*/
|
|
839
|
-
readonly environment?: string;
|
|
840
|
-
/**
|
|
841
|
-
* Associated metadata.
|
|
842
|
-
*
|
|
843
|
-
* @default - no metadata.
|
|
844
|
-
*/
|
|
845
|
-
readonly metadata?: {
|
|
846
|
-
[path: string]: MetadataEntry[];
|
|
847
|
-
};
|
|
848
|
-
/**
|
|
849
|
-
* IDs of artifacts that must be deployed before this artifact.
|
|
850
|
-
*
|
|
851
|
-
* @default - no dependencies.
|
|
852
|
-
*/
|
|
853
|
-
readonly dependencies?: string[];
|
|
854
|
-
/**
|
|
855
|
-
* The set of properties for this artifact (depends on type)
|
|
856
|
-
*
|
|
857
|
-
* @default - no properties.
|
|
858
|
-
*/
|
|
859
|
-
readonly properties?: ArtifactProperties;
|
|
860
|
-
/**
|
|
861
|
-
* A string that can be shown to a user to uniquely identify this artifact inside a cloud assembly tree
|
|
862
|
-
*
|
|
863
|
-
* Is used by the CLI to present a list of stacks to the user in a way that
|
|
864
|
-
* makes sense to them. Even though the property name "display name" doesn't
|
|
865
|
-
* imply it, this field is used to select stacks as well, so all stacks should
|
|
866
|
-
* have a unique display name.
|
|
867
|
-
*
|
|
868
|
-
* @default - no display name
|
|
869
|
-
*/
|
|
870
|
-
readonly displayName?: string;
|
|
871
|
-
}
|
|
872
|
-
interface AssemblyManifest {
|
|
873
|
-
/**
|
|
874
|
-
* Protocol version
|
|
875
|
-
*/
|
|
876
|
-
readonly version: string;
|
|
877
|
-
/**
|
|
878
|
-
* Required CLI version, if available
|
|
879
|
-
*
|
|
880
|
-
* If the manifest producer knows, it can put the minimum version of the CLI
|
|
881
|
-
* here that supports reading this assembly.
|
|
882
|
-
*
|
|
883
|
-
* If set, it can be used to show a more informative error message to users.
|
|
884
|
-
*
|
|
885
|
-
* @default - Minimum CLI version unknown
|
|
886
|
-
*/
|
|
887
|
-
readonly minimumCliVersion?: string;
|
|
888
|
-
/**
|
|
889
|
-
* The set of artifacts in this assembly.
|
|
890
|
-
*
|
|
891
|
-
* @default - no artifacts.
|
|
892
|
-
*/
|
|
893
|
-
readonly artifacts?: {
|
|
894
|
-
[id: string]: ArtifactManifest;
|
|
895
|
-
};
|
|
896
|
-
/**
|
|
897
|
-
* Missing context information. If this field has values, it means that the
|
|
898
|
-
* cloud assembly is not complete and should not be deployed.
|
|
899
|
-
*
|
|
900
|
-
* @default - no missing context.
|
|
901
|
-
*/
|
|
902
|
-
readonly missing?: MissingContext[];
|
|
903
|
-
/**
|
|
904
|
-
* Runtime information.
|
|
905
|
-
*
|
|
906
|
-
* @default - no info.
|
|
907
|
-
*/
|
|
908
|
-
readonly runtime?: RuntimeInfo;
|
|
909
|
-
}
|
|
910
|
-
interface ICloudAssembly {
|
|
911
|
-
/**
|
|
912
|
-
* The directory of the cloud assembly.
|
|
913
|
-
*
|
|
914
|
-
* This directory will be used to read the Cloud Assembly from.
|
|
915
|
-
* Its contents (in particular `manifest.json`) must comply with the schema defined in this package.
|
|
916
|
-
*/
|
|
917
|
-
readonly directory: string;
|
|
918
|
-
}
|
|
919
|
-
interface LoadManifestOptions {
|
|
920
|
-
/**
|
|
921
|
-
* Skip the version check
|
|
922
|
-
*
|
|
923
|
-
* This means you may read a newer cloud assembly than the CX API is designed
|
|
924
|
-
* to support, and your application may not be aware of all features that in use
|
|
925
|
-
* in the Cloud Assembly.
|
|
926
|
-
*
|
|
927
|
-
* @default false
|
|
928
|
-
*/
|
|
929
|
-
readonly skipVersionCheck?: boolean;
|
|
930
|
-
/**
|
|
931
|
-
* Skip enum checks
|
|
932
|
-
*
|
|
933
|
-
* This means you may read enum values you don't know about yet. Make sure to always
|
|
934
|
-
* check the values of enums you encounter in the manifest.
|
|
935
|
-
*
|
|
936
|
-
* @default false
|
|
937
|
-
*/
|
|
938
|
-
readonly skipEnumCheck?: boolean;
|
|
939
|
-
/**
|
|
940
|
-
* Topologically sort all artifacts
|
|
941
|
-
*
|
|
942
|
-
* This parameter is only respected by the constructor of `CloudAssembly`. The
|
|
943
|
-
* property lives here for backwards compatibility reasons.
|
|
944
|
-
*
|
|
945
|
-
* @default true
|
|
946
|
-
*/
|
|
947
|
-
readonly topoSort?: boolean;
|
|
948
|
-
}
|
|
949
|
-
/**
|
|
950
|
-
* Represents a general toolkit error in the AWS CDK Toolkit.
|
|
951
|
-
*/
|
|
952
|
-
export declare class ToolkitError extends Error {
|
|
953
|
-
/**
|
|
954
|
-
* Determines if a given error is an instance of ToolkitError.
|
|
955
|
-
*/
|
|
956
|
-
static isToolkitError(x: any): x is ToolkitError;
|
|
957
|
-
/**
|
|
958
|
-
* Determines if a given error is an instance of AuthenticationError.
|
|
959
|
-
*/
|
|
960
|
-
static isAuthenticationError(x: any): x is AuthenticationError;
|
|
961
|
-
/**
|
|
962
|
-
* Determines if a given error is an instance of AssemblyError.
|
|
963
|
-
*/
|
|
964
|
-
static isAssemblyError(x: any): x is AssemblyError;
|
|
965
|
-
/**
|
|
966
|
-
* Determines if a given error is an instance of AssemblyError.
|
|
967
|
-
*/
|
|
968
|
-
static isContextProviderError(x: any): x is ContextProviderError;
|
|
969
|
-
/**
|
|
970
|
-
* An AssemblyError with an original error as cause
|
|
971
|
-
*/
|
|
972
|
-
static withCause(message: string, error: unknown): ToolkitError;
|
|
973
|
-
/**
|
|
974
|
-
* The type of the error, defaults to "toolkit".
|
|
975
|
-
*/
|
|
976
|
-
readonly type: string;
|
|
977
|
-
/**
|
|
978
|
-
* Denotes the source of the error as the toolkit.
|
|
979
|
-
*/
|
|
980
|
-
readonly source: "toolkit" | "user";
|
|
981
|
-
/**
|
|
982
|
-
* The specific original cause of the error, if available
|
|
983
|
-
*/
|
|
984
|
-
readonly cause?: unknown;
|
|
985
|
-
constructor(message: string, type?: string, cause?: unknown);
|
|
986
|
-
}
|
|
987
|
-
/**
|
|
988
|
-
* Represents an authentication-specific error in the AWS CDK Toolkit.
|
|
989
|
-
*/
|
|
990
|
-
export declare class AuthenticationError extends ToolkitError {
|
|
991
|
-
/**
|
|
992
|
-
* Denotes the source of the error as user.
|
|
993
|
-
*/
|
|
994
|
-
readonly source = "user";
|
|
995
|
-
constructor(message: string);
|
|
996
|
-
}
|
|
997
|
-
/**
|
|
998
|
-
* Represents an error causes by cloud assembly synthesis
|
|
999
|
-
*
|
|
1000
|
-
* This includes errors thrown during app execution, as well as failing annotations.
|
|
1001
|
-
*/
|
|
1002
|
-
export declare class AssemblyError extends ToolkitError {
|
|
1003
|
-
/**
|
|
1004
|
-
* An AssemblyError with an original error as cause
|
|
1005
|
-
*/
|
|
1006
|
-
static withCause(message: string, error: unknown): AssemblyError;
|
|
1007
|
-
/**
|
|
1008
|
-
* An AssemblyError with a list of stacks as cause
|
|
1009
|
-
*/
|
|
1010
|
-
static withStacks(message: string, stacks?: cxapi.CloudFormationStackArtifact[]): AssemblyError;
|
|
1011
|
-
/**
|
|
1012
|
-
* Denotes the source of the error as user.
|
|
1013
|
-
*/
|
|
1014
|
-
readonly source = "user";
|
|
1015
|
-
/**
|
|
1016
|
-
* The stacks that caused the error, if available
|
|
1017
|
-
*
|
|
1018
|
-
* The `messages` property of each `cxapi.CloudFormationStackArtifact` will contain the respective errors.
|
|
1019
|
-
* Absence indicates synthesis didn't fully complete.
|
|
1020
|
-
*/
|
|
1021
|
-
readonly stacks?: cxapi.CloudFormationStackArtifact[];
|
|
1022
|
-
private constructor();
|
|
1023
|
-
}
|
|
1024
|
-
declare class ContextProviderError extends ToolkitError {
|
|
1025
|
-
/**
|
|
1026
|
-
* Denotes the source of the error as user.
|
|
1027
|
-
*/
|
|
1028
|
-
readonly source = "user";
|
|
1029
|
-
constructor(message: string);
|
|
1030
|
-
}
|
|
1031
|
-
/**
|
|
1032
|
-
* Which stacks should be selected from a cloud assembly
|
|
1033
|
-
*/
|
|
1034
|
-
export declare enum StackSelectionStrategy {
|
|
1035
|
-
/**
|
|
1036
|
-
* Returns all stacks in the app regardless of patterns,
|
|
1037
|
-
* including stacks inside nested assemblies.
|
|
1038
|
-
*/
|
|
1039
|
-
ALL_STACKS = "all-stacks",
|
|
1040
|
-
/**
|
|
1041
|
-
* Returns all stacks in the main (top level) assembly only.
|
|
1042
|
-
*/
|
|
1043
|
-
MAIN_ASSEMBLY = "main-assembly",
|
|
1044
|
-
/**
|
|
1045
|
-
* If the assembly includes a single stack, returns it.
|
|
1046
|
-
* Otherwise throws an exception.
|
|
1047
|
-
*/
|
|
1048
|
-
ONLY_SINGLE = "only-single",
|
|
1049
|
-
/**
|
|
1050
|
-
* Return stacks matched by patterns.
|
|
1051
|
-
* If no stacks are found, execution is halted successfully.
|
|
1052
|
-
* Most likely you don't want to use this but `StackSelectionStrategy.MUST_MATCH_PATTERN`
|
|
1053
|
-
*/
|
|
1054
|
-
PATTERN_MATCH = "pattern-match",
|
|
1055
|
-
/**
|
|
1056
|
-
* Return stacks matched by patterns.
|
|
1057
|
-
* Throws an exception if the patterns don't match at least one stack in the assembly.
|
|
1058
|
-
*/
|
|
1059
|
-
PATTERN_MUST_MATCH = "pattern-must-match",
|
|
1060
|
-
/**
|
|
1061
|
-
* Returns if exactly one stack is matched by the pattern(s).
|
|
1062
|
-
* Throws an exception if no stack, or more than exactly one stack are matched.
|
|
1063
|
-
*/
|
|
1064
|
-
PATTERN_MUST_MATCH_SINGLE = "pattern-must-match-single"
|
|
1065
|
-
}
|
|
1066
|
-
/**
|
|
1067
|
-
* When selecting stacks, what other stacks to include because of dependencies
|
|
1068
|
-
*/
|
|
1069
|
-
export declare enum ExpandStackSelection {
|
|
1070
|
-
/**
|
|
1071
|
-
* Don't select any extra stacks
|
|
1072
|
-
*/
|
|
1073
|
-
NONE = "none",
|
|
1074
|
-
/**
|
|
1075
|
-
* Include stacks that this stack depends on
|
|
1076
|
-
*/
|
|
1077
|
-
UPSTREAM = "upstream",
|
|
1078
|
-
/**
|
|
1079
|
-
* Include stacks that depend on this stack
|
|
1080
|
-
*/
|
|
1081
|
-
DOWNSTREAM = "downstream"
|
|
1082
|
-
}
|
|
1083
|
-
/**
|
|
1084
|
-
* A specification of which stacks should be selected
|
|
1085
|
-
*/
|
|
1086
|
-
export interface StackSelector {
|
|
1087
|
-
/**
|
|
1088
|
-
* The behavior if if no selectors are provided.
|
|
1089
|
-
*/
|
|
1090
|
-
strategy: StackSelectionStrategy;
|
|
1091
|
-
/**
|
|
1092
|
-
* A list of patterns to match the stack hierarchical ids
|
|
1093
|
-
* Only used with `PATTERN_*` selection strategies.
|
|
1094
|
-
*/
|
|
1095
|
-
patterns?: string[];
|
|
1096
|
-
/**
|
|
1097
|
-
* Expand the selection to upstream/downstream stacks.
|
|
1098
|
-
* @default ExpandStackSelection.None only select the specified/matched stacks
|
|
1099
|
-
*/
|
|
1100
|
-
expand?: ExpandStackSelection;
|
|
1101
|
-
/**
|
|
1102
|
-
* By default, we throw an exception if the assembly contains no stacks.
|
|
1103
|
-
* Set to `false`, to halt execution for empty assemblies without error.
|
|
1104
|
-
*
|
|
1105
|
-
* Note that actions can still throw if a stack selection result is empty,
|
|
1106
|
-
* but the assembly contains stacks in principle.
|
|
1107
|
-
*
|
|
1108
|
-
* @default true
|
|
1109
|
-
*/
|
|
1110
|
-
failOnEmpty?: boolean;
|
|
1111
|
-
}
|
|
1112
|
-
/**
|
|
1113
|
-
* The current action being performed by the CLI. 'none' represents the absence of an action.
|
|
1114
|
-
*/
|
|
1115
|
-
export type ToolkitAction = "assembly" | "bootstrap" | "synth" | "list" | "diff" | "deploy" | "rollback" | "watch" | "destroy" | "doctor" | "gc" | "import" | "metadata" | "init" | "migrate" | "refactor";
|
|
1116
|
-
/**
|
|
1117
|
-
* The reporting level of the message.
|
|
1118
|
-
* All messages are always reported, it's up to the IoHost to decide what to log.
|
|
1119
|
-
*/
|
|
1120
|
-
export type IoMessageLevel = "error" | "result" | "warn" | "info" | "debug" | "trace";
|
|
1121
|
-
/**
|
|
1122
|
-
* A valid message code.
|
|
1123
|
-
*/
|
|
1124
|
-
export type IoMessageCode = `CDK_${string}_${"E" | "W" | "I"}${number}${number}${number}${number}`;
|
|
1125
|
-
/**
|
|
1126
|
-
* An IO message emitted.
|
|
1127
|
-
*/
|
|
1128
|
-
export interface IoMessage<T> {
|
|
1129
|
-
/**
|
|
1130
|
-
* The time the message was emitted.
|
|
1131
|
-
*/
|
|
1132
|
-
readonly time: Date;
|
|
1133
|
-
/**
|
|
1134
|
-
* The recommended log level of the message.
|
|
1135
|
-
*
|
|
1136
|
-
* This is an indicative level and should not be used to explicitly match messages, instead match the `code`.
|
|
1137
|
-
* The level of a message may change without notice.
|
|
1138
|
-
*/
|
|
1139
|
-
readonly level: IoMessageLevel;
|
|
1140
|
-
/**
|
|
1141
|
-
* The action that triggered the message.
|
|
1142
|
-
*/
|
|
1143
|
-
readonly action: ToolkitAction;
|
|
1144
|
-
/**
|
|
1145
|
-
* A short message code uniquely identifying a message type using the format CDK_[CATEGORY]_[E/W/I][0000-9999].
|
|
1146
|
-
*
|
|
1147
|
-
* The level indicator follows these rules:
|
|
1148
|
-
* - 'E' for error level messages
|
|
1149
|
-
* - 'W' for warning level messages
|
|
1150
|
-
* - 'I' for info/debug/trace level messages
|
|
1151
|
-
*
|
|
1152
|
-
* Codes ending in 000 0 are generic messages, while codes ending in 0001-9999 are specific to a particular message.
|
|
1153
|
-
* The following are examples of valid and invalid message codes:
|
|
1154
|
-
* ```ts
|
|
1155
|
-
* 'CDK_ASSETS_I0000' // valid: generic assets info message
|
|
1156
|
-
* 'CDK_TOOLKIT_E0002' // valid: specific toolkit error message
|
|
1157
|
-
* 'CDK_SDK_W0023' // valid: specific sdk warning message
|
|
1158
|
-
* ```
|
|
1159
|
-
*
|
|
1160
|
-
* @see https://github.com/aws/aws-cdk-cli/blob/main/packages/%40aws-cdk/toolkit-lib/CODE_REGISTRY.md
|
|
1161
|
-
*/
|
|
1162
|
-
readonly code: IoMessageCode;
|
|
1163
|
-
/**
|
|
1164
|
-
* The message text.
|
|
1165
|
-
* This is safe to print to an end-user.
|
|
1166
|
-
*/
|
|
1167
|
-
readonly message: string;
|
|
1168
|
-
/**
|
|
1169
|
-
* Identifies the message span, this message belongs to.
|
|
1170
|
-
*
|
|
1171
|
-
* A message span, groups multiple messages together that semantically related to the same operation.
|
|
1172
|
-
* This is an otherwise meaningless identifier.
|
|
1173
|
-
*
|
|
1174
|
-
* A message without a `spanId`, does not belong to a span.
|
|
1175
|
-
*/
|
|
1176
|
-
readonly span?: string;
|
|
1177
|
-
/**
|
|
1178
|
-
* The data attached to the message.
|
|
1179
|
-
*/
|
|
1180
|
-
readonly data: T;
|
|
1181
|
-
}
|
|
1182
|
-
/**
|
|
1183
|
-
* An IO request emitted.
|
|
1184
|
-
*/
|
|
1185
|
-
export interface IoRequest<T, U> extends IoMessage<T> {
|
|
1186
|
-
/**
|
|
1187
|
-
* The default response that will be used if no data is returned.
|
|
1188
|
-
*/
|
|
1189
|
-
readonly defaultResponse: U;
|
|
1190
|
-
}
|
|
1191
|
-
export interface IIoHost {
|
|
1192
|
-
/**
|
|
1193
|
-
* Notifies the host of a message.
|
|
1194
|
-
* The caller waits until the notification completes.
|
|
1195
|
-
*/
|
|
1196
|
-
notify(msg: IoMessage<unknown>): Promise<void>;
|
|
1197
|
-
/**
|
|
1198
|
-
* Notifies the host of a message that requires a response.
|
|
1199
|
-
*
|
|
1200
|
-
* If the host does not return a response the suggested
|
|
1201
|
-
* default response from the input message will be used.
|
|
1202
|
-
*/
|
|
1203
|
-
requestResponse<T, U>(msg: IoRequest<T, U>): Promise<U>;
|
|
1204
|
-
}
|
|
1205
|
-
type ForReading = 0;
|
|
1206
|
-
type ForWriting = 1;
|
|
1207
|
-
interface CredentialProviderSource {
|
|
1208
|
-
name: string;
|
|
1209
|
-
/**
|
|
1210
|
-
* Whether the credential provider is even online
|
|
1211
|
-
*
|
|
1212
|
-
* Guaranteed to be called before any of the other functions are called.
|
|
1213
|
-
*/
|
|
1214
|
-
isAvailable(): Promise<boolean>;
|
|
1215
|
-
/**
|
|
1216
|
-
* Whether the credential provider can provide credentials for the given account.
|
|
1217
|
-
*/
|
|
1218
|
-
canProvideCredentials(accountId: string): Promise<boolean>;
|
|
1219
|
-
/**
|
|
1220
|
-
* Construct a credential provider for the given account and the given access mode
|
|
1221
|
-
*
|
|
1222
|
-
* Guaranteed to be called only if canProvideCredentials() returned true at some point.
|
|
1223
|
-
*
|
|
1224
|
-
* While it is possible for the plugin to return a static set of credentials, it is
|
|
1225
|
-
* recommended to return a provider.
|
|
1226
|
-
*/
|
|
1227
|
-
getProvider(accountId: string, mode: ForReading | ForWriting, options?: PluginProviderOptions): Promise<PluginProviderResult>;
|
|
1228
|
-
}
|
|
1229
|
-
interface IPluginHost {
|
|
1230
|
-
/**
|
|
1231
|
-
* Registers a credential provider source. If, in the authentication process,
|
|
1232
|
-
* the CLI decides to try credentials from the plugins, it will go through the
|
|
1233
|
-
* sources registered in this way, in the same order as they were registered.
|
|
1234
|
-
*/
|
|
1235
|
-
registerCredentialProviderSource(source: CredentialProviderSource): void;
|
|
1236
|
-
}
|
|
1237
|
-
interface PluginProviderOptions {
|
|
1238
|
-
/**
|
|
1239
|
-
* Whether or not this implementation of the CLI will recognize the `SDKv3CompatibleCredentialProvider` return variant
|
|
1240
|
-
*
|
|
1241
|
-
* Unless otherwise indicated, the CLI version will only support SDKv3
|
|
1242
|
-
* credentials, not SDKv3 providers. You should avoid returning types that the
|
|
1243
|
-
* consuming CLI will not understand, because it will most likely crash.
|
|
1244
|
-
*
|
|
1245
|
-
* @default false
|
|
1246
|
-
*/
|
|
1247
|
-
readonly supportsV3Providers?: boolean;
|
|
1248
|
-
}
|
|
1249
|
-
type PluginProviderResult = SDKv2CompatibleCredentials | SDKv3CompatibleCredentialProvider | SDKv3CompatibleCredentials;
|
|
1250
|
-
interface SDKv2CompatibleCredentials {
|
|
1251
|
-
/**
|
|
1252
|
-
* AWS access key ID.
|
|
1253
|
-
*/
|
|
1254
|
-
accessKeyId: string;
|
|
1255
|
-
/**
|
|
1256
|
-
* Time when credentials should be considered expired.
|
|
1257
|
-
* Used in conjunction with expired.
|
|
1258
|
-
*/
|
|
1259
|
-
expireTime?: Date | null;
|
|
1260
|
-
/**
|
|
1261
|
-
* AWS secret access key.
|
|
1262
|
-
*/
|
|
1263
|
-
secretAccessKey: string;
|
|
1264
|
-
/**
|
|
1265
|
-
* AWS session token.
|
|
1266
|
-
*/
|
|
1267
|
-
sessionToken?: string;
|
|
1268
|
-
/**
|
|
1269
|
-
* Gets the existing credentials, refreshing them if necessary, and returns
|
|
1270
|
-
* a promise that will be fulfilled immediately (if no refresh is necessary)
|
|
1271
|
-
* or when the refresh has completed.
|
|
1272
|
-
*/
|
|
1273
|
-
getPromise(): Promise<void>;
|
|
1274
|
-
}
|
|
1275
|
-
type SDKv3CompatibleCredentialProvider = (identityProperties?: Record<string, any>) => Promise<SDKv3CompatibleCredentials>;
|
|
1276
|
-
interface SDKv3CompatibleCredentials {
|
|
1277
|
-
/**
|
|
1278
|
-
* AWS access key ID
|
|
1279
|
-
*/
|
|
1280
|
-
readonly accessKeyId: string;
|
|
1281
|
-
/**
|
|
1282
|
-
* AWS secret access key
|
|
1283
|
-
*/
|
|
1284
|
-
readonly secretAccessKey: string;
|
|
1285
|
-
/**
|
|
1286
|
-
* A security or session token to use with these credentials. Usually
|
|
1287
|
-
* present for temporary credentials.
|
|
1288
|
-
*/
|
|
1289
|
-
readonly sessionToken?: string;
|
|
1290
|
-
/**
|
|
1291
|
-
* A `Date` when the identity or credential will no longer be accepted.
|
|
1292
|
-
*/
|
|
1293
|
-
readonly expiration?: Date;
|
|
1294
|
-
}
|
|
1295
|
-
interface ContextProviderPlugin {
|
|
1296
|
-
getValue(args: {
|
|
1297
|
-
[key: string]: any;
|
|
1298
|
-
}): Promise<any>;
|
|
1299
|
-
}
|
|
1300
|
-
/**
|
|
1301
|
-
* Class to manage a plugin collection
|
|
1302
|
-
*
|
|
1303
|
-
* It provides a `load()` function that loads a JavaScript
|
|
1304
|
-
* module from disk, and gives it access to the `IPluginHost` interface
|
|
1305
|
-
* to register itself.
|
|
1306
|
-
*/
|
|
1307
|
-
export declare class PluginHost implements IPluginHost {
|
|
1308
|
-
/**
|
|
1309
|
-
* Access the currently registered CredentialProviderSources. New sources can
|
|
1310
|
-
* be registered using the +registerCredentialProviderSource+ method.
|
|
1311
|
-
*/
|
|
1312
|
-
readonly credentialProviderSources: CredentialProviderSource[];
|
|
1313
|
-
readonly contextProviderPlugins: Record<string, ContextProviderPlugin>;
|
|
1314
|
-
ioHost?: IIoHost;
|
|
1315
|
-
private readonly alreadyLoaded;
|
|
1316
|
-
/**
|
|
1317
|
-
* Loads a plug-in into this PluginHost.
|
|
1318
|
-
*
|
|
1319
|
-
* Will use `require.resolve()` to get the most accurate representation of what
|
|
1320
|
-
* code will get loaded in error messages. As such, it will not work in
|
|
1321
|
-
* unit tests with Jest virtual modules becauase of <https://github.com/jestjs/jest/issues/9543>.
|
|
1322
|
-
*
|
|
1323
|
-
* @param moduleSpec the specification (path or name) of the plug-in module to be loaded.
|
|
1324
|
-
* @param ioHost the I/O host to use for printing progress information
|
|
1325
|
-
*/
|
|
1326
|
-
load(moduleSpec: string, ioHost?: IIoHost): void;
|
|
1327
|
-
/**
|
|
1328
|
-
* Allows plug-ins to register new CredentialProviderSources.
|
|
1329
|
-
*
|
|
1330
|
-
* @param source a new CredentialProviderSource to register.
|
|
1331
|
-
*/
|
|
1332
|
-
registerCredentialProviderSource(source: CredentialProviderSource): void;
|
|
1333
|
-
/**
|
|
1334
|
-
* (EXPERIMENTAL) Allow plugins to register context providers
|
|
1335
|
-
*
|
|
1336
|
-
* Context providers are objects with the following method:
|
|
1337
|
-
*
|
|
1338
|
-
* ```ts
|
|
1339
|
-
* getValue(args: {[key: string]: any}): Promise<any>;
|
|
1340
|
-
* ```
|
|
1341
|
-
*
|
|
1342
|
-
* Currently, they cannot reuse the CDK's authentication mechanisms, so they
|
|
1343
|
-
* must be prepared to either not make AWS calls or use their own source of
|
|
1344
|
-
* AWS credentials.
|
|
1345
|
-
*
|
|
1346
|
-
* This feature is experimental, and only intended to be used internally at Amazon
|
|
1347
|
-
* as a trial.
|
|
1348
|
-
*
|
|
1349
|
-
* After registering with 'my-plugin-name', the provider must be addressed as follows:
|
|
1350
|
-
*
|
|
1351
|
-
* ```ts
|
|
1352
|
-
* const value = ContextProvider.getValue(this, {
|
|
1353
|
-
* providerName: 'plugin',
|
|
1354
|
-
* props: {
|
|
1355
|
-
* pluginName: 'my-plugin-name',
|
|
1356
|
-
* myParameter1: 'xyz',
|
|
1357
|
-
* },
|
|
1358
|
-
* includeEnvironment: true | false,
|
|
1359
|
-
* dummyValue: 'what-to-return-on-the-first-pass',
|
|
1360
|
-
* })
|
|
1361
|
-
* ```
|
|
1362
|
-
*
|
|
1363
|
-
* @experimental
|
|
1364
|
-
*/
|
|
1365
|
-
registerContextProviderAlpha(pluginProviderName: string, provider: ContextProviderPlugin): void;
|
|
1366
|
-
}
|
|
1367
|
-
export interface BootstrapEnvironmentProgress {
|
|
1368
|
-
/**
|
|
1369
|
-
* The total number of environments being deployed
|
|
1370
|
-
*/
|
|
1371
|
-
readonly total: number;
|
|
1372
|
-
/**
|
|
1373
|
-
* The count of the environment currently bootstrapped
|
|
1374
|
-
*
|
|
1375
|
-
* This is counting value, not an identifier.
|
|
1376
|
-
*/
|
|
1377
|
-
readonly current: number;
|
|
1378
|
-
/**
|
|
1379
|
-
* The environment that's currently being bootstrapped
|
|
1380
|
-
*/
|
|
1381
|
-
readonly environment: cxapi.Environment;
|
|
1382
|
-
}
|
|
1383
|
-
interface IManifestEntry {
|
|
1384
|
-
/**
|
|
1385
|
-
* The identifier of the asset and its destination
|
|
1386
|
-
*/
|
|
1387
|
-
readonly id: DestinationIdentifier;
|
|
1388
|
-
/**
|
|
1389
|
-
* The type of asset
|
|
1390
|
-
*/
|
|
1391
|
-
readonly type: string;
|
|
1392
|
-
/**
|
|
1393
|
-
* Type-dependent source data
|
|
1394
|
-
*/
|
|
1395
|
-
readonly genericSource: unknown;
|
|
1396
|
-
/**
|
|
1397
|
-
* Type-dependent destination data
|
|
1398
|
-
*/
|
|
1399
|
-
readonly genericDestination: unknown;
|
|
1400
|
-
/**
|
|
1401
|
-
* Return a display name for this asset
|
|
1402
|
-
*
|
|
1403
|
-
* The `includeDestination` parameter controls whether or not to include the
|
|
1404
|
-
* destination ID in the display name.
|
|
1405
|
-
*
|
|
1406
|
-
* - Pass `false` if you are displaying notifications about building the
|
|
1407
|
-
* asset, or if you are describing the work of building the asset and publishing
|
|
1408
|
-
* to all destinations at the same time.
|
|
1409
|
-
* - Pass `true` if you are displaying notifications about publishing to a
|
|
1410
|
-
* specific destination.
|
|
1411
|
-
*/
|
|
1412
|
-
displayName(includeDestination: boolean): string;
|
|
1413
|
-
}
|
|
1414
|
-
declare class DestinationIdentifier {
|
|
1415
|
-
/**
|
|
1416
|
-
* Identifies the asset, by source.
|
|
1417
|
-
*
|
|
1418
|
-
* The assetId will be the same between assets that represent
|
|
1419
|
-
* the same physical file or image.
|
|
1420
|
-
*/
|
|
1421
|
-
readonly assetId: string;
|
|
1422
|
-
/**
|
|
1423
|
-
* Identifies the destination where this asset will be published
|
|
1424
|
-
*/
|
|
1425
|
-
readonly destinationId: string;
|
|
1426
|
-
constructor(assetId: string, destinationId: string);
|
|
1427
|
-
/**
|
|
1428
|
-
* Return a string representation for this asset identifier
|
|
1429
|
-
*/
|
|
1430
|
-
toString(): string;
|
|
1431
|
-
}
|
|
1432
|
-
/**
|
|
1433
|
-
* Assembly data returned in the payload of an IO Message.
|
|
1434
|
-
*/
|
|
1435
|
-
export interface AssemblyData {
|
|
1436
|
-
/**
|
|
1437
|
-
* The path to the assembly directory
|
|
1438
|
-
*/
|
|
1439
|
-
readonly assemblyDirectory: string;
|
|
1440
|
-
/**
|
|
1441
|
-
* The number of stacks actioned on
|
|
1442
|
-
*/
|
|
1443
|
-
readonly stacksCount: number;
|
|
1444
|
-
/**
|
|
1445
|
-
* The stack IDs
|
|
1446
|
-
*/
|
|
1447
|
-
readonly stackIds: string[];
|
|
1448
|
-
}
|
|
1449
|
-
/**
|
|
1450
|
-
* Stack data returned in the payload of an IO Message.
|
|
1451
|
-
*/
|
|
1452
|
-
export interface StackData {
|
|
1453
|
-
/**
|
|
1454
|
-
* The stack name
|
|
1455
|
-
*/
|
|
1456
|
-
readonly stackName: string;
|
|
1457
|
-
/**
|
|
1458
|
-
* The stack ID
|
|
1459
|
-
*/
|
|
1460
|
-
readonly hierarchicalId: string;
|
|
1461
|
-
/**
|
|
1462
|
-
* The stack template
|
|
1463
|
-
*/
|
|
1464
|
-
readonly template: any;
|
|
1465
|
-
/**
|
|
1466
|
-
* The stack template converted to JSON format
|
|
1467
|
-
*/
|
|
1468
|
-
readonly stringifiedJson: string;
|
|
1469
|
-
/**
|
|
1470
|
-
* The stack template converted to YAML format
|
|
1471
|
-
*/
|
|
1472
|
-
readonly stringifiedYaml: string;
|
|
1473
|
-
}
|
|
1474
|
-
/**
|
|
1475
|
-
* Stack data returned in the payload of an IO Message.
|
|
1476
|
-
*/
|
|
1477
|
-
export interface StackAndAssemblyData extends AssemblyData {
|
|
1478
|
-
/**
|
|
1479
|
-
* Stack Data
|
|
1480
|
-
*/
|
|
1481
|
-
readonly stack: StackData;
|
|
1482
|
-
}
|
|
1483
|
-
/**
|
|
1484
|
-
* Duration information returned in the payload of an IO Message.
|
|
1485
|
-
*/
|
|
1486
|
-
export interface Duration {
|
|
1487
|
-
/**
|
|
1488
|
-
* The duration of the action.
|
|
1489
|
-
*/
|
|
1490
|
-
readonly duration: number;
|
|
1491
|
-
}
|
|
1492
|
-
/**
|
|
1493
|
-
* Generic payload of error IoMessages that pass on an instance of `Error`
|
|
1494
|
-
*/
|
|
1495
|
-
export interface ErrorPayload {
|
|
1496
|
-
/**
|
|
1497
|
-
* The error that occurred
|
|
1498
|
-
*/
|
|
1499
|
-
readonly error: Error;
|
|
1500
|
-
}
|
|
1501
|
-
/**
|
|
1502
|
-
* Generic payload of a simple yes/no question.
|
|
1503
|
-
*
|
|
1504
|
-
* The expectation is that 'yes' means moving on,
|
|
1505
|
-
* and 'no' means aborting the current action.
|
|
1506
|
-
*/
|
|
1507
|
-
export interface ConfirmationRequest {
|
|
1508
|
-
/**
|
|
1509
|
-
* Some additional motivation for the confirmation that may be used as context for the user.
|
|
1510
|
-
*/
|
|
1511
|
-
readonly motivation: string;
|
|
1512
|
-
/**
|
|
1513
|
-
* Number of on-going concurrent operations
|
|
1514
|
-
* If more than one operations is on-going, a client might decide that asking the user
|
|
1515
|
-
* for input is too complex, as the confirmation might not easily be attributed to a specific request.
|
|
1516
|
-
*
|
|
1517
|
-
* @default - no concurrency
|
|
1518
|
-
*/
|
|
1519
|
-
readonly concurrency?: number;
|
|
1520
|
-
}
|
|
1521
|
-
export interface ContextProviderMessageSource {
|
|
1522
|
-
/**
|
|
1523
|
-
* The name of the context provider sending the message
|
|
1524
|
-
*/
|
|
1525
|
-
readonly provider: string;
|
|
1526
|
-
}
|
|
1527
|
-
/**
|
|
1528
|
-
* Different types of permission related changes in a diff
|
|
1529
|
-
*/
|
|
1530
|
-
export declare enum PermissionChangeType {
|
|
1531
|
-
/**
|
|
1532
|
-
* No permission changes
|
|
1533
|
-
*/
|
|
1534
|
-
NONE = "none",
|
|
1535
|
-
/**
|
|
1536
|
-
* Permissions are broadening
|
|
1537
|
-
*/
|
|
1538
|
-
BROADENING = "broadening",
|
|
1539
|
-
/**
|
|
1540
|
-
* Permissions are changed but not broadening
|
|
1541
|
-
*/
|
|
1542
|
-
NON_BROADENING = "non-broadening"
|
|
1543
|
-
}
|
|
1544
|
-
/**
|
|
1545
|
-
* Output of the diff command
|
|
1546
|
-
*/
|
|
1547
|
-
export interface DiffResult extends Duration {
|
|
1548
|
-
/**
|
|
1549
|
-
* Stack diff formatted as a string
|
|
1550
|
-
*/
|
|
1551
|
-
readonly formattedStackDiff: string;
|
|
1552
|
-
/**
|
|
1553
|
-
* Security diff formatted as a string
|
|
1554
|
-
*/
|
|
1555
|
-
readonly formattedSecurityDiff: string;
|
|
1556
|
-
}
|
|
1557
|
-
export type DeployStackResult = SuccessfulDeployStackResult | NeedRollbackFirstDeployStackResult | ReplacementRequiresRollbackStackResult;
|
|
1558
|
-
/** Successfully deployed a stack */
|
|
1559
|
-
export interface SuccessfulDeployStackResult {
|
|
1560
|
-
readonly type: "did-deploy-stack";
|
|
1561
|
-
readonly noOp: boolean;
|
|
1562
|
-
readonly outputs: {
|
|
1563
|
-
[name: string]: string;
|
|
1564
|
-
};
|
|
1565
|
-
readonly stackArn: string;
|
|
1566
|
-
}
|
|
1567
|
-
/** The stack is currently in a failpaused state, and needs to be rolled back before the deployment */
|
|
1568
|
-
export interface NeedRollbackFirstDeployStackResult {
|
|
1569
|
-
readonly type: "failpaused-need-rollback-first";
|
|
1570
|
-
readonly reason: "not-norollback" | "replacement";
|
|
1571
|
-
readonly status: string;
|
|
1572
|
-
}
|
|
1573
|
-
/** The upcoming change has a replacement, which requires deploying with --rollback */
|
|
1574
|
-
export interface ReplacementRequiresRollbackStackResult {
|
|
1575
|
-
readonly type: "replacement-requires-rollback";
|
|
1576
|
-
}
|
|
1577
|
-
export interface StackDeployProgress {
|
|
1578
|
-
/**
|
|
1579
|
-
* The total number of stacks being deployed
|
|
1580
|
-
*/
|
|
1581
|
-
readonly total: number;
|
|
1582
|
-
/**
|
|
1583
|
-
* The count of the stack currently attempted to be deployed
|
|
1584
|
-
*
|
|
1585
|
-
* This is counting value, not an identifier.
|
|
1586
|
-
*/
|
|
1587
|
-
readonly current: number;
|
|
1588
|
-
/**
|
|
1589
|
-
* The stack that's currently being deployed
|
|
1590
|
-
*/
|
|
1591
|
-
readonly stack: CloudFormationStackArtifact;
|
|
1592
|
-
}
|
|
1593
|
-
/**
|
|
1594
|
-
* Payload for a yes/no confirmation in deploy. Includes information on
|
|
1595
|
-
* what kind of change is being made.
|
|
1596
|
-
*/
|
|
1597
|
-
export interface DeployConfirmationRequest extends ConfirmationRequest {
|
|
1598
|
-
/**
|
|
1599
|
-
* The type of change being made to the IAM permissions.
|
|
1600
|
-
*/
|
|
1601
|
-
readonly permissionChangeType: PermissionChangeType;
|
|
1602
|
-
}
|
|
1603
|
-
export interface StackDeployProgress {
|
|
1604
|
-
/**
|
|
1605
|
-
* The total number of stacks being deployed
|
|
1606
|
-
*/
|
|
1607
|
-
readonly total: number;
|
|
1608
|
-
/**
|
|
1609
|
-
* The count of the stack currently attempted to be deployed
|
|
1610
|
-
*
|
|
1611
|
-
* This is counting value, not an identifier.
|
|
1612
|
-
*/
|
|
1613
|
-
readonly current: number;
|
|
1614
|
-
/**
|
|
1615
|
-
* The stack that's currently being deployed
|
|
1616
|
-
*/
|
|
1617
|
-
readonly stack: CloudFormationStackArtifact;
|
|
1618
|
-
}
|
|
1619
|
-
/**
|
|
1620
|
-
* Payload for a yes/no confirmation in deploy. Includes information on
|
|
1621
|
-
* what kind of change is being made.
|
|
1622
|
-
*/
|
|
1623
|
-
export interface DeployConfirmationRequest extends ConfirmationRequest {
|
|
1624
|
-
/**
|
|
1625
|
-
* The type of change being made to the IAM permissions.
|
|
1626
|
-
*/
|
|
1627
|
-
readonly permissionChangeType: PermissionChangeType;
|
|
1628
|
-
}
|
|
1629
|
-
export interface BuildAsset {
|
|
1630
|
-
/**
|
|
1631
|
-
* The asset that is build
|
|
1632
|
-
*/
|
|
1633
|
-
readonly asset: IManifestEntry;
|
|
1634
|
-
}
|
|
1635
|
-
export interface PublishAsset {
|
|
1636
|
-
/**
|
|
1637
|
-
* The asset that is published
|
|
1638
|
-
*/
|
|
1639
|
-
readonly asset: IManifestEntry;
|
|
1640
|
-
}
|
|
1641
|
-
export interface StackDestroy {
|
|
1642
|
-
/**
|
|
1643
|
-
* The stacks that will be destroyed
|
|
1644
|
-
*/
|
|
1645
|
-
readonly stacks: CloudFormationStackArtifact[];
|
|
1646
|
-
}
|
|
1647
|
-
export interface StackDestroyProgress {
|
|
1648
|
-
/**
|
|
1649
|
-
* The total number of stacks being destroyed
|
|
1650
|
-
*/
|
|
1651
|
-
readonly total: number;
|
|
1652
|
-
/**
|
|
1653
|
-
* The count of the stack currently attempted to be destroyed
|
|
1654
|
-
*
|
|
1655
|
-
* This is counting value, not an identifier.
|
|
1656
|
-
*/
|
|
1657
|
-
readonly current: number;
|
|
1658
|
-
/**
|
|
1659
|
-
* The stack that's currently being destroyed
|
|
1660
|
-
*/
|
|
1661
|
-
readonly stack: CloudFormationStackArtifact;
|
|
1662
|
-
}
|
|
1663
|
-
/**
|
|
1664
|
-
* The dependencies of a stack.
|
|
1665
|
-
*/
|
|
1666
|
-
export interface StackDependency {
|
|
1667
|
-
id: string;
|
|
1668
|
-
dependencies: StackDependency[];
|
|
1669
|
-
}
|
|
1670
|
-
/**
|
|
1671
|
-
* Details of a stack.
|
|
1672
|
-
*/
|
|
1673
|
-
export interface StackDetails {
|
|
1674
|
-
id: string;
|
|
1675
|
-
name: string;
|
|
1676
|
-
environment: cxapi.Environment;
|
|
1677
|
-
dependencies: StackDependency[];
|
|
1678
|
-
}
|
|
1679
|
-
export interface StackDetailsPayload {
|
|
1680
|
-
readonly stacks: StackDetails[];
|
|
1681
|
-
}
|
|
1682
|
-
/**
|
|
1683
|
-
* An SDK logging trace.
|
|
1684
|
-
*
|
|
1685
|
-
* Only info, warn and error level messages are emitted.
|
|
1686
|
-
* SDK traces are emitted as traces to the IoHost, but contain the original SDK logging level.
|
|
1687
|
-
*/
|
|
1688
|
-
export interface SdkTrace {
|
|
1689
|
-
/**
|
|
1690
|
-
* The level the SDK has emitted the original message with
|
|
1691
|
-
*/
|
|
1692
|
-
readonly sdkLevel: "info" | "warn" | "error";
|
|
1693
|
-
/**
|
|
1694
|
-
* The content of the SDK trace
|
|
1695
|
-
*
|
|
1696
|
-
* This will include the request and response data for API calls, including potentially sensitive information.
|
|
1697
|
-
*
|
|
1698
|
-
* @see https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/logging-sdk-calls.html
|
|
1699
|
-
*/
|
|
1700
|
-
readonly content: any;
|
|
1701
|
-
}
|
|
1702
|
-
interface MissingContext$1 {
|
|
1703
|
-
missingKeys: string[];
|
|
1704
|
-
}
|
|
1705
|
-
export interface UpdatedContext {
|
|
1706
|
-
contextFile: string;
|
|
1707
|
-
context: {
|
|
1708
|
-
[key: string]: any;
|
|
1709
|
-
};
|
|
1710
|
-
}
|
|
1711
|
-
export interface StackRollbackProgress {
|
|
1712
|
-
/**
|
|
1713
|
-
* The total number of stacks being rolled back
|
|
1714
|
-
*/
|
|
1715
|
-
readonly total: number;
|
|
1716
|
-
/**
|
|
1717
|
-
* The count of the stack currently attempted to be rolled back
|
|
1718
|
-
*
|
|
1719
|
-
* This is counting value, not an identifier.
|
|
1720
|
-
*/
|
|
1721
|
-
readonly current: number;
|
|
1722
|
-
/**
|
|
1723
|
-
* The stack that's currently being rolled back
|
|
1724
|
-
*/
|
|
1725
|
-
readonly stack: CloudFormationStackArtifact;
|
|
1726
|
-
}
|
|
1727
|
-
export interface StackProgress {
|
|
1728
|
-
/**
|
|
1729
|
-
* The total number of progress monitored resources.
|
|
1730
|
-
*/
|
|
1731
|
-
readonly total?: number;
|
|
1732
|
-
/**
|
|
1733
|
-
* The number of completed resources.
|
|
1734
|
-
*/
|
|
1735
|
-
readonly completed: number;
|
|
1736
|
-
/**
|
|
1737
|
-
* The current progress as a [34/42] string, or just [34] if the total is unknown.
|
|
1738
|
-
*/
|
|
1739
|
-
readonly formatted: string;
|
|
1740
|
-
}
|
|
1741
|
-
interface ResourceMetadata {
|
|
1742
|
-
/**
|
|
1743
|
-
* The resource's metadata as declared in the cloud assembly
|
|
1744
|
-
*/
|
|
1745
|
-
readonly entry: MetadataEntry;
|
|
1746
|
-
/**
|
|
1747
|
-
* The construct path of the resource
|
|
1748
|
-
*/
|
|
1749
|
-
readonly constructPath: string;
|
|
1750
|
-
}
|
|
1751
|
-
/**
|
|
1752
|
-
* Payload when stack monitoring is starting or stopping for a given stack deployment.
|
|
1753
|
-
*/
|
|
1754
|
-
export interface StackMonitoringControlEvent {
|
|
1755
|
-
/**
|
|
1756
|
-
* A unique identifier for a specific stack deployment.
|
|
1757
|
-
*
|
|
1758
|
-
* Use this value to attribute stack activities received for concurrent deployments.
|
|
1759
|
-
*/
|
|
1760
|
-
readonly deployment: string;
|
|
1761
|
-
/**
|
|
1762
|
-
* The stack artifact that is getting deployed
|
|
1763
|
-
*/
|
|
1764
|
-
readonly stack: CloudFormationStackArtifact;
|
|
1765
|
-
/**
|
|
1766
|
-
* The name of the Stack that is getting deployed
|
|
1767
|
-
*/
|
|
1768
|
-
readonly stackName: string;
|
|
1769
|
-
/**
|
|
1770
|
-
* Total number of resources taking part in this deployment
|
|
1771
|
-
*
|
|
1772
|
-
* The number might not always be known or accurate.
|
|
1773
|
-
* Only use for informational purposes and handle the case when it's unavailable.
|
|
1774
|
-
*/
|
|
1775
|
-
readonly resourcesTotal?: number;
|
|
1776
|
-
}
|
|
1777
|
-
export interface StackActivity {
|
|
1778
|
-
/**
|
|
1779
|
-
* A unique identifier for a specific stack deployment.
|
|
1780
|
-
*
|
|
1781
|
-
* Use this value to attribute stack activities received for concurrent deployments.
|
|
1782
|
-
*/
|
|
1783
|
-
readonly deployment: string;
|
|
1784
|
-
/**
|
|
1785
|
-
* The Stack Event as received from CloudFormation
|
|
1786
|
-
*/
|
|
1787
|
-
readonly event: StackEvent;
|
|
1788
|
-
/**
|
|
1789
|
-
* Additional resource metadata
|
|
1790
|
-
*
|
|
1791
|
-
* This information is only available if the information is available in the current cloud assembly.
|
|
1792
|
-
* I.e. no `metadata` will not be available for resource deletion events.
|
|
1793
|
-
*/
|
|
1794
|
-
readonly metadata?: ResourceMetadata;
|
|
1795
|
-
/**
|
|
1796
|
-
* The stack progress
|
|
1797
|
-
*/
|
|
1798
|
-
readonly progress: StackProgress;
|
|
1799
|
-
}
|
|
1800
|
-
export interface StackSelectionDetails {
|
|
1801
|
-
/**
|
|
1802
|
-
* The selected stacks, if any
|
|
1803
|
-
*/
|
|
1804
|
-
readonly stacks: StackSelector;
|
|
1805
|
-
}
|
|
1806
|
-
interface IDifference<ValueType> {
|
|
1807
|
-
readonly oldValue: ValueType | undefined;
|
|
1808
|
-
readonly newValue: ValueType | undefined;
|
|
1809
|
-
readonly isDifferent: boolean;
|
|
1810
|
-
readonly isAddition: boolean;
|
|
1811
|
-
readonly isRemoval: boolean;
|
|
1812
|
-
readonly isUpdate: boolean;
|
|
1813
|
-
}
|
|
1814
|
-
declare class Difference<ValueType> implements IDifference<ValueType> {
|
|
1815
|
-
readonly oldValue: ValueType | undefined;
|
|
1816
|
-
readonly newValue: ValueType | undefined;
|
|
1817
|
-
/**
|
|
1818
|
-
* Whether this is an actual different or the values are actually the same
|
|
1819
|
-
*
|
|
1820
|
-
* isDifferent => (isUpdate | isRemoved | isUpdate)
|
|
1821
|
-
*/
|
|
1822
|
-
isDifferent: boolean;
|
|
1823
|
-
/**
|
|
1824
|
-
* @param oldValue the old value, cannot be equal (to the sense of +deepEqual+) to +newValue+.
|
|
1825
|
-
* @param newValue the new value, cannot be equal (to the sense of +deepEqual+) to +oldValue+.
|
|
1826
|
-
*/
|
|
1827
|
-
constructor(oldValue: ValueType | undefined, newValue: ValueType | undefined);
|
|
1828
|
-
/** @returns +true+ if the element is new to the template. */
|
|
1829
|
-
get isAddition(): boolean;
|
|
1830
|
-
/** @returns +true+ if the element was removed from the template. */
|
|
1831
|
-
get isRemoval(): boolean;
|
|
1832
|
-
/** @returns +true+ if the element was already in the template and is updated. */
|
|
1833
|
-
get isUpdate(): boolean;
|
|
1834
|
-
}
|
|
1835
|
-
declare class PropertyDifference<ValueType> extends Difference<ValueType> {
|
|
1836
|
-
changeImpact?: ResourceImpact;
|
|
1837
|
-
constructor(oldValue: ValueType | undefined, newValue: ValueType | undefined, args: {
|
|
1838
|
-
changeImpact?: ResourceImpact;
|
|
1839
|
-
});
|
|
1840
|
-
}
|
|
1841
|
-
declare enum ResourceImpact {
|
|
1842
|
-
/** The existing physical resource will be updated */
|
|
1843
|
-
WILL_UPDATE = "WILL_UPDATE",
|
|
1844
|
-
/** A new physical resource will be created */
|
|
1845
|
-
WILL_CREATE = "WILL_CREATE",
|
|
1846
|
-
/** The existing physical resource will be replaced */
|
|
1847
|
-
WILL_REPLACE = "WILL_REPLACE",
|
|
1848
|
-
/** The existing physical resource may be replaced */
|
|
1849
|
-
MAY_REPLACE = "MAY_REPLACE",
|
|
1850
|
-
/** The existing physical resource will be destroyed */
|
|
1851
|
-
WILL_DESTROY = "WILL_DESTROY",
|
|
1852
|
-
/** The existing physical resource will be removed from CloudFormation supervision */
|
|
1853
|
-
WILL_ORPHAN = "WILL_ORPHAN",
|
|
1854
|
-
/** The existing physical resource will be added to CloudFormation supervision */
|
|
1855
|
-
WILL_IMPORT = "WILL_IMPORT",
|
|
1856
|
-
/** There is no change in this resource */
|
|
1857
|
-
NO_CHANGE = "NO_CHANGE"
|
|
1858
|
-
}
|
|
1859
|
-
interface Resource {
|
|
1860
|
-
Type: string;
|
|
1861
|
-
Properties?: {
|
|
1862
|
-
[name: string]: any;
|
|
1863
|
-
};
|
|
1864
|
-
[key: string]: any;
|
|
1865
|
-
}
|
|
1866
|
-
interface TypedMapping {
|
|
1867
|
-
readonly type: string;
|
|
1868
|
-
readonly sourcePath: string;
|
|
1869
|
-
readonly destinationPath: string;
|
|
1870
|
-
}
|
|
1871
|
-
/**
|
|
1872
|
-
* Output of the refactor command
|
|
1873
|
-
*/
|
|
1874
|
-
export interface RefactorResult {
|
|
1875
|
-
/**
|
|
1876
|
-
* Mappings along with the resource type
|
|
1877
|
-
*/
|
|
1878
|
-
readonly typedMappings?: TypedMapping[];
|
|
1879
|
-
/**
|
|
1880
|
-
* Ambiguous path correspondences, if any
|
|
1881
|
-
*/
|
|
1882
|
-
readonly ambiguousPaths?: [
|
|
1883
|
-
string[],
|
|
1884
|
-
string[]
|
|
1885
|
-
][];
|
|
1886
|
-
}
|
|
1887
|
-
/**
|
|
1888
|
-
* The computed file watch settings
|
|
1889
|
-
*/
|
|
1890
|
-
export interface WatchSettings {
|
|
1891
|
-
/**
|
|
1892
|
-
* The directory observed for file changes
|
|
1893
|
-
*/
|
|
1894
|
-
readonly watchDir: string;
|
|
1895
|
-
/**
|
|
1896
|
-
* List of include patterns for watching files
|
|
1897
|
-
*/
|
|
1898
|
-
readonly includes: string[];
|
|
1899
|
-
/**
|
|
1900
|
-
* List of excludes patterns for watching files
|
|
1901
|
-
*/
|
|
1902
|
-
readonly excludes: string[];
|
|
1903
|
-
}
|
|
1904
|
-
export interface FileWatchEvent {
|
|
1905
|
-
/**
|
|
1906
|
-
* The change to the path
|
|
1907
|
-
*/
|
|
1908
|
-
readonly event: string;
|
|
1909
|
-
/**
|
|
1910
|
-
* The path that has an observed event
|
|
1911
|
-
*/
|
|
1912
|
-
readonly path?: string;
|
|
1913
|
-
}
|
|
1914
|
-
/**
|
|
1915
|
-
* Payload when stack monitoring is starting or stopping for a given stack deployment.
|
|
1916
|
-
*/
|
|
1917
|
-
export interface CloudWatchLogMonitorControlEvent {
|
|
1918
|
-
/**
|
|
1919
|
-
* A unique identifier for a monitor
|
|
1920
|
-
*
|
|
1921
|
-
* Use this value to attribute events received for concurrent log monitoring.
|
|
1922
|
-
*/
|
|
1923
|
-
readonly monitor: string;
|
|
1924
|
-
/**
|
|
1925
|
-
* The names of monitored log groups
|
|
1926
|
-
*/
|
|
1927
|
-
readonly logGroupNames: string[];
|
|
1928
|
-
}
|
|
1929
|
-
/**
|
|
1930
|
-
* Represents a CloudWatch Log Event that will be
|
|
1931
|
-
* printed to the terminal
|
|
1932
|
-
*/
|
|
1933
|
-
export interface CloudWatchLogEvent {
|
|
1934
|
-
/**
|
|
1935
|
-
* The log event message
|
|
1936
|
-
*/
|
|
1937
|
-
readonly message: string;
|
|
1938
|
-
/**
|
|
1939
|
-
* The name of the log group
|
|
1940
|
-
*/
|
|
1941
|
-
readonly logGroupName: string;
|
|
1942
|
-
/**
|
|
1943
|
-
* The time at which the event occurred
|
|
1944
|
-
*/
|
|
1945
|
-
readonly timestamp: Date;
|
|
1946
|
-
}
|
|
1947
|
-
/**
|
|
1948
|
-
* A resource affected by a change
|
|
1949
|
-
*/
|
|
1950
|
-
export interface AffectedResource {
|
|
1951
|
-
/**
|
|
1952
|
-
* The logical ID of the affected resource in the template
|
|
1953
|
-
*/
|
|
1954
|
-
readonly logicalId: string;
|
|
1955
|
-
/**
|
|
1956
|
-
* The CloudFormation type of the resource
|
|
1957
|
-
* This could be a custom type.
|
|
1958
|
-
*/
|
|
1959
|
-
readonly resourceType: string;
|
|
1960
|
-
/**
|
|
1961
|
-
* The friendly description of the affected resource
|
|
1962
|
-
*/
|
|
1963
|
-
readonly description?: string;
|
|
1964
|
-
/**
|
|
1965
|
-
* The physical name of the resource when deployed.
|
|
1966
|
-
*
|
|
1967
|
-
* A physical name is not always available, e.g. new resources will not have one until after the deployment
|
|
1968
|
-
*/
|
|
1969
|
-
readonly physicalName?: string;
|
|
1970
|
-
/**
|
|
1971
|
-
* Resource metadata attached to the logical id from the cloud assembly
|
|
1972
|
-
*
|
|
1973
|
-
* This is only present if the resource is present in the current Cloud Assembly,
|
|
1974
|
-
* i.e. resource deletions will not have metadata.
|
|
1975
|
-
*/
|
|
1976
|
-
readonly metadata?: ResourceMetadata;
|
|
1977
|
-
}
|
|
1978
|
-
/**
|
|
1979
|
-
* Represents a change in a resource
|
|
1980
|
-
*/
|
|
1981
|
-
export interface ResourceChange {
|
|
1982
|
-
/**
|
|
1983
|
-
* The logical ID of the resource which is being changed
|
|
1984
|
-
*/
|
|
1985
|
-
readonly logicalId: string;
|
|
1986
|
-
/**
|
|
1987
|
-
* The value the resource is being updated from
|
|
1988
|
-
*/
|
|
1989
|
-
readonly oldValue: Resource;
|
|
1990
|
-
/**
|
|
1991
|
-
* The value the resource is being updated to
|
|
1992
|
-
*/
|
|
1993
|
-
readonly newValue: Resource;
|
|
1994
|
-
/**
|
|
1995
|
-
* The changes made to the resource properties
|
|
1996
|
-
*/
|
|
1997
|
-
readonly propertyUpdates: Record<string, PropertyDifference<unknown>>;
|
|
1998
|
-
/**
|
|
1999
|
-
* Resource metadata attached to the logical id from the cloud assembly
|
|
2000
|
-
*
|
|
2001
|
-
* This is only present if the resource is present in the current Cloud Assembly,
|
|
2002
|
-
* i.e. resource deletions will not have metadata.
|
|
2003
|
-
*/
|
|
2004
|
-
readonly metadata?: ResourceMetadata;
|
|
2005
|
-
}
|
|
2006
|
-
/**
|
|
2007
|
-
* A change that can be hotswapped
|
|
2008
|
-
*/
|
|
2009
|
-
export interface HotswappableChange {
|
|
2010
|
-
/**
|
|
2011
|
-
* The resource change that is causing the hotswap.
|
|
2012
|
-
*/
|
|
2013
|
-
readonly cause: ResourceChange;
|
|
2014
|
-
/**
|
|
2015
|
-
* A list of resources that are being hotswapped as part of the change
|
|
2016
|
-
*/
|
|
2017
|
-
readonly resources: AffectedResource[];
|
|
2018
|
-
}
|
|
2019
|
-
export declare enum NonHotswappableReason {
|
|
2020
|
-
/**
|
|
2021
|
-
* Tags are not hotswappable
|
|
2022
|
-
*/
|
|
2023
|
-
TAGS = "tags",
|
|
2024
|
-
/**
|
|
2025
|
-
* Changed resource properties are not hotswappable on this resource type
|
|
2026
|
-
*/
|
|
2027
|
-
PROPERTIES = "properties",
|
|
2028
|
-
/**
|
|
2029
|
-
* A stack output has changed
|
|
2030
|
-
*/
|
|
2031
|
-
OUTPUT = "output",
|
|
2032
|
-
/**
|
|
2033
|
-
* A dependant resource is not hotswappable
|
|
2034
|
-
*/
|
|
2035
|
-
DEPENDENCY_UNSUPPORTED = "dependency-unsupported",
|
|
2036
|
-
/**
|
|
2037
|
-
* The resource type is not hotswappable
|
|
2038
|
-
*/
|
|
2039
|
-
RESOURCE_UNSUPPORTED = "resource-unsupported",
|
|
2040
|
-
/**
|
|
2041
|
-
* The resource is created in the deployment
|
|
2042
|
-
*/
|
|
2043
|
-
RESOURCE_CREATION = "resource-creation",
|
|
2044
|
-
/**
|
|
2045
|
-
* The resource is removed in the deployment
|
|
2046
|
-
*/
|
|
2047
|
-
RESOURCE_DELETION = "resource-deletion",
|
|
2048
|
-
/**
|
|
2049
|
-
* The resource identified by the logical id has its type changed
|
|
2050
|
-
*/
|
|
2051
|
-
RESOURCE_TYPE_CHANGED = "resource-type-changed",
|
|
2052
|
-
/**
|
|
2053
|
-
* The nested stack is created in the deployment
|
|
2054
|
-
*/
|
|
2055
|
-
NESTED_STACK_CREATION = "nested-stack-creation"
|
|
2056
|
-
}
|
|
2057
|
-
export interface RejectionSubject {
|
|
2058
|
-
/**
|
|
2059
|
-
* The type of the rejection subject, e.g. Resource or Output
|
|
2060
|
-
*/
|
|
2061
|
-
readonly type: string;
|
|
2062
|
-
/**
|
|
2063
|
-
* The logical ID of the change that is not hotswappable
|
|
2064
|
-
*/
|
|
2065
|
-
readonly logicalId: string;
|
|
2066
|
-
/**
|
|
2067
|
-
* Resource metadata attached to the logical id from the cloud assembly
|
|
2068
|
-
*
|
|
2069
|
-
* This is only present if the resource is present in the current Cloud Assembly,
|
|
2070
|
-
* i.e. resource deletions will not have metadata.
|
|
2071
|
-
*/
|
|
2072
|
-
readonly metadata?: ResourceMetadata;
|
|
2073
|
-
}
|
|
2074
|
-
export interface ResourceSubject extends RejectionSubject {
|
|
2075
|
-
/**
|
|
2076
|
-
* A rejected resource
|
|
2077
|
-
*/
|
|
2078
|
-
readonly type: "Resource";
|
|
2079
|
-
/**
|
|
2080
|
-
* The type of the rejected resource
|
|
2081
|
-
*/
|
|
2082
|
-
readonly resourceType: string;
|
|
2083
|
-
/**
|
|
2084
|
-
* The list of properties that are cause for the rejection
|
|
2085
|
-
*/
|
|
2086
|
-
readonly rejectedProperties?: string[];
|
|
2087
|
-
}
|
|
2088
|
-
export interface OutputSubject extends RejectionSubject {
|
|
2089
|
-
/**
|
|
2090
|
-
* A rejected output
|
|
2091
|
-
*/
|
|
2092
|
-
readonly type: "Output";
|
|
2093
|
-
}
|
|
2094
|
-
/**
|
|
2095
|
-
* A change that can not be hotswapped
|
|
2096
|
-
*/
|
|
2097
|
-
export interface NonHotswappableChange {
|
|
2098
|
-
/**
|
|
2099
|
-
* The subject of the change that was rejected
|
|
2100
|
-
*/
|
|
2101
|
-
readonly subject: ResourceSubject | OutputSubject;
|
|
2102
|
-
/**
|
|
2103
|
-
* Why was this change was deemed non-hotswappable
|
|
2104
|
-
*/
|
|
2105
|
-
readonly reason: NonHotswappableReason;
|
|
2106
|
-
/**
|
|
2107
|
-
* Tells the user exactly why this change was deemed non-hotswappable and what its logical ID is.
|
|
2108
|
-
* If not specified, `displayReason` default to state that the properties listed in `rejectedChanges` are not hotswappable.
|
|
2109
|
-
*/
|
|
2110
|
-
readonly description: string;
|
|
2111
|
-
}
|
|
2112
|
-
export interface HotswapDeploymentAttempt {
|
|
2113
|
-
/**
|
|
2114
|
-
* The stack that's currently being deployed
|
|
2115
|
-
*/
|
|
2116
|
-
readonly stack: cxapi.CloudFormationStackArtifact;
|
|
2117
|
-
/**
|
|
2118
|
-
* The mode the hotswap deployment was initiated with.
|
|
2119
|
-
*/
|
|
2120
|
-
readonly mode: "hotswap-only" | "fall-back";
|
|
2121
|
-
}
|
|
2122
|
-
/**
|
|
2123
|
-
* Information about a hotswap deployment
|
|
2124
|
-
*/
|
|
2125
|
-
export interface HotswapDeploymentDetails {
|
|
2126
|
-
/**
|
|
2127
|
-
* The stack that's currently being deployed
|
|
2128
|
-
*/
|
|
2129
|
-
readonly stack: cxapi.CloudFormationStackArtifact;
|
|
2130
|
-
/**
|
|
2131
|
-
* The mode the hotswap deployment was initiated with.
|
|
2132
|
-
*/
|
|
2133
|
-
readonly mode: "hotswap-only" | "fall-back";
|
|
2134
|
-
/**
|
|
2135
|
-
* The changes that were deemed hotswappable
|
|
2136
|
-
*/
|
|
2137
|
-
readonly hotswappableChanges: HotswappableChange[];
|
|
2138
|
-
/**
|
|
2139
|
-
* The changes that were deemed not hotswappable
|
|
2140
|
-
*/
|
|
2141
|
-
readonly nonHotswappableChanges: NonHotswappableChange[];
|
|
2142
|
-
}
|
|
2143
|
-
/**
|
|
2144
|
-
* The result of an attempted hotswap deployment
|
|
2145
|
-
*/
|
|
2146
|
-
export interface HotswapResult extends Duration, HotswapDeploymentDetails {
|
|
2147
|
-
/**
|
|
2148
|
-
* Whether hotswapping happened or not.
|
|
2149
|
-
*
|
|
2150
|
-
* `false` indicates that the deployment could not be hotswapped and full deployment may be attempted as fallback.
|
|
2151
|
-
*/
|
|
2152
|
-
readonly hotswapped: boolean;
|
|
2153
|
-
}
|
|
2154
|
-
|
|
2155
|
-
export {
|
|
2156
|
-
MissingContext$1 as MissingContext,
|
|
2157
|
-
};
|
|
2158
|
-
|
|
2159
|
-
export {};
|