aws-cdk 2.1007.0 → 3.0.0

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.
Files changed (253) hide show
  1. package/THIRD_PARTY_LICENSES +24 -6
  2. package/build-info.json +2 -2
  3. package/db.json.gz +0 -0
  4. package/lib/api/aws-auth.d.ts +1 -0
  5. package/lib/api/{logs/index.js → aws-auth.js} +2 -3
  6. package/lib/api/bootstrap.d.ts +1 -0
  7. package/lib/api/bootstrap.js +18 -0
  8. package/lib/api/cloud-assembly.d.ts +1 -0
  9. package/lib/api/cloud-assembly.js +18 -0
  10. package/lib/api/cloudformation.d.ts +1 -0
  11. package/lib/api/cloudformation.js +18 -0
  12. package/lib/api/context.d.ts +1 -40
  13. package/lib/api/context.js +16 -80
  14. package/lib/api/deployments.d.ts +1 -0
  15. package/lib/api/deployments.js +18 -0
  16. package/lib/api/environment.d.ts +1 -0
  17. package/lib/api/environment.js +18 -0
  18. package/lib/api/garbage-collection.d.ts +1 -0
  19. package/lib/api/garbage-collection.js +18 -0
  20. package/lib/api/hotswap.d.ts +1 -0
  21. package/lib/api/hotswap.js +18 -0
  22. package/lib/api/index.d.ts +5 -1
  23. package/lib/api/index.js +6 -2
  24. package/lib/api/logs-monitor.d.ts +1 -0
  25. package/lib/api/logs-monitor.js +18 -0
  26. package/lib/api/notices.d.ts +1 -0
  27. package/lib/api/notices.js +18 -0
  28. package/lib/api/plugin.d.ts +1 -0
  29. package/lib/api/{garbage-collection/index.js → plugin.js} +2 -2
  30. package/lib/api/resource-import.d.ts +1 -0
  31. package/lib/api/resource-import.js +18 -0
  32. package/lib/api/rwlock.d.ts +1 -0
  33. package/lib/api/{resource-import/index.js → rwlock.js} +2 -3
  34. package/lib/api/settings.d.ts +1 -26
  35. package/lib/api/settings.js +16 -103
  36. package/lib/api/stack-events.d.ts +1 -0
  37. package/lib/api/stack-events.js +18 -0
  38. package/lib/api/tags.d.ts +1 -9
  39. package/lib/api/tags.js +16 -8
  40. package/lib/api/toolkit-info.d.ts +1 -52
  41. package/lib/api/toolkit-info.js +16 -152
  42. package/lib/api/tree.d.ts +1 -31
  43. package/lib/api/tree.js +16 -35
  44. package/lib/api/work-graph.d.ts +1 -0
  45. package/lib/api/work-graph.js +18 -0
  46. package/lib/api-private.d.ts +3 -0
  47. package/lib/api-private.js +22 -0
  48. package/lib/cli/cdk-toolkit.d.ts +6 -5
  49. package/lib/cli/cdk-toolkit.js +74 -44
  50. package/lib/cli/cli.d.ts +1 -1
  51. package/lib/cli/cli.js +21 -19
  52. package/lib/cli/io-host/cli-io-host.js +2 -2
  53. package/lib/cli/pretty-print-error.js +3 -1
  54. package/lib/cli/util/npm.d.ts +4 -1
  55. package/lib/cli/util/npm.js +25 -13
  56. package/lib/cli/version.d.ts +1 -1
  57. package/lib/cli/version.js +21 -25
  58. package/lib/commands/context.js +3 -2
  59. package/lib/commands/init/init.js +3 -2
  60. package/lib/commands/list-stacks.js +4 -4
  61. package/lib/context-providers/ami.d.ts +1 -13
  62. package/lib/context-providers/ami.js +16 -48
  63. package/lib/context-providers/availability-zones.d.ts +1 -13
  64. package/lib/context-providers/availability-zones.js +16 -25
  65. package/lib/context-providers/cc-api-provider.d.ts +1 -30
  66. package/lib/context-providers/cc-api-provider.js +16 -142
  67. package/lib/context-providers/endpoint-service-availability-zones.d.ts +1 -13
  68. package/lib/context-providers/endpoint-service-availability-zones.js +16 -31
  69. package/lib/context-providers/hosted-zones.d.ts +1 -12
  70. package/lib/context-providers/hosted-zones.js +16 -65
  71. package/lib/context-providers/index.d.ts +1 -44
  72. package/lib/context-providers/index.js +15 -126
  73. package/lib/context-providers/keys.d.ts +1 -13
  74. package/lib/context-providers/keys.js +16 -50
  75. package/lib/context-providers/load-balancers.d.ts +1 -20
  76. package/lib/context-providers/load-balancers.js +16 -154
  77. package/lib/context-providers/security-groups.d.ts +1 -9
  78. package/lib/context-providers/security-groups.js +16 -66
  79. package/lib/context-providers/ssm-parameters.d.ts +1 -25
  80. package/lib/context-providers/ssm-parameters.js +16 -57
  81. package/lib/context-providers/vpcs.d.ts +1 -13
  82. package/lib/context-providers/vpcs.js +16 -285
  83. package/lib/cxapp/cloud-assembly.d.ts +79 -0
  84. package/lib/cxapp/cloud-assembly.js +108 -0
  85. package/lib/{api/cxapp → cxapp}/cloud-executable.d.ts +6 -4
  86. package/lib/cxapp/cloud-executable.js +92 -0
  87. package/lib/{api/cxapp → cxapp}/environments.d.ts +1 -2
  88. package/lib/{api/cxapp → cxapp}/environments.js +2 -2
  89. package/lib/cxapp/exec.d.ts +14 -0
  90. package/lib/cxapp/exec.js +157 -0
  91. package/lib/cxapp/index.d.ts +4 -0
  92. package/lib/{api/bootstrap → cxapp}/index.js +5 -3
  93. package/lib/index.js +133605 -124560
  94. package/lib/init-templates/.init-version.json +1 -1
  95. package/lib/init-templates/.recommended-feature-flags.json +2 -1
  96. package/lib/legacy-aws-auth.d.ts +74 -0
  97. package/lib/legacy-aws-auth.js +40 -0
  98. package/lib/legacy-exports-source.d.ts +13 -18
  99. package/lib/legacy-exports-source.js +42 -49
  100. package/lib/legacy-exports.d.ts +3 -6
  101. package/lib/legacy-exports.js +5 -5
  102. package/lib/legacy-types.d.ts +31 -0
  103. package/lib/legacy-types.js +3 -0
  104. package/package.json +8 -7
  105. package/lib/api/aws-auth/account-cache.d.ts +0 -36
  106. package/lib/api/aws-auth/account-cache.js +0 -99
  107. package/lib/api/aws-auth/awscli-compatible.d.ts +0 -42
  108. package/lib/api/aws-auth/awscli-compatible.js +0 -263
  109. package/lib/api/aws-auth/cached.d.ts +0 -11
  110. package/lib/api/aws-auth/cached.js +0 -26
  111. package/lib/api/aws-auth/credential-plugins.d.ts +0 -36
  112. package/lib/api/aws-auth/credential-plugins.js +0 -152
  113. package/lib/api/aws-auth/index.d.ts +0 -3
  114. package/lib/api/aws-auth/index.js +0 -20
  115. package/lib/api/aws-auth/provider-caching.d.ts +0 -13
  116. package/lib/api/aws-auth/provider-caching.js +0 -24
  117. package/lib/api/aws-auth/sdk-logger.d.ts +0 -69
  118. package/lib/api/aws-auth/sdk-logger.js +0 -124
  119. package/lib/api/aws-auth/sdk-provider.d.ts +0 -207
  120. package/lib/api/aws-auth/sdk-provider.js +0 -357
  121. package/lib/api/aws-auth/sdk.d.ts +0 -229
  122. package/lib/api/aws-auth/sdk.js +0 -373
  123. package/lib/api/aws-auth/tracing.d.ts +0 -11
  124. package/lib/api/aws-auth/tracing.js +0 -60
  125. package/lib/api/aws-auth/user-agent.d.ts +0 -7
  126. package/lib/api/aws-auth/user-agent.js +0 -20
  127. package/lib/api/aws-auth/util.d.ts +0 -6
  128. package/lib/api/aws-auth/util.js +0 -23
  129. package/lib/api/bootstrap/bootstrap-environment.d.ts +0 -35
  130. package/lib/api/bootstrap/bootstrap-environment.js +0 -321
  131. package/lib/api/bootstrap/bootstrap-props.d.ts +0 -130
  132. package/lib/api/bootstrap/bootstrap-props.js +0 -14
  133. package/lib/api/bootstrap/deploy-bootstrap.d.ts +0 -39
  134. package/lib/api/bootstrap/deploy-bootstrap.js +0 -141
  135. package/lib/api/bootstrap/index.d.ts +0 -2
  136. package/lib/api/bootstrap/legacy-template.d.ts +0 -2
  137. package/lib/api/bootstrap/legacy-template.js +0 -82
  138. package/lib/api/cloudformation/evaluate-cloudformation-template.d.ts +0 -85
  139. package/lib/api/cloudformation/evaluate-cloudformation-template.js +0 -440
  140. package/lib/api/cloudformation/index.d.ts +0 -4
  141. package/lib/api/cloudformation/index.js +0 -21
  142. package/lib/api/cloudformation/nested-stack-helpers.d.ts +0 -19
  143. package/lib/api/cloudformation/nested-stack-helpers.js +0 -86
  144. package/lib/api/cloudformation/stack-helpers.d.ts +0 -88
  145. package/lib/api/cloudformation/stack-helpers.js +0 -158
  146. package/lib/api/cloudformation/template-body-parameter.d.ts +0 -22
  147. package/lib/api/cloudformation/template-body-parameter.js +0 -104
  148. package/lib/api/cxapp/cloud-assembly.d.ts +0 -137
  149. package/lib/api/cxapp/cloud-assembly.js +0 -305
  150. package/lib/api/cxapp/cloud-executable.js +0 -89
  151. package/lib/api/cxapp/exec.d.ts +0 -57
  152. package/lib/api/cxapp/exec.js +0 -279
  153. package/lib/api/deployments/asset-manifest-builder.d.ts +0 -8
  154. package/lib/api/deployments/asset-manifest-builder.js +0 -35
  155. package/lib/api/deployments/asset-publishing.d.ts +0 -60
  156. package/lib/api/deployments/asset-publishing.js +0 -141
  157. package/lib/api/deployments/assets.d.ts +0 -11
  158. package/lib/api/deployments/assets.js +0 -109
  159. package/lib/api/deployments/cfn-api.d.ts +0 -138
  160. package/lib/api/deployments/cfn-api.js +0 -438
  161. package/lib/api/deployments/checks.d.ts +0 -9
  162. package/lib/api/deployments/checks.js +0 -72
  163. package/lib/api/deployments/deploy-stack.d.ts +0 -155
  164. package/lib/api/deployments/deploy-stack.js +0 -478
  165. package/lib/api/deployments/deployment-method.d.ts +0 -24
  166. package/lib/api/deployments/deployment-method.js +0 -3
  167. package/lib/api/deployments/deployment-result.d.ts +0 -21
  168. package/lib/api/deployments/deployment-result.js +0 -10
  169. package/lib/api/deployments/deployments.d.ts +0 -296
  170. package/lib/api/deployments/deployments.js +0 -331
  171. package/lib/api/deployments/hotswap-deployments.d.ts +0 -17
  172. package/lib/api/deployments/hotswap-deployments.js +0 -441
  173. package/lib/api/deployments/index.d.ts +0 -5
  174. package/lib/api/deployments/index.js +0 -22
  175. package/lib/api/environment/environment-access.d.ts +0 -140
  176. package/lib/api/environment/environment-access.js +0 -202
  177. package/lib/api/environment/environment-resources.d.ts +0 -75
  178. package/lib/api/environment/environment-resources.js +0 -207
  179. package/lib/api/environment/index.d.ts +0 -3
  180. package/lib/api/environment/index.js +0 -20
  181. package/lib/api/environment/placeholders.d.ts +0 -10
  182. package/lib/api/environment/placeholders.js +0 -23
  183. package/lib/api/garbage-collection/garbage-collector.d.ts +0 -158
  184. package/lib/api/garbage-collection/garbage-collector.js +0 -599
  185. package/lib/api/garbage-collection/index.d.ts +0 -1
  186. package/lib/api/garbage-collection/progress-printer.d.ts +0 -23
  187. package/lib/api/garbage-collection/progress-printer.js +0 -70
  188. package/lib/api/garbage-collection/stack-refresh.d.ts +0 -49
  189. package/lib/api/garbage-collection/stack-refresh.js +0 -151
  190. package/lib/api/hotswap/appsync-mapping-templates.d.ts +0 -4
  191. package/lib/api/hotswap/appsync-mapping-templates.js +0 -162
  192. package/lib/api/hotswap/code-build-projects.d.ts +0 -4
  193. package/lib/api/hotswap/code-build-projects.js +0 -62
  194. package/lib/api/hotswap/common.d.ts +0 -89
  195. package/lib/api/hotswap/common.js +0 -128
  196. package/lib/api/hotswap/ecs-services.d.ts +0 -4
  197. package/lib/api/hotswap/ecs-services.js +0 -159
  198. package/lib/api/hotswap/lambda-functions.d.ts +0 -4
  199. package/lib/api/hotswap/lambda-functions.js +0 -297
  200. package/lib/api/hotswap/s3-bucket-deployments.d.ts +0 -5
  201. package/lib/api/hotswap/s3-bucket-deployments.js +0 -117
  202. package/lib/api/hotswap/stepfunctions-state-machines.d.ts +0 -4
  203. package/lib/api/hotswap/stepfunctions-state-machines.js +0 -48
  204. package/lib/api/logs/find-cloudwatch-logs.d.ts +0 -25
  205. package/lib/api/logs/find-cloudwatch-logs.js +0 -95
  206. package/lib/api/logs/index.d.ts +0 -2
  207. package/lib/api/logs/logs-monitor.d.ts +0 -76
  208. package/lib/api/logs/logs-monitor.js +0 -187
  209. package/lib/api/plugin/context-provider-plugin.d.ts +0 -6
  210. package/lib/api/plugin/context-provider-plugin.js +0 -7
  211. package/lib/api/plugin/index.d.ts +0 -3
  212. package/lib/api/plugin/index.js +0 -20
  213. package/lib/api/plugin/mode.d.ts +0 -4
  214. package/lib/api/plugin/mode.js +0 -9
  215. package/lib/api/plugin/plugin.d.ts +0 -63
  216. package/lib/api/plugin/plugin.js +0 -102
  217. package/lib/api/resource-import/importer.d.ts +0 -215
  218. package/lib/api/resource-import/importer.js +0 -322
  219. package/lib/api/resource-import/index.d.ts +0 -2
  220. package/lib/api/resource-import/migrator.d.ts +0 -26
  221. package/lib/api/resource-import/migrator.js +0 -71
  222. package/lib/api/stack-events/index.d.ts +0 -3
  223. package/lib/api/stack-events/index.js +0 -20
  224. package/lib/api/stack-events/stack-activity-monitor.d.ts +0 -100
  225. package/lib/api/stack-events/stack-activity-monitor.js +0 -142
  226. package/lib/api/stack-events/stack-event-poller.d.ts +0 -69
  227. package/lib/api/stack-events/stack-event-poller.js +0 -128
  228. package/lib/api/stack-events/stack-progress-monitor.d.ts +0 -48
  229. package/lib/api/stack-events/stack-progress-monitor.js +0 -94
  230. package/lib/api/stack-events/stack-status.d.ts +0 -42
  231. package/lib/api/stack-events/stack-status.js +0 -88
  232. package/lib/api/util/rwlock.d.ts +0 -65
  233. package/lib/api/util/rwlock.js +0 -179
  234. package/lib/api/work-graph/index.d.ts +0 -3
  235. package/lib/api/work-graph/index.js +0 -20
  236. package/lib/api/work-graph/work-graph-builder.d.ts +0 -34
  237. package/lib/api/work-graph/work-graph-builder.js +0 -168
  238. package/lib/api/work-graph/work-graph-types.d.ts +0 -50
  239. package/lib/api/work-graph/work-graph-types.js +0 -13
  240. package/lib/api/work-graph/work-graph.d.ts +0 -72
  241. package/lib/api/work-graph/work-graph.js +0 -346
  242. package/lib/cli/activity-printer/base.d.ts +0 -50
  243. package/lib/cli/activity-printer/base.js +0 -114
  244. package/lib/cli/activity-printer/current.d.ts +0 -26
  245. package/lib/cli/activity-printer/current.js +0 -118
  246. package/lib/cli/activity-printer/display.d.ts +0 -13
  247. package/lib/cli/activity-printer/display.js +0 -80
  248. package/lib/cli/activity-printer/history.d.ts +0 -32
  249. package/lib/cli/activity-printer/history.js +0 -108
  250. package/lib/cli/activity-printer/index.d.ts +0 -3
  251. package/lib/cli/activity-printer/index.js +0 -20
  252. package/lib/notices.d.ts +0 -203
  253. package/lib/notices.js +0 -411
