@quadnix/octo-build 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 (38) hide show
  1. package/README.md +108 -21
  2. package/dist/commands/apply/apply.command.js +32 -38
  3. package/dist/commands/apply/apply.command.js.map +1 -1
  4. package/dist/commands/commit/commit.command.d.ts +4 -3
  5. package/dist/commands/commit/commit.command.js +31 -44
  6. package/dist/commands/commit/commit.command.js.map +1 -1
  7. package/dist/commands/create-app/generator-octo-app-template/generators/app/index.js +15 -6
  8. package/dist/commands/create-app/generator-octo-app-template/generators/app/index.js.map +1 -1
  9. package/dist/commands/create-app/generator-octo-app-template/generators/app/templates/README.md.ejs +25 -16
  10. package/dist/commands/create-app/generator-octo-app-template/generators/app/templates/gitignore.ejs +3 -2
  11. package/dist/commands/create-app/generator-octo-app-template/generators/app/templates/src/aws-dynamodb-service/octo.yaml.ejs +1 -1
  12. package/dist/commands/create-app/generator-octo-app-template/generators/app/templates/src/aws-ecs-server/octo.yaml.ejs +14 -16
  13. package/dist/commands/create-app/generator-octo-app-template/generators/app/templates/src/aws-s3-website/octo.yaml.ejs +11 -3
  14. package/dist/commands/create-model/generator-octo-model-template/generators/app/templates/models/model/model.ts.ejs +38 -0
  15. package/dist/commands/generate/generate.command.d.ts +3 -1
  16. package/dist/commands/generate/generate.command.js +12 -12
  17. package/dist/commands/generate/generate.command.js.map +1 -1
  18. package/dist/commands/get-response/get-response.command.js +3 -3
  19. package/dist/commands/get-response/get-response.command.js.map +1 -1
  20. package/dist/commands/lock/lock.command.d.ts +8 -3
  21. package/dist/commands/lock/lock.command.js +16 -13
  22. package/dist/commands/lock/lock.command.js.map +1 -1
  23. package/dist/commands/run-action/run-action.command.js +4 -10
  24. package/dist/commands/run-action/run-action.command.js.map +1 -1
  25. package/dist/commands/unlock/unlock.command.d.ts +5 -5
  26. package/dist/commands/unlock/unlock.command.js +15 -31
  27. package/dist/commands/unlock/unlock.command.js.map +1 -1
  28. package/dist/commands/validate/validate.command.d.ts +1 -1
  29. package/dist/commands/validate/validate.command.js +9 -15
  30. package/dist/commands/validate/validate.command.js.map +1 -1
  31. package/dist/resources/octo-v1.schema.json +25 -11
  32. package/dist/utilities/definition/yaml/yaml-definition.utility.d.ts +15 -13
  33. package/dist/utilities/definition/yaml/yaml-definition.utility.js +38 -22
  34. package/dist/utilities/definition/yaml/yaml-definition.utility.js.map +1 -1
  35. package/dist/utilities/octo/octo.utility.d.ts +62 -45
  36. package/dist/utilities/octo/octo.utility.js +162 -128
  37. package/dist/utilities/octo/octo.utility.js.map +1 -1
  38. package/package.json +5 -3
@@ -1,5 +1,5 @@
1
- import { type Constructable, LocalEncryptionStateProvider, LocalStateProvider, type Octo, TestStateProvider } from '@quadnix/octo';
2
- import type { HtmlReportEventListener } from '@quadnix/octo-event-listeners/html-report';
1
+ import { type Constructable, LocalStateProvider, type Octo, RemoteStateProvider, TestStateProvider } from '@quadnix/octo';
2
+ import type { JournalEventListener } from '@quadnix/octo-event-listeners/journal';
3
3
  import type { LoggingEventListener } from '@quadnix/octo-event-listeners/logging';
4
4
  /**
5
5
  * Reads `octo.yml` and turns each section into the values {@link Octo} is booted with.
@@ -60,16 +60,13 @@ export declare class YamlDefinitionUtility {
60
60
  className: Constructable<any>;
61
61
  }[]>;
62
62
  /**
63
- * @param logDestination Where the logging listener writes. `run-action` passes `stderr`, because
64
- * terraform's `data "external"` protocol requires that command's stdout to carry only the response
65
- * JSON.
63
+ * The listeners the definition lists. The logging listener writes to stderr, so stdout carries only
64
+ * a command's own output.
66
65
  */
