@quadnix/octo 0.1.0 → 0.2.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 (221) hide show
  1. package/README.md +108 -21
  2. package/dist/app.type.d.ts +141 -22
  3. package/dist/app.type.js.map +1 -1
  4. package/dist/decorators/model.decorator.d.ts +3 -5
  5. package/dist/decorators/model.decorator.js +1 -6
  6. package/dist/decorators/model.decorator.js.map +1 -1
  7. package/dist/decorators/on-event.decorator.d.ts +2 -2
  8. package/dist/decorators/on-event.decorator.js.map +1 -1
  9. package/dist/decorators/resource.decorator.d.ts +50 -1
  10. package/dist/decorators/resource.decorator.js +38 -1
  11. package/dist/decorators/resource.decorator.js.map +1 -1
  12. package/dist/errors/schema.error.d.ts +8 -1
  13. package/dist/errors/schema.error.js +5 -1
  14. package/dist/errors/schema.error.js.map +1 -1
  15. package/dist/errors/terraform.error.d.ts +4 -3
  16. package/dist/errors/terraform.error.js +4 -3
  17. package/dist/errors/terraform.error.js.map +1 -1
  18. package/dist/errors/transaction.error.d.ts +32 -2
  19. package/dist/errors/transaction.error.js +22 -0
  20. package/dist/errors/transaction.error.js.map +1 -1
  21. package/dist/events/action.event.d.ts +8 -2
  22. package/dist/events/action.event.js +2 -2
  23. package/dist/events/action.event.js.map +1 -1
  24. package/dist/events/command.event.d.ts +43 -0
  25. package/dist/events/command.event.js +33 -0
  26. package/dist/events/command.event.js.map +1 -0
  27. package/dist/events/event.model.d.ts +7 -5
  28. package/dist/events/event.model.js +5 -3
  29. package/dist/events/event.model.js.map +1 -1
  30. package/dist/events/hook/commit.hook.event.d.ts +1 -1
  31. package/dist/events/hook/commit.hook.event.js.map +1 -1
  32. package/dist/events/hook/hook.event.d.ts +1 -1
  33. package/dist/events/hook/hook.event.js.map +1 -1
  34. package/dist/events/hook/model.hook.event.d.ts +1 -1
  35. package/dist/events/hook/model.hook.event.js.map +1 -1
  36. package/dist/events/hook/resource.hook.event.d.ts +1 -1
  37. package/dist/events/hook/resource.hook.event.js.map +1 -1
  38. package/dist/events/index.d.ts +2 -0
  39. package/dist/events/index.js +2 -0
  40. package/dist/events/index.js.map +1 -1
  41. package/dist/events/mode-result.event.d.ts +1 -1
  42. package/dist/events/mode-result.event.js.map +1 -1
  43. package/dist/events/mode.event.d.ts +8 -4
  44. package/dist/events/mode.event.js.map +1 -1
  45. package/dist/events/module.event.d.ts +7 -3
  46. package/dist/events/module.event.js +3 -2
  47. package/dist/events/module.event.js.map +1 -1
  48. package/dist/events/registration.event.d.ts +1 -1
  49. package/dist/events/registration.event.js.map +1 -1
  50. package/dist/events/serialization.event.d.ts +1 -1
  51. package/dist/events/serialization.event.js.map +1 -1
  52. package/dist/events/state.event.d.ts +102 -0
  53. package/dist/events/state.event.js +69 -0
  54. package/dist/events/state.event.js.map +1 -0
  55. package/dist/events/terraform.event.d.ts +37 -1
  56. package/dist/events/terraform.event.js +24 -0
  57. package/dist/events/terraform.event.js.map +1 -1
  58. package/dist/events/transaction.event.d.ts +3 -3
  59. package/dist/events/transaction.event.js +1 -1
  60. package/dist/events/transaction.event.js.map +1 -1
  61. package/dist/functions/container/container.js +1 -1
  62. package/dist/functions/container/container.js.map +1 -1
  63. package/dist/functions/container/test-container.js +2 -2
  64. package/dist/functions/container/test-container.js.map +1 -1
  65. package/dist/functions/dependency/dependency.d.ts +9 -22
  66. package/dist/functions/dependency/dependency.js +5 -1
  67. package/dist/functions/dependency/dependency.js.map +1 -1
  68. package/dist/functions/diff/diff.d.ts +14 -7
  69. package/dist/functions/diff/diff.js.map +1 -1
  70. package/dist/functions/node/node-action.abstract.d.ts +8 -10
  71. package/dist/functions/node/node-action.abstract.js +10 -16
  72. package/dist/functions/node/node-action.abstract.js.map +1 -1
  73. package/dist/functions/node/node.abstract.js +21 -10
  74. package/dist/functions/node/node.abstract.js.map +1 -1
  75. package/dist/functions/node/node.interface.d.ts +2 -1
  76. package/dist/functions/schema/schema.js +1 -1
  77. package/dist/functions/schema/schema.js.map +1 -1
  78. package/dist/index.d.ts +8 -6
  79. package/dist/index.js +6 -4
  80. package/dist/index.js.map +1 -1
  81. package/dist/index.type.d.ts +5 -0
  82. package/dist/index.type.js +2 -0
  83. package/dist/index.type.js.map +1 -0
  84. package/dist/main.d.ts +4 -3
  85. package/dist/main.js +27 -11
  86. package/dist/main.js.map +1 -1
  87. package/dist/models/account/account.model.d.ts +6 -0
  88. package/dist/models/account/account.model.js +16 -0
  89. package/dist/models/account/account.model.js.map +1 -1
  90. package/dist/models/app/app.model.d.ts +0 -10
  91. package/dist/models/app/app.model.js +0 -30
  92. package/dist/models/app/app.model.js.map +1 -1
  93. package/dist/models/deployment/deployment.schema.d.ts +4 -0
  94. package/dist/models/deployment/deployment.schema.js +4 -0
  95. package/dist/models/deployment/deployment.schema.js.map +1 -1
  96. package/dist/models/environment/environment.model.d.ts +2 -2
  97. package/dist/models/environment/environment.model.js +2 -2
  98. package/dist/models/execution/execution.model.d.ts +1 -1
  99. package/dist/models/execution/execution.model.js +1 -1
  100. package/dist/models/image/image.model.d.ts +4 -3
  101. package/dist/models/image/image.model.js +7 -6
  102. package/dist/models/image/image.model.js.map +1 -1
  103. package/dist/models/model.abstract.js +1 -1
  104. package/dist/models/model.abstract.js.map +1 -1
  105. package/dist/models/pipeline/pipeline.model.d.ts +1 -1
  106. package/dist/models/pipeline/pipeline.model.js +1 -1
  107. package/dist/models/server/server.model.d.ts +2 -2
  108. package/dist/models/server/server.model.js +2 -2
  109. package/dist/models/service/service.model.d.ts +28 -11
  110. package/dist/models/service/service.model.js +56 -16
  111. package/dist/models/service/service.model.js.map +1 -1
  112. package/dist/models/service/service.schema.d.ts +46 -2
  113. package/dist/models/service/service.schema.js +54 -2
  114. package/dist/models/service/service.schema.js.map +1 -1
  115. package/dist/modes/commit.mode.d.ts +2 -2
  116. package/dist/modes/commit.mode.js +2 -2
  117. package/dist/modes/generate.mode.d.ts +2 -1
  118. package/dist/modes/generate.mode.js +3 -2
  119. package/dist/modes/generate.mode.js.map +1 -1
  120. package/dist/modes/run-action.mode.d.ts +1 -1
  121. package/dist/modes/run-action.mode.js +1 -1
  122. package/dist/modes/validate.mode.d.ts +24 -0
  123. package/dist/modes/validate.mode.js +89 -11
  124. package/dist/modes/validate.mode.js.map +1 -1
  125. package/dist/modules/module.container.d.ts +7 -1
  126. package/dist/modules/module.container.js +41 -5
  127. package/dist/modules/module.container.js.map +1 -1
  128. package/dist/modules/test-module.container.js +35 -83
  129. package/dist/modules/test-module.container.js.map +1 -1
  130. package/dist/overlays/overlay.abstract.js +1 -1
  131. package/dist/overlays/overlay.abstract.js.map +1 -1
  132. package/dist/resources/resource-action.interface.d.ts +4 -2
  133. package/dist/resources/resource.abstract.d.ts +50 -8
  134. package/dist/resources/resource.abstract.js +63 -32
  135. package/dist/resources/resource.abstract.js.map +1 -1
  136. package/dist/resources/resource.interface.d.ts +0 -2
  137. package/dist/resources/resource.schema.d.ts +11 -1
  138. package/dist/resources/resource.schema.js +11 -1
  139. package/dist/resources/resource.schema.js.map +1 -1
  140. package/dist/services/event/event.service.d.ts +2 -2
  141. package/dist/services/event/event.service.js.map +1 -1
  142. package/dist/services/input/input.service.d.ts +30 -2
  143. package/dist/services/input/input.service.js +71 -4
  144. package/dist/services/input/input.service.js.map +1 -1
  145. package/dist/services/serialization/model/model-serialization.service.d.ts +4 -6
  146. package/dist/services/serialization/model/model-serialization.service.js +20 -17
  147. package/dist/services/serialization/model/model-serialization.service.js.map +1 -1
  148. package/dist/services/serialization/resource/resource-serialization.service.d.ts +7 -6
  149. package/dist/services/serialization/resource/resource-serialization.service.js +25 -12
  150. package/dist/services/serialization/resource/resource-serialization.service.js.map +1 -1
  151. package/dist/services/state-management/local.state-provider.d.ts +25 -9
  152. package/dist/services/state-management/local.state-provider.js +127 -21
  153. package/dist/services/state-management/local.state-provider.js.map +1 -1
  154. package/dist/services/state-management/remote.state-provider.d.ts +216 -0
  155. package/dist/services/state-management/remote.state-provider.js +645 -0
  156. package/dist/services/state-management/remote.state-provider.js.map +1 -0
  157. package/dist/services/state-management/state-management.service.d.ts +83 -40
  158. package/dist/services/state-management/state-management.service.js +130 -26
  159. package/dist/services/state-management/state-management.service.js.map +1 -1
  160. package/dist/services/state-management/state-provider.interface.d.ts +50 -9
  161. package/dist/services/state-management/state-provider.interface.js +14 -1
  162. package/dist/services/state-management/state-provider.interface.js.map +1 -1
  163. package/dist/services/state-management/terraform-state.service.d.ts +32 -9
  164. package/dist/services/state-management/terraform-state.service.js +64 -21
  165. package/dist/services/state-management/terraform-state.service.js.map +1 -1
  166. package/dist/services/state-management/test.state-provider.d.ts +11 -10
  167. package/dist/services/state-management/test.state-provider.js +35 -14
  168. package/dist/services/state-management/test.state-provider.js.map +1 -1
  169. package/dist/services/terraform/terraform.service.d.ts +57 -3
  170. package/dist/services/terraform/terraform.service.js +95 -8
  171. package/dist/services/terraform/terraform.service.js.map +1 -1
  172. package/dist/services/terraform/terraform.type.js +1 -1
  173. package/dist/services/terraform/terraform.type.js.map +1 -1
  174. package/dist/services/transaction/transaction.service.d.ts +29 -5
  175. package/dist/services/transaction/transaction.service.js +198 -34
  176. package/dist/services/transaction/transaction.service.js.map +1 -1
  177. package/dist/services/validation/validation.service.d.ts +2 -2
  178. package/dist/{functions → utilities}/diff/diff.utility.d.ts +2 -1
  179. package/dist/{functions → utilities}/diff/diff.utility.js +4 -3
  180. package/dist/utilities/diff/diff.utility.js.map +1 -0
  181. package/dist/utilities/file/file.utility.d.ts +6 -7
  182. package/dist/utilities/file/file.utility.js +13 -68
  183. package/dist/utilities/file/file.utility.js.map +1 -1
  184. package/dist/utilities/hcl/hcl.utility.d.ts +83 -16
  185. package/dist/utilities/hcl/hcl.utility.js +200 -27
  186. package/dist/utilities/hcl/hcl.utility.js.map +1 -1
  187. package/dist/utilities/http/http.utility.d.ts +57 -0
  188. package/dist/utilities/http/http.utility.js +98 -0
  189. package/dist/utilities/http/http.utility.js.map +1 -0
  190. package/dist/utilities/string/string.utility.d.ts +23 -3
  191. package/dist/utilities/string/string.utility.js +29 -3
  192. package/dist/utilities/string/string.utility.js.map +1 -1
  193. package/dist/utilities/terraform/terraform.utility.d.ts +70 -21
  194. package/dist/utilities/terraform/terraform.utility.js +255 -66
  195. package/dist/utilities/terraform/terraform.utility.js.map +1 -1
  196. package/dist/utilities/test-helpers/test-classes.d.ts +19 -0
  197. package/dist/utilities/test-helpers/test-classes.js +22 -0
  198. package/dist/utilities/test-helpers/test-classes.js.map +1 -1
  199. package/dist/utilities/test-helpers/test-models.d.ts +8 -1
  200. package/dist/utilities/test-helpers/test-models.js +25 -12
  201. package/dist/utilities/test-helpers/test-models.js.map +1 -1
  202. package/dist/utilities/test-helpers/test-modes.d.ts +1 -1
  203. package/dist/utilities/test-helpers/test-modes.js +36 -13
  204. package/dist/utilities/test-helpers/test-modes.js.map +1 -1
  205. package/dist/utilities/test-helpers/test-modules.d.ts +6 -0
  206. package/dist/utilities/test-helpers/test-modules.js +6 -0
  207. package/dist/utilities/test-helpers/test-modules.js.map +1 -1
  208. package/dist/utilities/test-helpers/test-overlays.d.ts +3 -1
  209. package/dist/utilities/test-helpers/test-overlays.js +8 -2
  210. package/dist/utilities/test-helpers/test-overlays.js.map +1 -1
  211. package/dist/utilities/test-helpers/test-resources.d.ts +4 -2
  212. package/dist/utilities/test-helpers/test-resources.js +22 -20
  213. package/dist/utilities/test-helpers/test-resources.js.map +1 -1
  214. package/package.json +7 -2
  215. package/dist/functions/diff/diff.utility.js.map +0 -1
  216. package/dist/services/state-management/file-app-lock.utility.d.ts +0 -43
  217. package/dist/services/state-management/file-app-lock.utility.js +0 -124
  218. package/dist/services/state-management/file-app-lock.utility.js.map +0 -1
  219. package/dist/services/state-management/local-encryption.state-provider.d.ts +0 -71
  220. package/dist/services/state-management/local-encryption.state-provider.js +0 -116
  221. package/dist/services/state-management/local-encryption.state-provider.js.map +0 -1