@@ -1,102 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PluginHost = exports.TESTING = void 0;
4
- exports.markTesting = markTesting;
5
- const util_1 = require("util");
6
- const context_provider_plugin_1 = require("./context-provider-plugin");
7
- const api_1 = require("../../../../@aws-cdk/tmp-toolkit-helpers/src/api");
8
- exports.TESTING = false;
9
- function markTesting() {
10
- exports.TESTING = true;
11
- }
12
- /**
13
- * A utility to manage plug-ins.
14
- *
15
- */
16
- class PluginHost {
17
- constructor() {
18
- /**
19
- * Access the currently registered CredentialProviderSources. New sources can
20
- * be registered using the +registerCredentialProviderSource+ method.
21
- */
22
- this.credentialProviderSources = new Array();
23
- this.contextProviderPlugins = {};
24
- if (!exports.TESTING && PluginHost.instance && PluginHost.instance !== this) {
25
- throw new api_1.ToolkitError('New instances of PluginHost must not be built. Use PluginHost.instance instead!');
26
- }
27
- }
28
- /**
29
- * Loads a plug-in into this PluginHost.
30
- *
31
- * @param moduleSpec the specification (path or name) of the plug-in module to be loaded.
32
- */
33
- load(moduleSpec) {
34
- try {
35
- /* eslint-disable @typescript-eslint/no-require-imports */
36
- const plugin = require(moduleSpec);
37
- /* eslint-enable */
38
- if (!isPlugin(plugin)) {
39
- throw new api_1.ToolkitError(`Module ${moduleSpec} is not a valid plug-in, or has an unsupported version.`);
40
- }
41
- if (plugin.init) {
42
- plugin.init(this);
43
- }
44
- }
45
- catch (e) {
46
- throw api_1.ToolkitError.withCause(`Unable to load plug-in '${moduleSpec}'`, e);
47
- }
48
- function isPlugin(x) {
49
- return x != null && x.version === '1';
50
- }
51
- }
52
- /**
53
- * Allows plug-ins to register new CredentialProviderSources.
54
- *
55
- * @param source a new CredentialProviderSource to register.
56
- */
57
- registerCredentialProviderSource(source) {
58
- // Forward to the right credentials-related plugin host
59
- this.credentialProviderSources.push(source);
60
- }
61
- /**
62
- * (EXPERIMENTAL) Allow plugins to register context providers
63
- *
64
- * Context providers are objects with the following method:
65
- *
66
- * ```ts
67
- * getValue(args: {[key: string]: any}): Promise<any>;
68
- * ```
69
- *
70
- * Currently, they cannot reuse the CDK's authentication mechanisms, so they
71
- * must be prepared to either not make AWS calls or use their own source of
72
- * AWS credentials.
73
- *
74
- * This feature is experimental, and only intended to be used internally at Amazon
75
- * as a trial.
76
- *
77
- * After registering with 'my-plugin-name', the provider must be addressed as follows:
78
- *
79
- * ```ts
80
- * const value = ContextProvider.getValue(this, {
81
- * providerName: 'plugin',
82
- * props: {
83
- * pluginName: 'my-plugin-name',
84
- * myParameter1: 'xyz',
85
- * },
86
- * includeEnvironment: true | false,
87
- * dummyValue: 'what-to-return-on-the-first-pass',
88
- * })
89
- * ```
90
- *
91
- * @experimental
92
- */
93
- registerContextProviderAlpha(pluginProviderName, provider) {
94
- if (!(0, context_provider_plugin_1.isContextProviderPlugin)(provider)) {
95
- throw new api_1.ToolkitError(`Object you gave me does not look like a ContextProviderPlugin: ${(0, util_1.inspect)(provider)}`);
96
- }
97
- this.contextProviderPlugins[pluginProviderName] = provider;
98
- }
99
- }
100
- exports.PluginHost = PluginHost;
101
- PluginHost.instance = new PluginHost();
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsicGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU9BLGtDQUVDO0FBVEQsK0JBQStCO0FBRS9CLHVFQUFnRztBQUNoRywwRUFBZ0Y7QUFFckUsUUFBQSxPQUFPLEdBQUcsS0FBSyxDQUFDO0FBRTNCLFNBQWdCLFdBQVc7SUFDekIsZUFBTyxHQUFHLElBQUksQ0FBQztBQUNqQixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxVQUFVO0lBV3JCO1FBUkE7OztXQUdHO1FBQ2EsOEJBQXlCLEdBQUcsSUFBSSxLQUFLLEVBQTRCLENBQUM7UUFFbEUsMkJBQXNCLEdBQTBDLEVBQUUsQ0FBQztRQUdqRixJQUFJLENBQUMsZUFBTyxJQUFJLFVBQVUsQ0FBQyxRQUFRLElBQUksVUFBVSxDQUFDLFFBQVEsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNwRSxNQUFNLElBQUksa0JBQVksQ0FBQyxpRkFBaUYsQ0FBQyxDQUFDO1FBQzVHLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLElBQUksQ0FBQyxVQUFrQjtRQUM1QixJQUFJLENBQUM7WUFDSCwwREFBMEQ7WUFDMUQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ25DLG1CQUFtQjtZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ3RCLE1BQU0sSUFBSSxrQkFBWSxDQUFDLFVBQVUsVUFBVSx5REFBeUQsQ0FBQyxDQUFDO1lBQ3hHLENBQUM7WUFDRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNwQixDQUFDO1FBQ0gsQ0FBQztRQUFDLE9BQU8sQ0FBTSxFQUFFLENBQUM7WUFDaEIsTUFBTSxrQkFBWSxDQUFDLFNBQVMsQ0FBQywyQkFBMkIsVUFBVSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUVELFNBQVMsUUFBUSxDQUFDLENBQU07WUFDdEIsT0FBTyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssR0FBRyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGdDQUFnQyxDQUFDLE1BQWdDO1FBQ3RFLHVEQUF1RDtRQUN2RCxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQStCRztJQUNJLDRCQUE0QixDQUFDLGtCQUEwQixFQUFFLFFBQStCO1FBQzdGLElBQUksQ0FBQyxJQUFBLGlEQUF1QixFQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDdkMsTUFBTSxJQUFJLGtCQUFZLENBQUMsa0VBQWtFLElBQUEsY0FBTyxFQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNoSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGtCQUFrQixDQUFDLEdBQUcsUUFBUSxDQUFDO0lBQzdELENBQUM7O0FBekZILGdDQTBGQztBQXpGZSxtQkFBUSxHQUFHLElBQUksVUFBVSxFQUFFLEFBQW5CLENBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5zcGVjdCB9IGZyb20gJ3V0aWwnO1xuaW1wb3J0IHR5cGUgeyBDcmVkZW50aWFsUHJvdmlkZXJTb3VyY2UsIElQbHVnaW5Ib3N0LCBQbHVnaW4gfSBmcm9tICdAYXdzLWNkay9jbGktcGx1Z2luLWNvbnRyYWN0JztcbmltcG9ydCB7IHR5cGUgQ29udGV4dFByb3ZpZGVyUGx1Z2luLCBpc0NvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vY29udGV4dC1wcm92aWRlci1wbHVnaW4nO1xuaW1wb3J0IHsgVG9vbGtpdEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vLi4vQGF3cy1jZGsvdG1wLXRvb2xraXQtaGVscGVycy9zcmMvYXBpJztcblxuZXhwb3J0IGxldCBURVNUSU5HID0gZmFsc2U7XG5cbmV4cG9ydCBmdW5jdGlvbiBtYXJrVGVzdGluZygpIHtcbiAgVEVTVElORyA9IHRydWU7XG59XG5cbi8qKlxuICogQSB1dGlsaXR5IHRvIG1hbmFnZSBwbHVnLWlucy5cbiAqXG4gKi9cbmV4cG9ydCBjbGFzcyBQbHVnaW5Ib3N0IGltcGxlbWVudHMgSVBsdWdpbkhvc3Qge1xuICBwdWJsaWMgc3RhdGljIGluc3RhbmNlID0gbmV3IFBsdWdpbkhvc3QoKTtcblxuICAvKipcbiAgICogQWNjZXNzIHRoZSBjdXJyZW50bHkgcmVnaXN0ZXJlZCBDcmVkZW50aWFsUHJvdmlkZXJTb3VyY2VzLiBOZXcgc291cmNlcyBjYW5cbiAgICogYmUgcmVnaXN0ZXJlZCB1c2luZyB0aGUgK3JlZ2lzdGVyQ3JlZGVudGlhbFByb3ZpZGVyU291cmNlKyBtZXRob2QuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbFByb3ZpZGVyU291cmNlcyA9IG5ldyBBcnJheTxDcmVkZW50aWFsUHJvdmlkZXJTb3VyY2U+KCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNvbnRleHRQcm92aWRlclBsdWdpbnM6IFJlY29yZDxzdHJpbmcsIENvbnRleHRQcm92aWRlclBsdWdpbj4gPSB7fTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoIVRFU1RJTkcgJiYgUGx1Z2luSG9zdC5pbnN0YW5jZSAmJiBQbHVnaW5Ib3N0Lmluc3RhbmNlICE9PSB0aGlzKSB7XG4gICAgICB0aHJvdyBuZXcgVG9vbGtpdEVycm9yKCdOZXcgaW5zdGFuY2VzIG9mIFBsdWdpbkhvc3QgbXVzdCBub3QgYmUgYnVpbHQuIFVzZSBQbHVnaW5Ib3N0Lmluc3RhbmNlIGluc3RlYWQhJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIExvYWRzIGEgcGx1Zy1pbiBpbnRvIHRoaXMgUGx1Z2luSG9zdC5cbiAgICpcbiAgICogQHBhcmFtIG1vZHVsZVNwZWMgdGhlIHNwZWNpZmljYXRpb24gKHBhdGggb3IgbmFtZSkgb2YgdGhlIHBsdWctaW4gbW9kdWxlIHRvIGJlIGxvYWRlZC5cbiAgICovXG4gIHB1YmxpYyBsb2FkKG1vZHVsZVNwZWM6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzICovXG4gICAgICBjb25zdCBwbHVnaW4gPSByZXF1aXJlKG1vZHVsZVNwZWMpO1xuICAgICAgLyogZXNsaW50LWVuYWJsZSAqL1xuICAgICAgaWYgKCFpc1BsdWdpbihwbHVnaW4pKSB7XG4gICAgICAgIHRocm93IG5ldyBUb29sa2l0RXJyb3IoYE1vZHVsZSAke21vZHVsZVNwZWN9IGlzIG5vdCBhIHZhbGlkIHBsdWctaW4sIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB2ZXJzaW9uLmApO1xuICAgICAgfVxuICAgICAgaWYgKHBsdWdpbi5pbml0KSB7XG4gICAgICAgIHBsdWdpbi5pbml0KHRoaXMpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgdGhyb3cgVG9vbGtpdEVycm9yLndpdGhDYXVzZShgVW5hYmxlIHRvIGxvYWQgcGx1Zy1pbiAnJHttb2R1bGVTcGVjfSdgLCBlKTtcbiAgICB9XG5cbiAgICBmdW5jdGlvbiBpc1BsdWdpbih4OiBhbnkpOiB4IGlzIFBsdWdpbiB7XG4gICAgICByZXR1cm4geCAhPSBudWxsICYmIHgudmVyc2lvbiA9PT0gJzEnO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBbGxvd3MgcGx1Zy1pbnMgdG8gcmVnaXN0ZXIgbmV3IENyZWRlbnRpYWxQcm92aWRlclNvdXJjZXMuXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2UgYSBuZXcgQ3JlZGVudGlhbFByb3ZpZGVyU291cmNlIHRvIHJlZ2lzdGVyLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyQ3JlZGVudGlhbFByb3ZpZGVyU291cmNlKHNvdXJjZTogQ3JlZGVudGlhbFByb3ZpZGVyU291cmNlKSB7XG4gICAgLy8gRm9yd2FyZCB0byB0aGUgcmlnaHQgY3JlZGVudGlhbHMtcmVsYXRlZCBwbHVnaW4gaG9zdFxuICAgIHRoaXMuY3JlZGVudGlhbFByb3ZpZGVyU291cmNlcy5wdXNoKHNvdXJjZSk7XG4gIH1cblxuICAvKipcbiAgICogKEVYUEVSSU1FTlRBTCkgQWxsb3cgcGx1Z2lucyB0byByZWdpc3RlciBjb250ZXh0IHByb3ZpZGVyc1xuICAgKlxuICAgKiBDb250ZXh0IHByb3ZpZGVycyBhcmUgb2JqZWN0cyB3aXRoIHRoZSBmb2xsb3dpbmcgbWV0aG9kOlxuICAgKlxuICAgKiBgYGB0c1xuICAgKiAgIGdldFZhbHVlKGFyZ3M6IHtba2V5OiBzdHJpbmddOiBhbnl9KTogUHJvbWlzZTxhbnk+O1xuICAgKiBgYGBcbiAgICpcbiAgICogQ3VycmVudGx5LCB0aGV5IGNhbm5vdCByZXVzZSB0aGUgQ0RLJ3MgYXV0aGVudGljYXRpb24gbWVjaGFuaXNtcywgc28gdGhleVxuICAgKiBtdXN0IGJlIHByZXBhcmVkIHRvIGVpdGhlciBub3QgbWFrZSBBV1MgY2FsbHMgb3IgdXNlIHRoZWlyIG93biBzb3VyY2Ugb2ZcbiAgICogQVdTIGNyZWRlbnRpYWxzLlxuICAgKlxuICAgKiBUaGlzIGZlYXR1cmUgaXMgZXhwZXJpbWVudGFsLCBhbmQgb25seSBpbnRlbmRlZCB0byBiZSB1c2VkIGludGVybmFsbHkgYXQgQW1hem9uXG4gICAqIGFzIGEgdHJpYWwuXG4gICAqXG4gICAqIEFmdGVyIHJlZ2lzdGVyaW5nIHdpdGggJ215LXBsdWdpbi1uYW1lJywgdGhlIHByb3ZpZGVyIG11c3QgYmUgYWRkcmVzc2VkIGFzIGZvbGxvd3M6XG4gICAqXG4gICAqIGBgYHRzXG4gICAqIGNvbnN0IHZhbHVlID0gQ29udGV4dFByb3ZpZGVyLmdldFZhbHVlKHRoaXMsIHtcbiAgICogICBwcm92aWRlck5hbWU6ICdwbHVnaW4nLFxuICAgKiAgIHByb3BzOiB7XG4gICAqICAgICBwbHVnaW5OYW1lOiAnbXktcGx1Z2luLW5hbWUnLFxuICAgKiAgICAgbXlQYXJhbWV0ZXIxOiAneHl6JyxcbiAgICogICB9LFxuICAgKiAgIGluY2x1ZGVFbnZpcm9ubWVudDogdHJ1ZSB8IGZhbHNlLFxuICAgKiAgIGR1bW15VmFsdWU6ICd3aGF0LXRvLXJldHVybi1vbi10aGUtZmlyc3QtcGFzcycsXG4gICAqIH0pXG4gICAqIGBgYFxuICAgKlxuICAgKiBAZXhwZXJpbWVudGFsXG4gICAqL1xuICBwdWJsaWMgcmVnaXN0ZXJDb250ZXh0UHJvdmlkZXJBbHBoYShwbHVnaW5Qcm92aWRlck5hbWU6IHN0cmluZywgcHJvdmlkZXI6IENvbnRleHRQcm92aWRlclBsdWdpbikge1xuICAgIGlmICghaXNDb250ZXh0UHJvdmlkZXJQbHVnaW4ocHJvdmlkZXIpKSB7XG4gICAgICB0aHJvdyBuZXcgVG9vbGtpdEVycm9yKGBPYmplY3QgeW91IGdhdmUgbWUgZG9lcyBub3QgbG9vayBsaWtlIGEgQ29udGV4dFByb3ZpZGVyUGx1Z2luOiAke2luc3BlY3QocHJvdmlkZXIpfWApO1xuICAgIH1cbiAgICB0aGlzLmNvbnRleHRQcm92aWRlclBsdWdpbnNbcGx1Z2luUHJvdmlkZXJOYW1lXSA9IHByb3ZpZGVyO1xuICB9XG59XG4iXX0=
@@ -1,215 +0,0 @@
1
- import type { ResourceDifference } from '@aws-cdk/cloudformation-diff';
2
- import type * as cxapi from '@aws-cdk/cx-api';
3
- import type { ResourceIdentifierSummary, ResourceToImport } from '@aws-sdk/client-cloudformation';
4
- import { type IoHelper } from '../../../../@aws-cdk/tmp-toolkit-helpers/src/api/io/private';
5
- import type { DeploymentMethod, Deployments } from '../deployments';
6
- import type { Tag } from '../tags';
7
- export type ResourcesToImport = ResourceToImport[];
8
- export type ResourceIdentifierSummaries = ResourceIdentifierSummary[];
9
- export { removeNonImportResources } from '../../../../@aws-cdk/tmp-toolkit-helpers/src/api';
10
- export interface ResourceImporterProps {
11
- deployments: Deployments;
12
- ioHelper: IoHelper;
13
- }
14
- export interface ImportDeploymentOptions {
15
- /**
16
- * Role to pass to CloudFormation for deployment
17
- *
18
- * @default - Default stack role
19
- */
20
- readonly roleArn?: string;
21
- /**
22
- * Deployment method
23
- *
24
- * @default - Change set with default options
25
- */
26
- readonly deploymentMethod?: DeploymentMethod;
27
- /**
28
- * Stack tags (pass through to CloudFormation)
29
- *
30
- * @default - No tags
31
- */
32
- readonly tags?: Tag[];
33
- /**
34
- * Use previous values for unspecified parameters
35
- *
36
- * If not set, all parameters must be specified for every deployment.
37
- *
38
- * @default true
39
- */
40
- readonly usePreviousParameters?: boolean;
41
- /**
42
- * Rollback failed deployments
43
- *
44
- * @default true
45
- */
46
- readonly rollback?: boolean;
47
- }
48
- /**
49
- * Set of parameters that uniquely identify a physical resource of a given type
50
- * for the import operation, example:
51
- *
52
- * ```
53
- * {
54
- * "AWS::S3::Bucket": [["BucketName"]],
55
- * "AWS::DynamoDB::GlobalTable": [["TableName"], ["TableArn"], ["TableStreamArn"]],
56
- * "AWS::Route53::KeySigningKey": [["HostedZoneId", "Name"]],
57
- * }
58
- * ```
59
- */
60
- export type ResourceIdentifiers = {
61
- [resourceType: string]: string[][];
62
- };
63
- type ResourceIdentifierProperties = Record<string, string>;
64
- /**
65
- * Mapping of CDK resources (L1 constructs) to physical resources to be imported
66
- * in their place, example:
67
- *
68
- * ```
69
- * {
70
- * "MyStack/MyS3Bucket/Resource": {
71
- * "BucketName": "my-manually-created-s3-bucket"
72
- * },
73
- * "MyStack/MyVpc/Resource": {
74
- * "VpcId": "vpc-123456789"
75
- * }
76
- * }
77
- * ```
78
- */
79
- type ResourceMap = {
80
- [logicalResource: string]: ResourceIdentifierProperties;
81
- };
82
- /**
83
- * Resource importing utility class
84
- *
85
- * - Determines the resources added to a template (compared to the deployed version)
86
- * - Look up the identification information
87
- * - Load them from a file, or
88
- * - Ask the user, based on information supplied to us by CloudFormation's GetTemplateSummary
89
- * - Translate the input to a structure expected by CloudFormation, update the template to add the
90
- * importable resources, then run an IMPORT changeset.
91
- */
92
- export declare class ResourceImporter {
93
- private _currentTemplate;
94
- private readonly stack;
95
- private readonly cfn;
96
- private readonly ioHelper;
97
- constructor(stack: cxapi.CloudFormationStackArtifact, props: ResourceImporterProps);
98
- /**
99
- * Ask the user for resources to import
100
- */
101
- askForResourceIdentifiers(available: ImportableResource[]): Promise<ImportMap>;
102
- /**
103
- * Load the resources to import from a file
104
- */
105
- loadResourceIdentifiers(available: ImportableResource[], filename: string): Promise<ImportMap>;
106
- /**
107
- * Based on the provided resource mapping, prepare CFN structures for import (template,
108
- * ResourcesToImport structure) and perform the import operation (CloudFormation deployment)
109
- *
110
- * @param importMap Mapping from CDK construct tree path to physical resource import identifiers
111
- * @param options Options to pass to CloudFormation deploy operation
112
- */
113
- importResourcesFromMap(importMap: ImportMap, options?: ImportDeploymentOptions): Promise<void>;
114
- /**
115
- * Based on the app and resources file generated by cdk migrate. Removes all items from the template that
116
- * cannot be included in an import change-set for new stacks and performs the import operation,
117
- * creating the new stack.
118
- *
119
- * @param resourcesToImport The mapping created by cdk migrate
120
- * @param options Options to pass to CloudFormation deploy operation
121
- */
122
- importResourcesFromMigrate(resourcesToImport: ResourcesToImport, options?: ImportDeploymentOptions): Promise<void>;
123
- private importResources;
124
- /**
125
- * Perform a diff between the currently running and the new template, ensure that it is valid
126
- * for importing and return a list of resources that are being added in the new version
127
- *
128
- * @return mapping logicalResourceId -> resourceDifference
129
- */
130
- discoverImportableResources(allowNonAdditions?: boolean): Promise<DiscoverImportableResourcesResult>;
131
- /**
132
- * Resolves the environment of a stack.
133
- */
134
- resolveEnvironment(): Promise<cxapi.Environment>;
135
- /**
136
- * Get currently deployed template of the given stack (SINGLETON)
137
- *
138
- * @returns Currently deployed CloudFormation template
139
- */
140
- private currentTemplate;
141
- /**
142
- * Return the current template, with the given resources added to it
143
- */
144
- private currentTemplateWithAdditions;
145
- /**
146
- * Get a list of import identifiers for all resource types used in the given
147
- * template that do support the import operation (SINGLETON)
148
- *
149
- * @returns a mapping from a resource type to a list of property names that together identify the resource for import
150
- */
151
- private resourceIdentifiers;
152
- /**
153
- * Ask for the importable identifier for the given resource
154
- *
155
- * There may be more than one identifier under which a resource can be imported. The `import`
156
- * operation needs exactly one of them.
157
- *
158
- * - If we can get one from the template, we will use one.
159
- * - Otherwise, we will ask the user for one of them.
160
- */
161
- private askForResourceIdentifier;
162
- /**
163
- * Convert the internal "resource mapping" structure to CloudFormation accepted "ResourcesToImport" structure
164
- */
165
- private makeResourcesToImport;
166
- /**
167
- * Convert CloudFormation logical resource ID to CDK construct tree path
168
- *
169
- * @param logicalId CloudFormation logical ID of the resource (the key in the template's Resources section)
170
- * @returns Forward-slash separated path of the resource in CDK construct tree, e.g. MyStack/MyBucket/Resource
171
- */
172
- private describeResource;
173
- /**
174
- * Removes CDKMetadata and Outputs in the template so that only resources for importing are left.
175
- * @returns template with import resources only
176
- */
177
- private removeNonImportResources;
178
- }
179
- /**
180
- * Information about a resource in the template that is importable
181
- */
182
- export interface ImportableResource {
183
- /**
184
- * The logical ID of the resource
185
- */
186
- readonly logicalId: string;
187
- /**
188
- * The resource definition in the new template
189
- */
190
- readonly resourceDefinition: any;
191
- /**
192
- * The diff as reported by `cloudformation-diff`.
193
- */
194
- readonly resourceDiff: ResourceDifference;
195
- }
196
- /**
197
- * The information necessary to execute an import operation
198
- */
199
- export interface ImportMap {
200
- /**
201
- * Mapping logical IDs to physical names
202
- */
203
- readonly resourceMap: ResourceMap;
204
- /**
205
- * The selection of resources we are actually importing
206
- *
207
- * For each of the resources in this list, there is a corresponding entry in
208
- * the `resourceMap` map.
209
- */
210
- readonly importResources: ImportableResource[];
211
- }
212
- export interface DiscoverImportableResourcesResult {
213
- readonly additions: ImportableResource[];
214
- readonly hasNonAdditions: boolean;
215
- }