67
- resolveListeners({ logDestination }?: {
68
- logDestination?: 'stderr' | 'stdout';
69
- }): Promise<{
66
+ resolveListeners(): Promise<{
70
67
  args?: unknown[];
71
68
  metadata?: Record<string, string>;
72
- type: Constructable<HtmlReportEventListener | LoggingEventListener>;
69
+ type: Constructable<JournalEventListener | LoggingEventListener>;
73
70
  }[]>;
74
71
  /**
75
72
  * Pairs each `modules` entry with its imported class, and resolves its inputs.
@@ -80,17 +77,22 @@ export declare class YamlDefinitionUtility {
80
77
  moduleInputs: Record<string, unknown>;
81
78
  }[];
82
79
  /**
83
- * Builds the {@link IStateProvider} the definition asks for.
80
+ * How often terraform state is checked into the state provider while a terraform command runs, or
81
+ * `undefined` for the default. Only `RemoteStateProvider` sets it.
82
+ */
83
+ resolveStateCheckInIntervalInMs(): number | undefined;
84
+ /**
85
+ * Builds the `IStateProvider` the definition asks for.
84
86
  */
85
87
  resolveStateProvider(): {
86
- type: LocalEncryptionStateProvider;
87
- } | {
88
88
  type: LocalStateProvider;
89
+ } | {
90
+ type: RemoteStateProvider;
89
91
  } | {
90
92
  type: TestStateProvider;
91
93
  };
92
94
  /**
93
- * The tag registrations the definition declares, in the shape {@link Octo.registerTags} takes.
95
+ * The tag registrations the definition declares, in the shape `Octo.registerTags()` takes.
94
96
  *
95
97
  * A `scope` naming a `moduleId` reaches that module's resources; an absent or empty one reaches
96
98
  * every resource of the run.
@@ -2,7 +2,7 @@ import { existsSync, readFileSync } from 'fs';
2
2
  import { createRequire } from 'module';
3
3
  import { dirname, join, resolve } from 'path';
4
4
  import { fileURLToPath, pathToFileURL } from 'url';
5
- import { LocalEncryptionStateProvider, LocalStateProvider, TestStateProvider, } from '@quadnix/octo';
5
+ import { LocalStateProvider, RemoteStateProvider, TestStateProvider, } from '@quadnix/octo';
6
6
  import { Ajv2020 as Ajv } from 'ajv/dist/2020.js';
7
7
  import { load } from 'js-yaml';
8
8
  const __dirname = dirname(fileURLToPath(import.meta.url));
@@ -106,33 +106,27 @@ export class YamlDefinitionUtility {
106
106
  return imports;
107
107
  }
108
108
  /**
109
- * @param logDestination Where the logging listener writes. `run-action` passes `stderr`, because
110
- * terraform's `data "external"` protocol requires that command's stdout to carry only the response
111
- * JSON.
109
+ * The listeners the definition lists. The logging listener writes to stderr, so stdout carries only
110
+ * a command's own output.
112
111
  */
113
- async resolveListeners({ logDestination = 'stdout' } = {}) {
112
+ async resolveListeners() {
114
113
  const listeners = [];
115
114
  if (!this.definition.settings?.listeners?.length) {
116
115
  return listeners;
117
116
  }
118
117
  for (const listenerDef of this.definition.settings.listeners) {
119
- if (listenerDef.type === 'HtmlReportEventListener') {
120
- const imported = await import('@quadnix/octo-event-listeners/html-report');
121
- listeners.push({
122
- args: [{ reportDir: listenerDef.reportDir }],
123
- type: imported.HtmlReportEventListener,
124
- });
118
+ if (listenerDef.type === 'JournalEventListener') {
119
+ const imported = await import('@quadnix/octo-event-listeners/journal');
120
+ listeners.push({ type: imported.JournalEventListener });
125
121
  }
126
122
  else if (listenerDef.type === 'LoggingEventListener') {
127
123
  const imported = await import('@quadnix/octo-event-listeners/logging');
128
- // Default to whether the destination is a terminal, so a redirected log carries no escape
129
- // codes. An explicit `colorize:` in the definition still wins.
130
- const destinationStream = logDestination === 'stderr' ? process.stderr : process.stdout;
124
+ // Default to whether stderr is a terminal, so a redirected log carries no escape codes. An
125
+ // explicit `colorize:` in the definition still wins.
131
126
  listeners.push({
132
127
  args: [
133
128
  {
134
- colorize: listenerDef.colorize ?? Boolean(destinationStream.isTTY),
135
- destination: logDestination,
129
+ colorize: listenerDef.colorize ?? Boolean(process.stderr.isTTY),
136
130
  level: listenerDef.level ?? 'info',
137
131
  },
138
132
  ],
@@ -165,21 +159,43 @@ export class YamlDefinitionUtility {
165
159
  return modules;
166
160
  }
167
161
  /**
168
- * Builds the {@link IStateProvider} the definition asks for.
162
+ * How often terraform state is checked into the state provider while a terraform command runs, or
163
+ * `undefined` for the default. Only `RemoteStateProvider` sets it.
164
+ */
165
+ resolveStateCheckInIntervalInMs() {
166
+ const stateProvider = this.definition.settings.stateProvider;
167
+ if (stateProvider.type !== 'RemoteStateProvider' || stateProvider.checkInIntervalInSeconds === undefined) {
168
+ return undefined;
169
+ }
170
+ return stateProvider.checkInIntervalInSeconds * 1000;
171
+ }
172
+ /**
173
+ * Builds the `IStateProvider` the definition asks for.
169
174
  */
170
175
  resolveStateProvider() {
171
176
  const stateProvider = this.definition.settings.stateProvider;
172
177
  // Anchored to the definition file for the same reason imports are: `run-action` runs with
173
178
  // terragrunt's cache directory as its cwd, and a state path resolved from there would point at
174
179
  // an empty directory - the action would read no prior state and write its result nowhere useful.
175
- if (stateProvider.type === 'LocalEncryptionStateProvider') {
180
+ if (stateProvider.type === 'LocalStateProvider') {
176
181
  return {
177
- type: new LocalEncryptionStateProvider(resolve(this.definitionDir, stateProvider.statePath), stateProvider.encryptionKey),
182
+ type: new LocalStateProvider(resolve(this.definitionDir, stateProvider.statePath)),
178
183
  };
179
184
  }
180
- else if (stateProvider.type === 'LocalStateProvider') {
185
+ else if (stateProvider.type === 'RemoteStateProvider') {
181
186
  return {
182
- type: new LocalStateProvider(resolve(this.definitionDir, stateProvider.statePath)),
187
+ type: new RemoteStateProvider({
188
+ appId: this.resolveEnvironmentValue(stateProvider.appId),
189
+ localStateDirectoryPath: resolve(this.definitionDir, stateProvider.statePath),
190
+ lockContext: stateProvider.lockContext
191
+ ? this.resolveEnvironmentValue(stateProvider.lockContext)
192
+ : undefined,
193
+ organizationId: this.resolveEnvironmentValue(stateProvider.organizationId),
194
+ // Resolved from the shell: a session is a credential, and a credential written into the
195
+ // definition file is a credential committed beside the state it reaches.
196
+ sessionId: this.resolveEnvironmentValue(stateProvider.sessionId),
197
+ stateManagementServiceUrl: this.resolveEnvironmentValue(stateProvider.stateManagementServiceUrl),
198
+ }),
183
199
  };
184
200
  }
185
201
  else if (stateProvider.type === 'TestStateProvider') {
@@ -192,7 +208,7 @@ export class YamlDefinitionUtility {
192
208
  }
193
209
  }
194
210
  /**
195
- * The tag registrations the definition declares, in the shape {@link Octo.registerTags} takes.
211
+ * The tag registrations the definition declares, in the shape `Octo.registerTags()` takes.
196
212
  *
197
213
  * A `scope` naming a `moduleId` reaches that module's resources; an absent or empty one reaches
198
214
  * every resource of the run.
@@ -1 +1 @@
1
- {"version":3,"file":"yaml-definition.utility.js","sourceRoot":"","sources":["../../../../src/utilities/definition/yaml/yaml-definition.utility.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACnD,OAAO,EAEL,4BAA4B,EAC5B,kBAAkB,EAElB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAqD1D;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAUhC;;;OAGG;IACH,YAAY,kBAA0B;QACpC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAChE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,kBAAkB,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;YAC1D,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAoB,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED;;;;;;;OAOG;IACH,uBAAuB,CAAI,KAAc;QACvC,OAAO,IAAI,CAAC,6BAA6B,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAQhB,MAAM,KAAK,GAA+D;YACxE,eAAe,EAAE,EAAE;YACnB,oBAAoB,EAAE,EAAE;YACxB,uBAAuB,EAAE,EAAE;YAC3B,cAAc,EAAE,EAAE;YAClB,mBAAmB,EAAE,EAAE;YACvB,sBAAsB,EAAE,EAAE;SAC3B,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YACnC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YAC5C,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;YAEvC,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC9C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CAAC,0BAA0B,MAAM,cAAc,cAAc,IAAI,CAAC,CAAC;gBACpF,CAAC;qBAAM,CAAC;oBACN,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACzC,KAAK,CAAC,eAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;oBACtE,KAAK,CAAC,oBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,CAAC;oBAChF,KAAK,CAAC,uBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC,CAAC;oBACtF,KAAK,CAAC,cAAe,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;oBACpE,KAAK,CAAC,mBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC9E,KAAK,CAAC,sBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,CAAC;gBACtF,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,UAAU,MAAM,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,cAAc;QAClB,MAAM,OAAO,GAAiE,EAAE,CAAC;QAEjF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAChD,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,SAAS,CAAC;YAE5C,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC9C,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,0BAA0B,SAAS,cAAc,cAAc,IAAI,CAAC,CAAC;gBACvF,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,UAAU,MAAM,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/F,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAAC,EAAE,cAAc,GAAG,QAAQ,KAA+C,EAAE;QAOjG,MAAM,SAAS,GAAmE,EAAE,CAAC;QAErF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;YACjD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;YAC7D,IAAI,WAAW,CAAC,IAAI,KAAK,yBAAyB,EAAE,CAAC;gBACnD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,2CAA2C,CAAC,CAAC;gBAC3E,SAAS,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC;oBAC5C,IAAI,EAAE,QAAQ,CAAC,uBAAuB;iBACvC,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,WAAW,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;gBACvD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC;gBACvE,0FAA0F;gBAC1F,+DAA+D;gBAC/D,MAAM,iBAAiB,GAAG,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;gBACxF,SAAS,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE;wBACJ;4BACE,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,OAAO,CAAC,iBAAiB,CAAC,KAAK,CAAC;4BAClE,WAAW,EAAE,cAAc;4BAC3B,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,MAAM;yBACnC;qBACF;oBACD,IAAI,EAAE,QAAQ,CAAC,oBAAoB;iBACpC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACH,cAAc,CACZ,OAAqE;QAErE,MAAM,OAAO,GAAwD,EAAE,CAAC;QAExE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;YACrC,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YAChD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,SAAS,CAAC;YAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;YAC7E,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CACb,2CAA2C,QAAQ,OAAO,WAAW,2BAA2B,CACjG,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,EAAE,WAAW,EAAE,cAAc,CAAC,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC;YAEjF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC,EAAE,CAAC;gBACrE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;YACjE,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,oBAAoB;QAIlB,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC7D,0FAA0F;QAC1F,+FAA+F;QAC/F,iGAAiG;QACjG,IAAI,aAAa,CAAC,IAAI,KAAK,8BAA8B,EAAE,CAAC;YAC1D,OAAO;gBACL,IAAI,EAAE,IAAI,4BAA4B,CACpC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,EACpD,aAAa,CAAC,aAAa,CAC5B;aACF,CAAC;QACJ,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,KAAK,oBAAoB,EAAE,CAAC;YACvD,OAAO;gBACL,IAAI,EAAE,IAAI,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;aACnF,CAAC;QACJ,CAAC;aAAM,IAAI,aAAa,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;YACtD,OAAO;gBACL,IAAI,EAAE,IAAI,iBAAiB,EAAE;aAC9B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,WAAW;QACT,MAAM,IAAI,GAAqD,EAAE,CAAC;QAElE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,MAAM,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACjD,MAAM,YAAY,GAA8B,EAAE,CAAC;YACnD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9D,0FAA0F;gBAC1F,gFAAgF;gBAChF,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QACtE,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,uBAAuB;QAYrB,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAE5C,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9C,MAAM,IAAI,GAA4B,EAAE,CAAC;YACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;YAClD,CAAC;YAED,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,uBAAuB,CAAS,CAAC,CAAC,SAAS,CAAC;gBAC5D,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAS,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC5F,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,QAAQ,EAAE,IAAI,CAAC,uBAAuB,CAAS,CAAC,CAAC,QAAQ,CAAC;gBAC1D,iFAAiF;gBACjF,kBAAkB,EAAE,CAAC,CAAC,kBAAkB;gBACxC,IAAI;aACL,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,SAAS;YACT,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;YAC9C,eAAe,EAAE,IAAI,CAAC,uBAAuB,CAAS,SAAS,CAAC,eAAe,CAAC;SACjF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,2BAA2B,CAAI,KAAc;QACnD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAU,CAAC;QACpB,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,OAAO,KAAU,CAAC;QACpB,CAAC;QAED,8FAA8F;QAC9F,mFAAmF;QACnF,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QACrF,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC;QAEpE,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAC;QAChC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,4FAA4F;gBAC5F,8EAA8E;gBAC9E,IAAI,OAAO,aAAa,KAAK,SAAS,EAAE,CAAC;oBACvC,OAAO,aAAkB,CAAC;gBAC5B,CAAC;gBACD,MAAM,eAAe,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACnE,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;oBAC/B,OAAO,IAAS,CAAC;gBACnB,CAAC;qBAAM,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;oBACvC,OAAO,KAAU,CAAC;gBACpB,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,UAAU,aAAa,cAAc,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,OAAO,MAAM,CAAC,aAAa,CAAM,CAAC;YACpC,CAAC;YACD,OAAO,CAAC,CAAC,CAAC;gBACR,OAAO,MAAM,CAAC,aAAa,CAAM,CAAC;YACpC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,iBAAiB,CAAC,UAAkB;QAC1C,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7D,OAAO,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,kBAAkB,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;QACnF,OAAO,aAAa,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,CAAC;IAED;;;;;;;;OAQG;IACK,6BAA6B,CAAI,KAAc,EAAE,SAAsB;QAC7E,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAChD,OAAO,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAErB,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACxC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YACpE,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,6BAA6B,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CACjG,CAAC;QAEN,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,aAAkB,CAAC;IAC5B,CAAC;IAED;;OAEG;IACK,kBAAkB;QACxB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,IAAI,OAAO,IAAI,CAAC,UAAU,EAAE,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC9E,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,UAAU,EAAE,OAAO,qBAAqB,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,UAAU,GACd,IAAI,CAAC,UAAU,CAAC,OAAO,KAAK,CAAC;YAC3B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC;YAChF,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC;QACrF,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAErC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YAE7E,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;gBACxC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,YAAY,IAAI,GAAG,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,KAAK,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YAE7B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"yaml-definition.utility.js","sourceRoot":"","sources":["../../../../src/utilities/definition/yaml/yaml-definition.utility.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,65 @@
1
1
  import { type App, Octo } from '@quadnix/octo';
2
2
  /**
3
- * Boots only the state provider the definition names, without loading a single module.
4
- *
5
- * `apply` is a terraform action rather than an octo mode, so it has no reason to compose a model
6
- * graph - but terraform state is checked out of the state provider and back into it around every
7
- * terraform command, so the provider still has to be there.
3
+ * Boots octo the way every lifecycle command does, from the definition file `OCTO_DEFINITION_FILE_PATH`
4
+ * names, and reports what went wrong when a command fails.
8
5
  */
9
- export declare function bootStateProvider(): Promise<void>;
10
- /**
11
- * @param quietStdout Keeps **stdout** free of everything but the command's own output. Set by
12
- * `run-action`, whose stdout is consumed by terraform's `data "external"` as JSON.
13
- *
14
- * It does not disable listeners — it routes them to stderr, so that the SDK resource-action path,
15
- * the only place resource actions actually execute, stays observable.
16
- */
17
- export declare function bootOcto({ quietStdout }?: {
18
- quietStdout?: boolean;
19
- }): Promise<{
20
- app: App;
21
- octo: Octo;
22
- }>;
23
- /**
24
- * Makes the environment survive the trip into terraform's `local-exec`.
25
- *
26
- * An external resource shells back out to `octo` from the terraform that terragrunt runs -
27
- * `run-action` from its `local-exec` provisioner, `get-response` from its `data "external"` - and
28
- * those commands inherit this process's environment. Two things about it are wrong by default, and
29
- * both fail only after real infrastructure exists:
30
- *
31
- * - **`octo` is a bare binary name**, resolved through `PATH`. Invoking a binary by path -
32
- * `node_modules/.bin/octo apply` - does not put its directory on `PATH` for child processes, so
33
- * the callback dies with `octo: command not found`. The generated app runs the flow through
34
- * package scripts, and `npm run` does put that directory on `PATH`, but running the binary
35
- * directly is still supported and has to work the same. The project's bin directory is prepended
36
- * here, and the directory this CLI is running from after it, so a globally installed or linked
37
- * octo still wins over nothing at all.
38
- * - **`OCTO_DEFINITION_FILE_PATH` is usually relative** (`octo.yaml` - the package scripts set
39
- * exactly that), and terraform runs `local-exec` with a terragrunt cache directory as its cwd,
40
- * where that resolves to nothing. It is made absolute here, against the cwd the user actually
41
- * invoked from.
42
- */
43
- export declare function prepareCallbackEnvironment(): void;
44
- /**
45
- * Prints an octo error to stderr, including the properties it carries - the diff that matched no
46
- * action, most of all - which a bare stack trace would hide.
47
- */
48
- export declare function reportError(error: any): void;
6
+ export declare class OctoUtility {
7
+ /**
8
+ * Boots octo with every listener, hook, module and terraform provider the definition lists, and
9
+ * composes the app. Prints nothing, so stdout carries only the command's own output.
10
+ */
11
+ static bootOcto(): Promise<{
12
+ app: App;
13
+ octo: Octo;
14
+ }>;
15
+ /**
16
+ * Boots only the state provider the definition names, without loading a single module, and returns
17
+ * how often terraform state is checked into it during a terraform command. Loads every listener the definition lists.
18
+ *
19
+ * `apply` is a terraform action rather than an octo mode, so it has no reason to compose a model
20
+ * graph - but terraform state is checked out of the state provider and back into it around every
21
+ * terraform command, so the provider still has to be there, and terraform's output reaches the
22
+ * terminal only through the listeners.
23
+ */
24
+ static bootStateProvider(): Promise<{
25
+ stateCheckInIntervalInMs: number | undefined;
26
+ }>;
27
+ /**
28
+ * Makes the environment survive the trip into terraform's `local-exec`.
29
+ *
30
+ * An external resource shells back out to `octo` from the terraform that terragrunt runs -
31
+ * `run-action` from its `local-exec` provisioner, `get-response` from its `data "external"` - and
32
+ * those commands inherit this process's environment. Two things about it are wrong by default, and
33
+ * both fail only after real infrastructure exists:
34
+ *
35
+ * - **`octo` is a bare binary name**, resolved through `PATH`. Invoking a binary by path -
36
+ * `node_modules/.bin/octo apply` - does not put its directory on `PATH` for child processes, so
37
+ * the callback dies with `octo: command not found`. The generated app runs the flow through
38
+ * package scripts, and `npm run` does put that directory on `PATH`, but running the binary
39
+ * directly is still supported and has to work the same. The project's bin directory is prepended
40
+ * here, and the directory this CLI is running from after it, so a globally installed or linked
41
+ * octo still wins over nothing at all.
42
+ * - **`OCTO_DEFINITION_FILE_PATH` is usually relative** (`octo.yaml` - the package scripts set
43
+ * exactly that), and terraform runs `local-exec` with a terragrunt cache directory as its cwd,
44
+ * where that resolves to nothing. It is made absolute here, against the cwd the user actually
45
+ * invoked from.
46
+ */
47
+ static prepareCallbackEnvironment(): void;
48
+ /**
49
+ * Prints an octo error to stderr, including the properties it carries - the diff that matched no
50
+ * action, most of all - which a bare stack trace would hide.
51
+ */
52
+ static reportError(error: any): void;
53
+ /**
54
+ * Runs one lifecycle command: announces it, runs `body`, and exits with 1 after reporting what it
55
+ * threw. The command's end is announced, and awaited by listeners such as the journal, before the
56
+ * process exits.
57
+ */
58
+ static runCommand(command: string, body: () => Promise<void>): Promise<void>;
59
+ /**
60
+ * The absolute path of the definition file, from `OCTO_DEFINITION_FILE_PATH`.
61
+ *
62
+ * @throws If the variable is unset, or names a file that does not exist.
63
+ */
64
+ private static resolveDefinitionFilePath;
65
+ }