@@ -45,12 +45,13 @@ class OctoTerraformResource {
45
45
  /**
46
46
  * @internal
47
47
  */
48
- constructor(resourceId, resourceContext, moduleId, explicitParentResourceIds = [], providerRef, // Fully-qualified provider reference (`aws._111111111-us-east-1`).
48
+ constructor(resourceId, resourceContext, moduleId, destroyLosesData, explicitParentResourceIds = [], providerRef, // Fully-qualified provider reference (`aws._111111111-us-east-1`).
49
49
  externalResultExpression, // External resource marker with `data.external.<name>.result` value.
50
50
  responseDefaults = {}) {
51
51
  this.resourceId = resourceId;
52
52
  this.resourceContext = resourceContext;
53
53
  this.moduleId = moduleId;
54
+ this.destroyLosesData = destroyLosesData;
54
55
  this.explicitParentResourceIds = explicitParentResourceIds;
55
56
  this.providerRef = providerRef;
56
57
  this.externalResultExpression = externalResultExpression;
@@ -66,9 +67,13 @@ class OctoTerraformResource {
66
67
  });
67
68
  }
68
69
  }
69
- addTerraformResource(type, name, spec = {}) {
70
- const intraResourceDependencies = this.terraformResources.length === 0 ? [] : [this.terraformResources[this.terraformResources.length - 1].address];
70
+ addTerraformResource(type, name, spec = {}, options = {}) {
71
+ const chain = options.chain ?? true;
72
+ const intraResourceDependencies = chain && this.lastChainedAddress ? [this.lastChainedAddress] : [];
71
73
  const terraformResource = new TerraformResource(type, StringUtility.sanitizeForIdentifier(name), intraResourceDependencies);
74
+ if (chain) {
75
+ this.lastChainedAddress = terraformResource.address;
76
+ }
72
77
  if (this.providerRef && !('provider' in spec)) {
73
78
  terraformResource.attribute('provider', new ExpressionHclNode(this.providerRef));
74
79
  }
@@ -105,6 +110,7 @@ class TerraformModule {
105
110
  this.moduleId = moduleId;
106
111
  this.dataSources = [];
107
112
  this.hasExternalResources = false; // True when folder has external resources requiring null/external configs.
113
+ this.moves = []; // Resources taking over a state.
108
114
  this.needsProjectRoot = false; // True when a resource named a local file, requiring the project root variable.
109
115
  this.providerKeys = new Set(); // Specific providers this folder's resources require.
110
116
  this.resources = [];
@@ -189,7 +195,7 @@ export class TerraformService {
189
195
  */
190
196
  addTerraformProvider(providerType, accountId, regionId, spec = {}, { accountName, setRegionAttribute } = {}) {
191
197
  if (!(providerType in this.requiredProviders)) {
192
- throw new Error(`Provider type "${providerType}" is not configured! Call registerTerraformConfig() with a "${providerType}" entry before registering providers.`);
198
+ throw new Error(`Provider type "${providerType}" is not configured! Declare it under "terraform.requiredProviders" in the definition file, or pass it to registerTerraformConfig(), before registering providers.`);
193
199
  }
194
200
  // Terraform identifiers (here, the provider alias) must start with a letter or underscore.
195
201
  const sanitizedAlias = StringUtility.sanitizeForIdentifier(`${accountName ?? accountId}-${regionId}`);
@@ -239,6 +245,7 @@ export class TerraformService {
239
245
  .map((module) => ({
240
246
  hasExternalResources: module.hasExternalResources,
241
247
  moduleId: module.moduleId,
248
+ ...this.getFolderMoves(module),
242
249
  providers: [...module.providerKeys].sort().map((key) => {
243
250
  const provider = this.providers.get(key);
244
251
  return {
@@ -265,6 +272,7 @@ export class TerraformService {
265
272
  return [...this.resourceRegistry.values()].map((r) => {
266
273
  const isExternal = r.externalResultExpression !== undefined;
267
274
  return {
275
+ destroyLosesData: r.destroyLosesData,
268
276
  entireResponseOutput: isExternal ? r.outputs.get(r.resourceId).name : undefined,
269
277
  moduleId: r.moduleId,
270
278
  outputMappings: isExternal ? [] : [...r.outputs.entries()].map(([key, o]) => ({ key, outputName: o.name })),
@@ -313,12 +321,27 @@ export class TerraformService {
313
321
  }
314
322
  return referrers;
315
323
  }
324
+ /**
325
+ * Records that a resource takes over the terraform state of a resource octo committed, so terraform
326
+ * updates or replaces the infrastructure in place instead of creating the new resource beside the old.
327
+ * Within one folder, the folder renders a `moved` block from each of the old resource's addresses to
328
+ * the new one's. Between folders, the folder record lists the move, and `TerraformUtility`
329
+ * moves the state before terraform runs.
330
+ */
331
+ moveResource(fromModuleId, fromResourceId, toModuleId, toResourceId) {
332
+ this.module(toModuleId).moves.push({ fromModuleId, fromResourceId, toResourceId });
333
+ }
316
334
  /**
317
335
  * Phase 2 of rendering: prints the four files of every folder from the wiring computed in
318
336
  * phase 1. Makes no decisions — when a {@link RefHclNode} renders, its answer is looked up in the
319
337
  * folder's precomputed `resolvedRefs`. Cross-folder dependency cycles throw (in phase 1).
338
+ *
339
+ * A folder also keeps every provider block `previousFolders` recorded for it that none of its
340
+ * resources use any more, so terraform can still destroy what that provider created. A resource
341
+ * whose id moved to another account, for one, leaves its old address in the folder's state, bound
342
+ * to the old account's provider.
320
343
  */
321
- renderAllModules() {
344
+ renderAllModules(previousFolders = []) {
322
345
  const wiring = this.computeWiring();
323
346
  const result = new Map();
324
347
  for (const module of this.modules.values()) {
@@ -333,6 +356,15 @@ export class TerraformService {
333
356
  const providerType = this.providers.get(key).providerType;
334
357
  requiredProviders[providerType] = this.requiredProviders[providerType];
335
358
  }
359
+ const retainedProviders = (previousFolders.find((folder) => folder.moduleId === module.moduleId)?.providers ?? []).filter((recorded) => ![...module.providerKeys].some((key) => {
360
+ const provider = this.providers.get(key);
361
+ return (provider.providerType === recorded.providerType &&
362
+ provider.accountId === recorded.accountId &&
363
+ provider.regionId === recorded.regionId);
364
+ }));
365
+ for (const provider of retainedProviders) {
366
+ requiredProviders[provider.providerType] ??= provider.requiredProvider;
367
+ }
336
368
  if (module.hasExternalResources) {
337
369
  requiredProviders['null'] = this.requiredProviders['null'] ?? { source: 'hashicorp/null' };
338
370
  requiredProviders['external'] = this.requiredProviders['external'] ?? { source: 'hashicorp/external' };
@@ -340,8 +372,10 @@ export class TerraformService {
340
372
  const mainTf = [
341
373
  this.renderConfigBlock(requiredProviders, context),
342
374
  ...[...module.providerKeys].sort().map((key) => this.providers.get(key).block.render('', context)),
375
+ ...retainedProviders.map((provider) => provider.blockHcl),
343
376
  ...module.dataSources.map((d) => d.render(context)),
344
377
  ...module.resources.map((r) => r.terraformResources.map((t) => t.render(context, moduleWiring.parentDependsOn.get(r) ?? [])).join('\n\n')),
378
+ ...this.getMovedAddresses(module).map(({ from, to }) => `moved {\n${this.step}from = ${from}\n${this.step}to = ${to}\n}`),
345
379
  ]
346
380
  .filter(Boolean)
347
381
  .join('\n\n');
@@ -448,6 +482,7 @@ export class TerraformService {
448
482
  addTerraformData: (type, name, spec = {}) => this.addTerraformData(moduleId, type, name, spec),
449
483
  getProviderAliasRef: (accountId, regionId) => this.getProviderAliasRef(moduleId, accountId, regionId),
450
484
  getRef: ((resource, key) => this.getRef(resource, key)),
485
+ interpolate: (...parts) => this.interpolate(parts),
451
486
  jsonencode: (subject) => this.jsonencode(subject),
452
487
  localPath: (filePath) => this.localPath(moduleId, filePath),
453
488
  mapAttr: (value) => this.mapAttr(value),
@@ -524,7 +559,7 @@ export class TerraformService {
524
559
  const schemaClass = octoResource.constructor
525
560
  .NODE_SCHEMA;
526
561
  const responseDefaults = typeof schemaClass === 'function' ? (getSchemaDefaults(schemaClass).response ?? {}) : {};
527
- const newResource = new OctoTerraformResource(octoResource.resourceId, octoResource.getContext(), moduleId, explicitParentResourceIds, providerRef, options.externalResultExpression, responseDefaults);
562
+ const newResource = new OctoTerraformResource(octoResource.resourceId, octoResource.getContext(), moduleId, octoResource.constructor.DESTROY_LOSES_DATA ?? false, explicitParentResourceIds, providerRef, options.externalResultExpression, responseDefaults);
528
563
  module.resources.push(newResource);
529
564
  this.resourceRegistry.set(octoResource.resourceId, newResource);
530
565
  return newResource;
@@ -721,6 +756,52 @@ export class TerraformService {
721
756
  const [key, provider] = matches[0];
722
757
  return { alias: provider.alias, key, providerType: provider.providerType };
723
758
  }
759
+ /**
760
+ * The moves of a folder's record: the resources whose state moves in from another folder, with the
761
+ * outputs their consumers in other folders read.
762
+ */
763
+ getFolderMoves(module) {
764
+ const moves = module.moves
765
+ .filter(({ fromModuleId }) => fromModuleId !== module.moduleId)
766
+ .map(({ fromModuleId, fromResourceId, toResourceId }) => {
767
+ const fromName = StringUtility.sanitizeForIdentifier(fromResourceId);
768
+ const toName = StringUtility.sanitizeForIdentifier(toResourceId);
769
+ return {
770
+ addresses: this.getMoveAddresses(fromResourceId, toResourceId),
771
+ fromModuleId,
772
+ outputs: [...this.resourceRegistry.get(toResourceId).outputs.values()]
773
+ .filter(({ name }) => name.startsWith(toName))
774
+ .map(({ name }) => ({ from: `${fromName}${name.slice(toName.length)}`, to: name })),
775
+ resourceId: toResourceId,
776
+ };
777
+ });
778
+ return moves.length > 0 ? { moves } : {};
779
+ }
780
+ /**
781
+ * The addresses a resource's state moves between. A block named `<resourceId><suffix>` moves from the
782
+ * block the old resource named `<its resourceId><suffix>`; a `from` the state does not hold moves nothing.
783
+ */
784
+ getMoveAddresses(fromResourceId, toResourceId) {
785
+ const fromName = StringUtility.sanitizeForIdentifier(fromResourceId);
786
+ const toName = StringUtility.sanitizeForIdentifier(toResourceId);
787
+ const addresses = [];
788
+ for (const { address } of this.resourceRegistry.get(toResourceId).terraformResources) {
789
+ const typeLength = address.indexOf('.') + 1;
790
+ const name = address.slice(typeLength);
791
+ if (name.startsWith(toName)) {
792
+ addresses.push({ from: `${address.slice(0, typeLength)}${fromName}${name.slice(toName.length)}`, to: address });
793
+ }
794
+ }
795
+ return addresses;
796
+ }
797
+ /**
798
+ * The `moved` addresses of a folder, for the resources taking over a state the same folder holds.
799
+ */
800
+ getMovedAddresses(module) {
801
+ return module.moves
802
+ .filter(({ fromModuleId }) => fromModuleId === module.moduleId)
803
+ .flatMap(({ fromResourceId, toResourceId }) => this.getMoveAddresses(fromResourceId, toResourceId));
804
+ }
724
805
  /**
725
806
  * @internal
726
807
  */
@@ -738,6 +819,12 @@ export class TerraformService {
738
819
  : resource.resourceId;
739
820
  return new RefHclNode(resourceId, key);
740
821
  }
822
+ /**
823
+ * @internal
824
+ */
825
+ interpolate(parts) {
826
+ return new InterpolatedStringHclNode(parts);
827
+ }
741
828
  /**
742
829
  * @internal
743
830
  */
@@ -805,7 +892,7 @@ export class TerraformService {
805
892
  }
806
893
  /**
807
894
  * Prints one folder's `terragrunt.hcl`: a `dependency` block per producer folder (with
808
- * `mock_outputs`, shallow-merged over any applied state, so `run-all plan` works both before the
895
+ * `mock_outputs`, shallow-merged over any applied state, so `run --all -- plan` works both before the
809
896
  * first apply and when intent renames a producer resource), and the `inputs` map wiring each auto
810
897
  * variable to the producer's output.
811
898
  */
@@ -830,7 +917,7 @@ export class TerraformService {
830
917
  `${step}}`,
831
918
  '}',
832
919
  ].join('\n'));
833
- // Dependency blocks, with mock outputs so `run-all plan` works before first apply.
920
+ // Dependency blocks, with mock outputs so `run --all -- plan` works before first apply.
834
921
  for (const producerModuleId of [...moduleWiring.moduleDependencies.keys()].sort()) {
835
922
  const dependencyName = StringUtility.sanitizeForIdentifier(producerModuleId);
836
923
  // Map each consumed output name to its mock shape: a flat string for per-key scalar outputs,
@@ -1 +1 @@
1
- {"version":3,"file":"terraform.service.js","sourceRoot":"","sources":["../../../src/services/terraform/terraform.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terraform.service.js","sourceRoot":"","sources":["../../../src/services/terraform/terraform.service.ts"],"names":[],"mappings":"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"}
@@ -146,7 +146,7 @@ export class JsonEncodeHclNode extends HclExpression {
146
146
  if (this.subject.length === 0) {
147
147
  return 'jsonencode([])';
148
148
  }
149
- const items = this.subject.map((v) => `${innerIndent}${formatValue(v, innerIndent)}`).join('\n');
149
+ const items = this.subject.map((v) => `${innerIndent}${formatValue(v, innerIndent)}`).join(',\n');
150
150
  return `jsonencode([\n${items}\n${currentIndent}])`;
151
151
  }
152
152
  const body = Object.entries(this.subject)
@@ -1 +1 @@
1
- {"version":3,"file":"terraform.type.js","sourceRoot":"","sources":["../../../src/services/terraform/terraform.type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terraform.type.js","sourceRoot":"","sources":["../../../src/services/terraform/terraform.type.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,mBAAmB,CAAC;AAgB9D;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,IAAI,cAAc,CAAC,KAAqD,CAAC,CAAC;AACnF,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,OAAgB,aAAa;IACjC;;OAEG;IACH,WAAW,CAAC,KAAmB,IAAS,CAAC;CAG1C;AAED;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAClD;;OAEG;IACH,YAA6B,IAAY;QACvC,KAAK,EAAE,CAAC;QADmB,SAAI,GAAJ,IAAI,CAAQ;IAEzC,CAAC;IAED;;OAEG;IACM,MAAM;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,aAAa;IAC1D;;OAEG;IACH,YAA6B,KAAiC;QAC5D,KAAK,EAAE,CAAC;QADmB,UAAK,GAAL,KAAK,CAA4B;IAE9D,CAAC;IAED;;OAEG;IACM,WAAW,CAAC,IAAkB;QACrC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvB,IAAI,CAAC,YAAY,aAAa,EAAE,CAAC;gBAC/B,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACM,MAAM,CAAC,MAAc,EAAE,OAAsB;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,IAAI,OAAO,GAAG,CAAC;IACxB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,aAAa;IAClD;;OAEG;IACH,YAA6B,OAA2B;QACtD,KAAK,EAAE,CAAC;QADmB,YAAO,GAAP,OAAO,CAAoB;IAExD,CAAC;IAED;;OAEG;IACM,WAAW,CAAC,IAAkB;QACrC,MAAM,IAAI,GAAG,CAAC,KAAc,EAAQ,EAAE;YACpC,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBACnC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC1B,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;iBAAM,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IAED;;;OAGG;IACM,MAAM,CAAC,aAAqB,EAAE,OAAsB;QAC3D,MAAM,WAAW,GAAG,CAAC,KAAc,EAAE,MAAc,EAAU,EAAE;YAC7D,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBACnC,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,CAAC;YAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,IAAI,KAAK,GAAG,CAAC;YACtB,CAAC;YACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAEzC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtE,OAAO,IAAI,KAAK,GAAG,CAAC;YACtB,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;gBACnD,MAAM,GAAG,GAAG,2BAA2B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC/D,OAAO,GAAG,UAAU,GAAG,GAAG,MAAM,WAAW,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC;YAC/D,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,GAAG,CAAC;QAChD,CAAC,CAAC;QAEF,MAAM,WAAW,GAAG,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;QAEjD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAChC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,gBAAgB,CAAC;YAC1B,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,GAAG,WAAW,GAAG,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3G,OAAO,iBAAiB,KAAK,KAAK,aAAa,IAAI,CAAC;QACtD,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC;aACtE,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,iBAAiB,IAAI,KAAK,aAAa,IAAI,CAAC;IACrD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,aAAa;IAC5C;;OAEG;IACH,YAA6B,KAAsB;QACjD,KAAK,EAAE,CAAC;QADmB,UAAK,GAAL,KAAK,CAAiB;IAEnD,CAAC;IAED;;OAEG;IACM,WAAW,CAAC,IAAkB;QACrC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAED;;;OAGG;IACM,MAAM,CAAC,MAAc,EAAE,OAAsB;QACpD,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAC5E,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,aAAa;IAC/C;;OAEG;IACH,YAA6B,KAAmD;QAC9E,KAAK,EAAE,CAAC;QADmB,UAAK,GAAL,KAAK,CAA8C;IAEhF,CAAC;IAED;;OAEG;IACM,MAAM;QACb,OAAO,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC9E,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,aAAa;IAC3C;;OAEG;IACH,YAA6B,OAAkC;QAC7D,KAAK,EAAE,CAAC;QADmB,YAAO,GAAP,OAAO,CAA2B;IAE/D,CAAC;IAED;;OAEG;IACM,WAAW,CAAC,IAAkB;QACrC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,CAAC;IAED;;;;OAIG;IACM,MAAM,CAAC,MAAc,EAAE,OAAsB;QACpD,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,UAAU,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACrG,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,GAAG,CAAC;IAChD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,aAAa;IAC9C;;OAEG;IACH,YAA6B,KAAe;QAC1C,KAAK,EAAE,CAAC;QADmB,UAAK,GAAL,KAAK,CAAU;IAE5C,CAAC;IAED;;;OAGG;IACM,MAAM,CAAC,MAAc,EAAE,OAAsB;QACpD,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QACzC,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,GAAG,CAAC;IACnF,CAAC;CACF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,UAAW,SAAQ,aAAa;IAC3C;;OAEG;IACH,YACW,UAAkB,EAClB,GAAW,EACX,iBAA0B,KAAK;QAExC,KAAK,EAAE,CAAC;QAJC,eAAU,GAAV,UAAU,CAAQ;QAClB,QAAG,GAAH,GAAG,CAAQ;QACX,mBAAc,GAAd,cAAc,CAAiB;IAG1C,CAAC;IAED;;OAEG;IACM,WAAW,CAAC,IAAkB;QACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACM,MAAM,CAAC,OAAe,EAAE,OAAsB;QACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,QAAQ,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpE,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,aAAa;IAC5C;;OAEG;IACH,YAA6B,MAAe;QAC1C,KAAK,EAAE,CAAC;QADmB,WAAM,GAAN,MAAM,CAAS;IAE5C,CAAC;IAED;;;;;OAKG;IACM,MAAM,CAAC,aAAqB,EAAE,OAAsB;QAC3D,MAAM,UAAU,GAAG,CAAC,KAAc,EAAE,MAAc,EAAU,EAAE;YAC5D,IAAI,KAAK,YAAY,aAAa,EAAE,CAAC;gBACnC,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,UAAU,GAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YACxE,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAsB,CAAC,EAAE,CAAC;gBAChD,OAAO,KAAe,CAAC;YACzB,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,OAAO,QAAQ,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC;YACjD,CAAC;YAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAChD,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;gBACzC,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;oBAClD,OAAO,GAAG,UAAU,GAAG,CAAC,MAAM,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC5D,CAAC,CAAC,CAAC;gBAEH,OAAO,aAAa,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC;YACvD,CAAC;YAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC;QAEF,OAAO,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAChD,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,kBAAkB;IAC7B;;OAEG;IACH,YACmB,GAAW,EACX,KAAoB;QADpB,QAAG,GAAH,GAAG,CAAQ;QACX,UAAK,GAAL,KAAK,CAAe;IACpC,CAAC;IAEJ;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,MAAc,EAAE,OAAsB;QAC3C,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACxE,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,cAAc;IAGzB;;OAEG;IACH,YAA6B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;QALxB,aAAQ,GAA4C,EAAE,CAAC;IAK5B,CAAC;IAE7C;;;OAGG;IACH,SAAS,CAAC,GAAW,EAAE,KAAc;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAY;QAChB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,MAAc,EAAE,OAAsB;QAC3C,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;QAC1C,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1F,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,MAAM,GAAG,CAAC;IAC/E,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,aAAa;IAGxB;;OAEG;IACH,IAAY,OAAO;QACjB,OAAO,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,YACmB,IAAY,EACZ,IAAY;QADZ,SAAI,GAAJ,IAAI,CAAQ;QACZ,SAAI,GAAJ,IAAI,CAAQ;QAdd,aAAQ,GAA4C,EAAE,CAAC;IAerE,CAAC;IAEJ;;;OAGG;IACH,SAAS,CAAC,GAAW,EAAE,KAAc;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAY;QAChB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,SAAiB;QACnB,OAAO,IAAI,iBAAiB,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAsB;QAC3B,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC3F,OAAO,SAAS,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,QAAQ,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IACnF,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,eAAe;IAC1B;;OAEG;IACH,YACmB,IAAY,EACZ,KAAoB,EACpB,YAAqB,KAAK;QAF1B,SAAI,GAAJ,IAAI,CAAQ;QACZ,UAAK,GAAL,KAAK,CAAe;QACpB,cAAS,GAAT,SAAS,CAAiB;IAC1C,CAAC;IAEJ;;;OAGG;IACH,MAAM,CAAC,OAAsB;QAC3B,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,WAAW,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACpF,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,WAAW,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1D,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,iBAAiB;IAC5B;;;OAGG;IACH,IAAI,OAAO;QACT,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;IAID;;OAEG;IACH,YACmB,IAAY,EACZ,IAAY,EACZ,cAAwB;QAFxB,SAAI,GAAJ,IAAI,CAAQ;QACZ,SAAI,GAAJ,IAAI,CAAQ;QACZ,mBAAc,GAAd,cAAc,CAAU;QAR1B,aAAQ,GAA4C,EAAE,CAAC;IASrE,CAAC;IAEJ;;;OAGG;IACH,SAAS,CAAC,GAAW,EAAE,KAAc;QACnC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAY;QAChB,MAAM,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC7B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,OAAsB,EAAE,kBAA4B,EAAE;QAC3D,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC3F,MAAM,SAAS,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/D,MAAM,iBAAiB,GACrB,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,iBAAiB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAE7F,OAAO,aAAa,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,QAAQ,gBAAgB,CAAC,IAAI,CACvE,IAAI,CACL,GAAG,iBAAiB,CAAC,CAAC,CAAC,OAAO,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;IAC/D,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,iBAAiB;IAC5B;;OAEG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,iBAAiB,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,YACmB,IAAY,EACZ,cAA6B,EAC7B,OAA8D;QAF9D,SAAI,GAAJ,IAAI,CAAQ;QACZ,mBAAc,GAAd,cAAc,CAAe;QAC7B,YAAO,GAAP,OAAO,CAAuD;IAC9E,CAAC;IAEJ;;OAEG;IACH,WAAW,CAAC,IAAkB;QAC5B,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,OAAsB;QAC3B,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,UAAU,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,aAAa,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QACvG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,kBAAkB,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,aAAa,IAAI,CAAC,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;IAC5D,CAAC;CACF"}
@@ -6,6 +6,7 @@ import { OverlayDataRepository } from '../../overlays/overlay-data.repository.js
6
6
  import { ResourceDataRepository } from '../../resources/resource-data.repository.js';
7
7
  import { EventService } from '../event/event.service.js';
8
8
  import { InputService } from '../input/input.service.js';
9
+ import { ResourceSerializationService } from '../serialization/resource/resource-serialization.service.js';
9
10
  import { TerraformService } from '../terraform/terraform.service.js';
10
11
  /**
11
12
  * @internal
@@ -16,6 +17,7 @@ export declare class TransactionService {
16
17
  private readonly moduleContainer;
17
18
  private readonly overlayDataRepository;
18
19
  private readonly resourceDataRepository;
20
+ private readonly resourceSerializationService;
19
21
  private readonly terraformService;
20
22
  private modelActions;
21
23
  private overlayActions;
@@ -23,7 +25,7 @@ export declare class TransactionService {
23
25
  /**
24
26
  * @internal
25
27
  */
26
- constructor(eventService: EventService, inputService: InputService, moduleContainer: ModuleContainer, overlayDataRepository: OverlayDataRepository, resourceDataRepository: ResourceDataRepository, terraformService: TerraformService);
28
+ constructor(eventService: EventService, inputService: InputService, moduleContainer: ModuleContainer, overlayDataRepository: OverlayDataRepository, resourceDataRepository: ResourceDataRepository, resourceSerializationService: ResourceSerializationService, terraformService: TerraformService);
27
29
  /**
28
30
  * Runs the delete action of every **external** resource in `resourceDiffs` that is being deleted.
29
31
  *
@@ -71,10 +73,6 @@ export declare class TransactionService {
71
73
  * @internal
72
74
  */
73
75
  unregisterModelActions(forModel: Constructable<UnknownModel>): void;
74
- /**
75
- * @internal
76
- */
77
- unregisterOverlayActions(forOverlay: Constructable<UnknownOverlay>): void;
78
76
  /**
79
77
  * @internal
80
78
  */
@@ -83,6 +81,11 @@ export declare class TransactionService {
83
81
  * @internal
84
82
  */
85
83
  private applyResources;
84
+ /**
85
+ * Refuses two names the `uniqueProperties` of one resource class say must differ: two values of its path,
86
+ * from two resources or from one, sharing the values of its domain.
87
+ */
88
+ private ensureUniqueNames;
86
89
  /**
87
90
  * Contributes every resource in the new (desired) resource graph to the shared
88
91
  * {@link TerraformService}: terraform resources via `toHCL()`, external resources via
@@ -106,6 +109,27 @@ export declare class TransactionService {
106
109
  * @internal
107
110
  */
108
111
  private getMatchingDiffs;
112
+ /**
113
+ * The scope of the resources a node's actions create: the models the node sits under. An overlay
114
+ * sits where the nodes its own module created sit; the nodes it borrows from other modules are what
115
+ * it joins, so joining one more never moves what it created. An overlay joining only borrowed nodes
116
+ * sits where all of them sit. A model another member sits under is left out, since that member's
117
+ * context already names it.
118
+ */
119
+ private getResourceScope;
120
+ /**
121
+ * The names a resource holds that the `uniqueProperties` of its class say the provider keeps unique,
122
+ * each keyed by its class, path and domain. A path with no value holds no name.
123
+ */
124
+ private getUniqueNames;
125
+ /**
126
+ * Hands each committed resource's terraform state to the resource taking it over, so the two are one
127
+ * piece of infrastructure, updated or replaced in place: a resource now rendered into another module's
128
+ * folder, and an added resource taking a name of a deleted resource of its class. Without it terraform
129
+ * creates the new one while the old one is destroyed, and the provider refuses a name still held.
130
+ * A renamed external resource is left out: octo runs its actions itself, and a move would skip them.
131
+ */
132
+ private moveResources;
109
133
  /**
110
134
  * Before assigning order to a diff, all its node's parent diffs must be processed.
111
135
  * E.g. diff to add environment, depends on region to exist, thus add region diff gets processed first.