@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.
- package/README.md +108 -21
- package/dist/app.type.d.ts +141 -22
- package/dist/app.type.js.map +1 -1
- package/dist/decorators/model.decorator.d.ts +3 -5
- package/dist/decorators/model.decorator.js +1 -6
- package/dist/decorators/model.decorator.js.map +1 -1
- package/dist/decorators/on-event.decorator.d.ts +2 -2
- package/dist/decorators/on-event.decorator.js.map +1 -1
- package/dist/decorators/resource.decorator.d.ts +50 -1
- package/dist/decorators/resource.decorator.js +38 -1
- package/dist/decorators/resource.decorator.js.map +1 -1
- package/dist/errors/schema.error.d.ts +8 -1
- package/dist/errors/schema.error.js +5 -1
- package/dist/errors/schema.error.js.map +1 -1
- package/dist/errors/terraform.error.d.ts +4 -3
- package/dist/errors/terraform.error.js +4 -3
- package/dist/errors/terraform.error.js.map +1 -1
- package/dist/errors/transaction.error.d.ts +32 -2
- package/dist/errors/transaction.error.js +22 -0
- package/dist/errors/transaction.error.js.map +1 -1
- package/dist/events/action.event.d.ts +8 -2
- package/dist/events/action.event.js +2 -2
- package/dist/events/action.event.js.map +1 -1
- package/dist/events/command.event.d.ts +43 -0
- package/dist/events/command.event.js +33 -0
- package/dist/events/command.event.js.map +1 -0
- package/dist/events/event.model.d.ts +7 -5
- package/dist/events/event.model.js +5 -3
- package/dist/events/event.model.js.map +1 -1
- package/dist/events/hook/commit.hook.event.d.ts +1 -1
- package/dist/events/hook/commit.hook.event.js.map +1 -1
- package/dist/events/hook/hook.event.d.ts +1 -1
- package/dist/events/hook/hook.event.js.map +1 -1
- package/dist/events/hook/model.hook.event.d.ts +1 -1
- package/dist/events/hook/model.hook.event.js.map +1 -1
- package/dist/events/hook/resource.hook.event.d.ts +1 -1
- package/dist/events/hook/resource.hook.event.js.map +1 -1
- package/dist/events/index.d.ts +2 -0
- package/dist/events/index.js +2 -0
- package/dist/events/index.js.map +1 -1
- package/dist/events/mode-result.event.d.ts +1 -1
- package/dist/events/mode-result.event.js.map +1 -1
- package/dist/events/mode.event.d.ts +8 -4
- package/dist/events/mode.event.js.map +1 -1
- package/dist/events/module.event.d.ts +7 -3
- package/dist/events/module.event.js +3 -2
- package/dist/events/module.event.js.map +1 -1
- package/dist/events/registration.event.d.ts +1 -1
- package/dist/events/registration.event.js.map +1 -1
- package/dist/events/serialization.event.d.ts +1 -1
- package/dist/events/serialization.event.js.map +1 -1
- package/dist/events/state.event.d.ts +102 -0
- package/dist/events/state.event.js +69 -0
- package/dist/events/state.event.js.map +1 -0
- package/dist/events/terraform.event.d.ts +37 -1
- package/dist/events/terraform.event.js +24 -0
- package/dist/events/terraform.event.js.map +1 -1
- package/dist/events/transaction.event.d.ts +3 -3
- package/dist/events/transaction.event.js +1 -1
- package/dist/events/transaction.event.js.map +1 -1
- package/dist/functions/container/container.js +1 -1
- package/dist/functions/container/container.js.map +1 -1
- package/dist/functions/container/test-container.js +2 -2
- package/dist/functions/container/test-container.js.map +1 -1
- package/dist/functions/dependency/dependency.d.ts +9 -22
- package/dist/functions/dependency/dependency.js +5 -1
- package/dist/functions/dependency/dependency.js.map +1 -1
- package/dist/functions/diff/diff.d.ts +14 -7
- package/dist/functions/diff/diff.js.map +1 -1
- package/dist/functions/node/node-action.abstract.d.ts +8 -10
- package/dist/functions/node/node-action.abstract.js +10 -16
- package/dist/functions/node/node-action.abstract.js.map +1 -1
- package/dist/functions/node/node.abstract.js +21 -10
- package/dist/functions/node/node.abstract.js.map +1 -1
- package/dist/functions/node/node.interface.d.ts +2 -1
- package/dist/functions/schema/schema.js +1 -1
- package/dist/functions/schema/schema.js.map +1 -1
- package/dist/index.d.ts +8 -6
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/index.type.d.ts +5 -0
- package/dist/index.type.js +2 -0
- package/dist/index.type.js.map +1 -0
- package/dist/main.d.ts +4 -3
- package/dist/main.js +27 -11
- package/dist/main.js.map +1 -1
- package/dist/models/account/account.model.d.ts +6 -0
- package/dist/models/account/account.model.js +16 -0
- package/dist/models/account/account.model.js.map +1 -1
- package/dist/models/app/app.model.d.ts +0 -10
- package/dist/models/app/app.model.js +0 -30
- package/dist/models/app/app.model.js.map +1 -1
- package/dist/models/deployment/deployment.schema.d.ts +4 -0
- package/dist/models/deployment/deployment.schema.js +4 -0
- package/dist/models/deployment/deployment.schema.js.map +1 -1
- package/dist/models/environment/environment.model.d.ts +2 -2
- package/dist/models/environment/environment.model.js +2 -2
- package/dist/models/execution/execution.model.d.ts +1 -1
- package/dist/models/execution/execution.model.js +1 -1
- package/dist/models/image/image.model.d.ts +4 -3
- package/dist/models/image/image.model.js +7 -6
- package/dist/models/image/image.model.js.map +1 -1
- package/dist/models/model.abstract.js +1 -1
- package/dist/models/model.abstract.js.map +1 -1
- package/dist/models/pipeline/pipeline.model.d.ts +1 -1
- package/dist/models/pipeline/pipeline.model.js +1 -1
- package/dist/models/server/server.model.d.ts +2 -2
- package/dist/models/server/server.model.js +2 -2
- package/dist/models/service/service.model.d.ts +28 -11
- package/dist/models/service/service.model.js +56 -16
- package/dist/models/service/service.model.js.map +1 -1
- package/dist/models/service/service.schema.d.ts +46 -2
- package/dist/models/service/service.schema.js +54 -2
- package/dist/models/service/service.schema.js.map +1 -1
- package/dist/modes/commit.mode.d.ts +2 -2
- package/dist/modes/commit.mode.js +2 -2
- package/dist/modes/generate.mode.d.ts +2 -1
- package/dist/modes/generate.mode.js +3 -2
- package/dist/modes/generate.mode.js.map +1 -1
- package/dist/modes/run-action.mode.d.ts +1 -1
- package/dist/modes/run-action.mode.js +1 -1
- package/dist/modes/validate.mode.d.ts +24 -0
- package/dist/modes/validate.mode.js +89 -11
- package/dist/modes/validate.mode.js.map +1 -1
- package/dist/modules/module.container.d.ts +7 -1
- package/dist/modules/module.container.js +41 -5
- package/dist/modules/module.container.js.map +1 -1
- package/dist/modules/test-module.container.js +35 -83
- package/dist/modules/test-module.container.js.map +1 -1
- package/dist/overlays/overlay.abstract.js +1 -1
- package/dist/overlays/overlay.abstract.js.map +1 -1
- package/dist/resources/resource-action.interface.d.ts +4 -2
- package/dist/resources/resource.abstract.d.ts +50 -8
- package/dist/resources/resource.abstract.js +63 -32
- package/dist/resources/resource.abstract.js.map +1 -1
- package/dist/resources/resource.interface.d.ts +0 -2
- package/dist/resources/resource.schema.d.ts +11 -1
- package/dist/resources/resource.schema.js +11 -1
- package/dist/resources/resource.schema.js.map +1 -1
- package/dist/services/event/event.service.d.ts +2 -2
- package/dist/services/event/event.service.js.map +1 -1
- package/dist/services/input/input.service.d.ts +30 -2
- package/dist/services/input/input.service.js +71 -4
- package/dist/services/input/input.service.js.map +1 -1
- package/dist/services/serialization/model/model-serialization.service.d.ts +4 -6
- package/dist/services/serialization/model/model-serialization.service.js +20 -17
- package/dist/services/serialization/model/model-serialization.service.js.map +1 -1
- package/dist/services/serialization/resource/resource-serialization.service.d.ts +7 -6
- package/dist/services/serialization/resource/resource-serialization.service.js +25 -12
- package/dist/services/serialization/resource/resource-serialization.service.js.map +1 -1
- package/dist/services/state-management/local.state-provider.d.ts +25 -9
- package/dist/services/state-management/local.state-provider.js +127 -21
- package/dist/services/state-management/local.state-provider.js.map +1 -1
- package/dist/services/state-management/remote.state-provider.d.ts +216 -0
- package/dist/services/state-management/remote.state-provider.js +645 -0
- package/dist/services/state-management/remote.state-provider.js.map +1 -0
- package/dist/services/state-management/state-management.service.d.ts +83 -40
- package/dist/services/state-management/state-management.service.js +130 -26
- package/dist/services/state-management/state-management.service.js.map +1 -1
- package/dist/services/state-management/state-provider.interface.d.ts +50 -9
- package/dist/services/state-management/state-provider.interface.js +14 -1
- package/dist/services/state-management/state-provider.interface.js.map +1 -1
- package/dist/services/state-management/terraform-state.service.d.ts +32 -9
- package/dist/services/state-management/terraform-state.service.js +64 -21
- package/dist/services/state-management/terraform-state.service.js.map +1 -1
- package/dist/services/state-management/test.state-provider.d.ts +11 -10
- package/dist/services/state-management/test.state-provider.js +35 -14
- package/dist/services/state-management/test.state-provider.js.map +1 -1
- package/dist/services/terraform/terraform.service.d.ts +57 -3
- package/dist/services/terraform/terraform.service.js +95 -8
- package/dist/services/terraform/terraform.service.js.map +1 -1
- package/dist/services/terraform/terraform.type.js +1 -1
- package/dist/services/terraform/terraform.type.js.map +1 -1
- package/dist/services/transaction/transaction.service.d.ts +29 -5
- package/dist/services/transaction/transaction.service.js +198 -34
- package/dist/services/transaction/transaction.service.js.map +1 -1
- package/dist/services/validation/validation.service.d.ts +2 -2
- package/dist/{functions → utilities}/diff/diff.utility.d.ts +2 -1
- package/dist/{functions → utilities}/diff/diff.utility.js +4 -3
- package/dist/utilities/diff/diff.utility.js.map +1 -0
- package/dist/utilities/file/file.utility.d.ts +6 -7
- package/dist/utilities/file/file.utility.js +13 -68
- package/dist/utilities/file/file.utility.js.map +1 -1
- package/dist/utilities/hcl/hcl.utility.d.ts +83 -16
- package/dist/utilities/hcl/hcl.utility.js +200 -27
- package/dist/utilities/hcl/hcl.utility.js.map +1 -1
- package/dist/utilities/http/http.utility.d.ts +57 -0
- package/dist/utilities/http/http.utility.js +98 -0
- package/dist/utilities/http/http.utility.js.map +1 -0
- package/dist/utilities/string/string.utility.d.ts +23 -3
- package/dist/utilities/string/string.utility.js +29 -3
- package/dist/utilities/string/string.utility.js.map +1 -1
- package/dist/utilities/terraform/terraform.utility.d.ts +70 -21
- package/dist/utilities/terraform/terraform.utility.js +255 -66
- package/dist/utilities/terraform/terraform.utility.js.map +1 -1
- package/dist/utilities/test-helpers/test-classes.d.ts +19 -0
- package/dist/utilities/test-helpers/test-classes.js +22 -0
- package/dist/utilities/test-helpers/test-classes.js.map +1 -1
- package/dist/utilities/test-helpers/test-models.d.ts +8 -1
- package/dist/utilities/test-helpers/test-models.js +25 -12
- package/dist/utilities/test-helpers/test-models.js.map +1 -1
- package/dist/utilities/test-helpers/test-modes.d.ts +1 -1
- package/dist/utilities/test-helpers/test-modes.js +36 -13
- package/dist/utilities/test-helpers/test-modes.js.map +1 -1
- package/dist/utilities/test-helpers/test-modules.d.ts +6 -0
- package/dist/utilities/test-helpers/test-modules.js +6 -0
- package/dist/utilities/test-helpers/test-modules.js.map +1 -1
- package/dist/utilities/test-helpers/test-overlays.d.ts +3 -1
- package/dist/utilities/test-helpers/test-overlays.js +8 -2
- package/dist/utilities/test-helpers/test-overlays.js.map +1 -1
- package/dist/utilities/test-helpers/test-resources.d.ts +4 -2
- package/dist/utilities/test-helpers/test-resources.js +22 -20
- package/dist/utilities/test-helpers/test-resources.js.map +1 -1
- package/package.json +7 -2
- package/dist/functions/diff/diff.utility.js.map +0 -1
- package/dist/services/state-management/file-app-lock.utility.d.ts +0 -43
- package/dist/services/state-management/file-app-lock.utility.js +0 -124
- package/dist/services/state-management/file-app-lock.utility.js.map +0 -1
- package/dist/services/state-management/local-encryption.state-provider.d.ts +0 -71
- package/dist/services/state-management/local-encryption.state-provider.js +0 -116
- package/dist/services/state-management/local-encryption.state-provider.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.model.js","sourceRoot":"","sources":["../../../src/models/app/app.model.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"app.model.js","sourceRoot":"","sources":["../../../src/models/app/app.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,10 @@ export declare class DeploymentSchema {
|
|
|
7
7
|
/**
|
|
8
8
|
* The identifying tag that can point to the server's code at a specific point in time.
|
|
9
9
|
* Could be a version number or a commit hash.
|
|
10
|
+
*
|
|
11
|
+
* 2 to 32 characters of letters, numbers, hyphens, and underscores, starting and ending with a
|
|
12
|
+
* letter or a number. A dot is not one of them, so a version reads as `0-0-1` rather than
|
|
13
|
+
* `0.0.1`.
|
|
10
14
|
*/
|
|
11
15
|
deploymentTag: string;
|
|
12
16
|
}
|
|
@@ -19,6 +19,10 @@ export class DeploymentSchema {
|
|
|
19
19
|
/**
|
|
20
20
|
* The identifying tag that can point to the server's code at a specific point in time.
|
|
21
21
|
* Could be a version number or a commit hash.
|
|
22
|
+
*
|
|
23
|
+
* 2 to 32 characters of letters, numbers, hyphens, and underscores, starting and ending with a
|
|
24
|
+
* letter or a number. A dot is not one of them, so a version reads as `0-0-1` rather than
|
|
25
|
+
* `0.0.1`.
|
|
22
26
|
*/
|
|
23
27
|
this.deploymentTag = Schema();
|
|
24
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment.schema.js","sourceRoot":"","sources":["../../../src/models/deployment/deployment.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IAA7B;QACE
|
|
1
|
+
{"version":3,"file":"deployment.schema.js","sourceRoot":"","sources":["../../../src/models/deployment/deployment.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAE1D;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IAA7B;QACE;;;;;;;WAOG;QAEH,kBAAa,GAAG,MAAM,EAAU,CAAC;IACnC,CAAC;CAAA;AADC;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,CAAC;;uDAC/D"}
|
|
@@ -3,11 +3,11 @@ import { AModel } from '../model.abstract.js';
|
|
|
3
3
|
import { EnvironmentSchema } from './environment.schema.js';
|
|
4
4
|
/**
|
|
5
5
|
* An Environment model is the logical sub-section of a Region which isolates one runtime environment from another.
|
|
6
|
-
* E.g.
|
|
6
|
+
* E.g. development, staging, production, etc.
|
|
7
7
|
*
|
|
8
8
|
* @example
|
|
9
9
|
* ```ts
|
|
10
|
-
* const environment = new Environment('
|
|
10
|
+
* const environment = new Environment('staging');
|
|
11
11
|
* ```
|
|
12
12
|
*
|
|
13
13
|
* @group Models/Environment
|
|
@@ -14,11 +14,11 @@ import { AModel } from '../model.abstract.js';
|
|
|
14
14
|
import { EnvironmentSchema } from './environment.schema.js';
|
|
15
15
|
/**
|
|
16
16
|
* An Environment model is the logical sub-section of a Region which isolates one runtime environment from another.
|
|
17
|
-
* E.g.
|
|
17
|
+
* E.g. development, staging, production, etc.
|
|
18
18
|
*
|
|
19
19
|
* @example
|
|
20
20
|
* ```ts
|
|
21
|
-
* const environment = new Environment('
|
|
21
|
+
* const environment = new Environment('staging');
|
|
22
22
|
* ```
|
|
23
23
|
*
|
|
24
24
|
* @group Models/Environment
|
|
@@ -11,7 +11,7 @@ import { ExecutionSchema } from './execution.schema.js';
|
|
|
11
11
|
* @example
|
|
12
12
|
* ```ts
|
|
13
13
|
* const deployment = new Deployment('v1');
|
|
14
|
-
* const environment = new Environment('
|
|
14
|
+
* const environment = new Environment('staging');
|
|
15
15
|
* const subnet = new Subnet(region, 'private');
|
|
16
16
|
* const execution = new Execution(deployment, environment, subnet);
|
|
17
17
|
* ```
|
|
@@ -25,7 +25,7 @@ import { ExecutionSchema } from './execution.schema.js';
|
|
|
25
25
|
* @example
|
|
26
26
|
* ```ts
|
|
27
27
|
* const deployment = new Deployment('v1');
|
|
28
|
-
* const environment = new Environment('
|
|
28
|
+
* const environment = new Environment('staging');
|
|
29
29
|
* const subnet = new Subnet(region, 'private');
|
|
30
30
|
* const execution = new Execution(deployment, environment, subnet);
|
|
31
31
|
* ```
|
|
@@ -2,13 +2,14 @@ import type { UnknownModel } from '../../app.type.js';
|
|
|
2
2
|
import { AModel } from '../model.abstract.js';
|
|
3
3
|
import { ImageSchema } from './image.schema.js';
|
|
4
4
|
/**
|
|
5
|
-
* An Image model represents a Docker image, to either build, or run, your
|
|
6
|
-
* Images belong to
|
|
5
|
+
* An Image model represents a Docker image, to either build, or run, your services.
|
|
6
|
+
* Images belong to an {@link Account}: an image is used only inside the account it sits in, and is
|
|
7
|
+
* linked to each of its regions it is published into.
|
|
7
8
|
*
|
|
8
9
|
* @example
|
|
9
10
|
* ```ts
|
|
10
11
|
* const image = new Image('nginx', '2.4');
|
|
11
|
-
*
|
|
12
|
+
* account.addImage(image);
|
|
12
13
|
* ```
|
|
13
14
|
*
|
|
14
15
|
* @group Models/Image
|
|
@@ -13,13 +13,14 @@ import { Model } from '../../decorators/model.decorator.js';
|
|
|
13
13
|
import { AModel } from '../model.abstract.js';
|
|
14
14
|
import { ImageSchema } from './image.schema.js';
|
|
15
15
|
/**
|
|
16
|
-
* An Image model represents a Docker image, to either build, or run, your
|
|
17
|
-
* Images belong to
|
|
16
|
+
* An Image model represents a Docker image, to either build, or run, your services.
|
|
17
|
+
* Images belong to an {@link Account}: an image is used only inside the account it sits in, and is
|
|
18
|
+
* linked to each of its regions it is published into.
|
|
18
19
|
*
|
|
19
20
|
* @example
|
|
20
21
|
* ```ts
|
|
21
22
|
* const image = new Image('nginx', '2.4');
|
|
22
|
-
*
|
|
23
|
+
* account.addImage(image);
|
|
23
24
|
* ```
|
|
24
25
|
*
|
|
25
26
|
* @group Models/Image
|
|
@@ -49,11 +50,11 @@ let Image = Image_1 = class Image extends AModel {
|
|
|
49
50
|
*/
|
|
50
51
|
setContext() {
|
|
51
52
|
const parents = this.getParents();
|
|
52
|
-
const
|
|
53
|
-
if (!
|
|
53
|
+
const account = parents['account']?.[0]?.to;
|
|
54
|
+
if (!account) {
|
|
54
55
|
return undefined;
|
|
55
56
|
}
|
|
56
|
-
return [`${this.constructor.NODE_NAME}=${this.imageId}`,
|
|
57
|
+
return [`${this.constructor.NODE_NAME}=${this.imageId}`, account.getContext()].join(',');
|
|
57
58
|
}
|
|
58
59
|
/**
|
|
59
60
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.model.js","sourceRoot":"","sources":["../../../src/models/image/image.model.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD
|
|
1
|
+
{"version":3,"file":"image.model.js","sourceRoot":"","sources":["../../../src/models/image/image.model.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,qCAAqC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;;;;;;;GAcG;AAEI,IAAM,KAAK,aAAX,MAAM,KAAM,SAAQ,MAA0B;IAOnD;;;OAGG;IACH,YAAY,WAAmB,EAAE,SAAiB;QAChD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,GAAG,WAAW,IAAI,SAAS,EAAE,CAAC;QAC7C,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,MAAM,CAAU,KAAK,CAAC,OAAO,CAC3B,KAAkB,EAClB,kBAA8D;QAE9D,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAE7B,OAAO,IAAI,OAAK,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACM,UAAU;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,GAAI,IAAI,CAAC,WAA4B,CAAC,SAAS,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7G,CAAC;IAED;;OAEG;IACM,KAAK;QACZ,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF,CAAA;AApDY,KAAK;IADjB,KAAK,CAAQ,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC;;GAC/B,KAAK,CAoDjB"}
|
|
@@ -2,11 +2,11 @@ import { MatchingAnchor, MatchingModel, MatchingResource, NodeType, } from '../a
|
|
|
2
2
|
import { NodeError, SchemaError, ValidationTransactionError } from '../errors/index.js';
|
|
3
3
|
import { Container } from '../functions/container/container.js';
|
|
4
4
|
import { Diff, DiffAction } from '../functions/diff/diff.js';
|
|
5
|
-
import { DiffUtility } from '../functions/diff/diff.utility.js';
|
|
6
5
|
import { ANode } from '../functions/node/node.abstract.js';
|
|
7
6
|
import { getSchemaInstance } from '../functions/schema/schema.js';
|
|
8
7
|
import { InputService } from '../services/input/input.service.js';
|
|
9
8
|
import { SchemaTranslationService } from '../services/schema-translation/schema-translation.service.js';
|
|
9
|
+
import { DiffUtility } from '../utilities/diff/diff.utility.js';
|
|
10
10
|
/**
|
|
11
11
|
* The base class of every model - the nodes that describe your infrastructure as *intent*,
|
|
12
12
|
* before any cloud resource is involved.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.abstract.js","sourceRoot":"","sources":["../../src/models/model.abstract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.abstract.js","sourceRoot":"","sources":["../../src/models/model.abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import type { UnknownModel } from '../../app.type.js';
|
|
|
2
2
|
import { AModel } from '../model.abstract.js';
|
|
3
3
|
import { PipelineSchema } from './pipeline.schema.js';
|
|
4
4
|
/**
|
|
5
|
-
* A Pipeline model is a CI/CD pipeline
|
|
5
|
+
* A Pipeline model is a CI/CD pipeline that automates tasks,
|
|
6
6
|
* including building and deploying code, running Octo projects, and more.
|
|
7
7
|
*
|
|
8
8
|
* :::danger Danger
|
|
@@ -13,7 +13,7 @@ import { Model } from '../../decorators/model.decorator.js';
|
|
|
13
13
|
import { AModel } from '../model.abstract.js';
|
|
14
14
|
import { PipelineSchema } from './pipeline.schema.js';
|
|
15
15
|
/**
|
|
16
|
-
* A Pipeline model is a CI/CD pipeline
|
|
16
|
+
* A Pipeline model is a CI/CD pipeline that automates tasks,
|
|
17
17
|
* including building and deploying code, running Octo projects, and more.
|
|
18
18
|
*
|
|
19
19
|
* :::danger Danger
|
|
@@ -3,8 +3,8 @@ import { Deployment } from '../deployment/deployment.model.js';
|
|
|
3
3
|
import { AModel } from '../model.abstract.js';
|
|
4
4
|
import { ServerSchema } from './server.schema.js';
|
|
5
5
|
/**
|
|
6
|
-
* A Server model is a representation of
|
|
7
|
-
* E.g.
|
|
6
|
+
* A Server model is a representation of one logical service.
|
|
7
|
+
* E.g. website, backend, database, payment-service, etc.
|
|
8
8
|
*
|
|
9
9
|
* @example
|
|
10
10
|
* ```ts
|
|
@@ -15,8 +15,8 @@ import { Deployment } from '../deployment/deployment.model.js';
|
|
|
15
15
|
import { AModel } from '../model.abstract.js';
|
|
16
16
|
import { ServerSchema } from './server.schema.js';
|
|
17
17
|
/**
|
|
18
|
-
* A Server model is a representation of
|
|
19
|
-
* E.g.
|
|
18
|
+
* A Server model is a representation of one logical service.
|
|
19
|
+
* E.g. website, backend, database, payment-service, etc.
|
|
20
20
|
*
|
|
21
21
|
* @example
|
|
22
22
|
* ```ts
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
+
import type { UnknownModel } from '../../app.type.js';
|
|
1
2
|
import { AModel } from '../model.abstract.js';
|
|
2
|
-
import { ServiceSchema } from './service.schema.js';
|
|
3
|
+
import { ServiceSchema, type ServiceType } from './service.schema.js';
|
|
3
4
|
/**
|
|
4
|
-
* A Service model
|
|
5
|
-
*
|
|
6
|
-
*
|
|
5
|
+
* A Service model is any piece of infrastructure your application uses that is not compute: a table,
|
|
6
|
+
* a bucket, a load balancer, a CDN. It sits under whichever nodes it belongs to - a region, a subnet,
|
|
7
|
+
* or another service - named when it is built, and carries a `type` and a free-text `label`.
|
|
7
8
|
*
|
|
8
|
-
* `Service`
|
|
9
|
-
*
|
|
10
|
-
* itself throws.
|
|
9
|
+
* `Service` is only useful when extended - a subclass adds the fields the service actually needs,
|
|
10
|
+
* spreads `super.synth()` into its own `synth()`, and rebuilds its parents in `unSynth()`.
|
|
11
11
|
*
|
|
12
12
|
* @example
|
|
13
13
|
* ```ts
|
|
14
|
-
* @Model<
|
|
15
|
-
* export class
|
|
14
|
+
* @Model<MyQueue>('@example', 'service', MyQueueSchema)
|
|
15
|
+
* export class MyQueue extends Service {
|
|
16
|
+
* constructor(queueName: string, region: Region) {
|
|
17
|
+
* super(`${queueName}-queue`, [region], ServiceType.OTHER, 'sqs');
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
16
20
|
* ```
|
|
17
21
|
*
|
|
18
22
|
* @group Models/Service
|
|
@@ -20,11 +24,24 @@ import { ServiceSchema } from './service.schema.js';
|
|
|
20
24
|
* @see Definition of [Default Models](/docs/fundamentals/models#default-models).
|
|
21
25
|
*/
|
|
22
26
|
export declare class Service extends AModel<ServiceSchema, Service> {
|
|
27
|
+
/**
|
|
28
|
+
* What the service actually is, in free text, e.g. `dynamodb`.
|
|
29
|
+
*/
|
|
30
|
+
readonly label: string;
|
|
23
31
|
readonly serviceId: string;
|
|
24
32
|
/**
|
|
25
|
-
*
|
|
33
|
+
* What kind of thing the service is.
|
|
34
|
+
*/
|
|
35
|
+
readonly type: ServiceType;
|
|
36
|
+
private readonly parentCount;
|
|
37
|
+
/**
|
|
38
|
+
* @param serviceId The ID of the service, unique among the services of each of its parents.
|
|
39
|
+
* @param parents The models this service is attached under. They are fixed for its lifetime.
|
|
40
|
+
* @param type What kind of thing the service is.
|
|
41
|
+
* @param label What the service actually is, in free text, e.g. `dynamodb`.
|
|
42
|
+
* @throws {@link ModelError} If no parent is given, or a parent already has a service with this ID.
|
|
26
43
|
*/
|
|
27
|
-
constructor(serviceId: string);
|
|
44
|
+
constructor(serviceId: string, parents: UnknownModel[], type: ServiceType, label: string);
|
|
28
45
|
/**
|
|
29
46
|
* @internal
|
|
30
47
|
*/
|
|
@@ -13,18 +13,21 @@ import { ModelError } from '../../errors/index.js';
|
|
|
13
13
|
import { AModel } from '../model.abstract.js';
|
|
14
14
|
import { ServiceSchema } from './service.schema.js';
|
|
15
15
|
/**
|
|
16
|
-
* A Service model
|
|
17
|
-
*
|
|
18
|
-
*
|
|
16
|
+
* A Service model is any piece of infrastructure your application uses that is not compute: a table,
|
|
17
|
+
* a bucket, a load balancer, a CDN. It sits under whichever nodes it belongs to - a region, a subnet,
|
|
18
|
+
* or another service - named when it is built, and carries a `type` and a free-text `label`.
|
|
19
19
|
*
|
|
20
|
-
* `Service`
|
|
21
|
-
*
|
|
22
|
-
* itself throws.
|
|
20
|
+
* `Service` is only useful when extended - a subclass adds the fields the service actually needs,
|
|
21
|
+
* spreads `super.synth()` into its own `synth()`, and rebuilds its parents in `unSynth()`.
|
|
23
22
|
*
|
|
24
23
|
* @example
|
|
25
24
|
* ```ts
|
|
26
|
-
* @Model<
|
|
27
|
-
* export class
|
|
25
|
+
* @Model<MyQueue>('@example', 'service', MyQueueSchema)
|
|
26
|
+
* export class MyQueue extends Service {
|
|
27
|
+
* constructor(queueName: string, region: Region) {
|
|
28
|
+
* super(`${queueName}-queue`, [region], ServiceType.OTHER, 'sqs');
|
|
29
|
+
* }
|
|
30
|
+
* }
|
|
28
31
|
* ```
|
|
29
32
|
*
|
|
30
33
|
* @group Models/Service
|
|
@@ -33,33 +36,70 @@ import { ServiceSchema } from './service.schema.js';
|
|
|
33
36
|
*/
|
|
34
37
|
let Service = Service_1 = class Service extends AModel {
|
|
35
38
|
/**
|
|
36
|
-
* @param serviceId The ID of the service, unique
|
|
39
|
+
* @param serviceId The ID of the service, unique among the services of each of its parents.
|
|
40
|
+
* @param parents The models this service is attached under. They are fixed for its lifetime.
|
|
41
|
+
* @param type What kind of thing the service is.
|
|
42
|
+
* @param label What the service actually is, in free text, e.g. `dynamodb`.
|
|
43
|
+
* @throws {@link ModelError} If no parent is given, or a parent already has a service with this ID.
|
|
37
44
|
*/
|
|
38
|
-
constructor(serviceId) {
|
|
45
|
+
constructor(serviceId, parents, type, label) {
|
|
39
46
|
super();
|
|
47
|
+
this.label = label;
|
|
48
|
+
this.parentCount = parents.length;
|
|
40
49
|
this.serviceId = serviceId;
|
|
50
|
+
this.type = type;
|
|
51
|
+
// Validate parents.
|
|
52
|
+
if (parents.length === 0) {
|
|
53
|
+
throw new ModelError('Service must have at least one parent!', this);
|
|
54
|
+
}
|
|
55
|
+
const parentFields = parents.map((p) => p.deriveDependencyField());
|
|
56
|
+
if (parentFields.some((f) => f === undefined)) {
|
|
57
|
+
throw new ModelError('Service parent must be attached to the graph!', this);
|
|
58
|
+
}
|
|
59
|
+
// Check for duplicates.
|
|
60
|
+
for (const parent of parents) {
|
|
61
|
+
const services = (parent.getChildren('service')['service'] || []).map((d) => d.to);
|
|
62
|
+
if (services.some((s) => s.serviceId === serviceId)) {
|
|
63
|
+
throw new ModelError('Service already exists!', this);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// Attach to every parent.
|
|
67
|
+
for (const [index, parent] of parents.entries()) {
|
|
68
|
+
parent.addChild(parentFields[index], this, 'serviceId');
|
|
69
|
+
}
|
|
41
70
|
}
|
|
42
71
|
/**
|
|
43
72
|
* @internal
|
|
44
73
|
*/
|
|
45
74
|
setContext() {
|
|
46
|
-
const parents = this.getParents();
|
|
47
|
-
|
|
48
|
-
if (!app) {
|
|
75
|
+
const parents = Object.values(this.getParents()).flat();
|
|
76
|
+
if (parents.length < this.parentCount) {
|
|
49
77
|
return undefined;
|
|
50
78
|
}
|
|
51
|
-
return [
|
|
79
|
+
return [
|
|
80
|
+
`${this.constructor.NODE_NAME}=${this.serviceId}`,
|
|
81
|
+
...parents.map((d) => d.to.getContext()).sort(),
|
|
82
|
+
].join(',');
|
|
52
83
|
}
|
|
53
84
|
/**
|
|
54
85
|
* @internal
|
|
55
86
|
*/
|
|
56
87
|
synth() {
|
|
57
|
-
|
|
88
|
+
const parentContexts = Object.values(this.getParents())
|
|
89
|
+
.flat()
|
|
90
|
+
.map((d) => d.to.getContext())
|
|
91
|
+
.sort();
|
|
92
|
+
return {
|
|
93
|
+
label: this.label,
|
|
94
|
+
parents: parentContexts.map((context) => ({ context })),
|
|
95
|
+
serviceId: this.serviceId,
|
|
96
|
+
type: this.type,
|
|
97
|
+
};
|
|
58
98
|
}
|
|
59
99
|
};
|
|
60
100
|
Service = Service_1 = __decorate([
|
|
61
101
|
Model('@octo', 'service', ServiceSchema),
|
|
62
|
-
__metadata("design:paramtypes", [String])
|
|
102
|
+
__metadata("design:paramtypes", [String, Array, String, String])
|
|
63
103
|
], Service);
|
|
64
104
|
export { Service };
|
|
65
105
|
//# sourceMappingURL=service.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.model.js","sourceRoot":"","sources":["../../../src/models/service/service.model.ts"],"names":[],"mappings":";;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"service.model.js","sourceRoot":"","sources":["../../../src/models/service/service.model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,56 @@
|
|
|
1
|
+
import type { IModelReference } from '../model.interface.js';
|
|
2
|
+
/**
|
|
3
|
+
* What kind of thing a {@link Service} is.
|
|
4
|
+
*
|
|
5
|
+
* @group Models/Service
|
|
6
|
+
*/
|
|
7
|
+
export declare enum ServiceType {
|
|
8
|
+
/**
|
|
9
|
+
* A cache, such as Redis.
|
|
10
|
+
*/
|
|
11
|
+
CACHE = "cache",
|
|
12
|
+
/**
|
|
13
|
+
* A database, such as a DynamoDB table.
|
|
14
|
+
*/
|
|
15
|
+
DATABASE = "database",
|
|
16
|
+
/**
|
|
17
|
+
* A global entry point that serves what is connected behind it, such as a CDN or an API gateway.
|
|
18
|
+
*/
|
|
19
|
+
GATEWAY = "gateway",
|
|
20
|
+
/**
|
|
21
|
+
* Spreads traffic across servers, such as an application load balancer.
|
|
22
|
+
*/
|
|
23
|
+
LOAD_BALANCER = "load-balancer",
|
|
24
|
+
/**
|
|
25
|
+
* Anything the other types do not describe.
|
|
26
|
+
*/
|
|
27
|
+
OTHER = "other",
|
|
28
|
+
/**
|
|
29
|
+
* Storage for files or objects, such as an S3 bucket.
|
|
30
|
+
*/
|
|
31
|
+
STORAGE = "storage"
|
|
32
|
+
}
|
|
1
33
|
/**
|
|
2
34
|
* Schema of the {@link Service} model.
|
|
3
|
-
*
|
|
35
|
+
* Child classes extend this schema to declare whatever the service needs.
|
|
4
36
|
*
|
|
5
37
|
* @group Models/Service
|
|
6
38
|
*/
|
|
7
39
|
export declare class ServiceSchema {
|
|
8
40
|
/**
|
|
9
|
-
*
|
|
41
|
+
* What the service actually is, in free text, e.g. `dynamodb`.
|
|
42
|
+
*/
|
|
43
|
+
label: string;
|
|
44
|
+
/**
|
|
45
|
+
* The models this service is attached under.
|
|
46
|
+
*/
|
|
47
|
+
parents: IModelReference[];
|
|
48
|
+
/**
|
|
49
|
+
* The ID of the service, unique among the services of each of its parents.
|
|
10
50
|
*/
|
|
11
51
|
serviceId: string;
|
|
52
|
+
/**
|
|
53
|
+
* What kind of thing the service is. See {@link ServiceType}.
|
|
54
|
+
*/
|
|
55
|
+
type: ServiceType;
|
|
12
56
|
}
|
|
@@ -9,22 +9,74 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { Validate } from '../../decorators/validate.decorator.js';
|
|
11
11
|
import { Schema } from '../../functions/schema/schema.js';
|
|
12
|
+
/**
|
|
13
|
+
* What kind of thing a {@link Service} is.
|
|
14
|
+
*
|
|
15
|
+
* @group Models/Service
|
|
16
|
+
*/
|
|
17
|
+
export var ServiceType;
|
|
18
|
+
(function (ServiceType) {
|
|
19
|
+
/**
|
|
20
|
+
* A cache, such as Redis.
|
|
21
|
+
*/
|
|
22
|
+
ServiceType["CACHE"] = "cache";
|
|
23
|
+
/**
|
|
24
|
+
* A database, such as a DynamoDB table.
|
|
25
|
+
*/
|
|
26
|
+
ServiceType["DATABASE"] = "database";
|
|
27
|
+
/**
|
|
28
|
+
* A global entry point that serves what is connected behind it, such as a CDN or an API gateway.
|
|
29
|
+
*/
|
|
30
|
+
ServiceType["GATEWAY"] = "gateway";
|
|
31
|
+
/**
|
|
32
|
+
* Spreads traffic across servers, such as an application load balancer.
|
|
33
|
+
*/
|
|
34
|
+
ServiceType["LOAD_BALANCER"] = "load-balancer";
|
|
35
|
+
/**
|
|
36
|
+
* Anything the other types do not describe.
|
|
37
|
+
*/
|
|
38
|
+
ServiceType["OTHER"] = "other";
|
|
39
|
+
/**
|
|
40
|
+
* Storage for files or objects, such as an S3 bucket.
|
|
41
|
+
*/
|
|
42
|
+
ServiceType["STORAGE"] = "storage";
|
|
43
|
+
})(ServiceType || (ServiceType = {}));
|
|
12
44
|
/**
|
|
13
45
|
* Schema of the {@link Service} model.
|
|
14
|
-
*
|
|
46
|
+
* Child classes extend this schema to declare whatever the service needs.
|
|
15
47
|
*
|
|
16
48
|
* @group Models/Service
|
|
17
49
|
*/
|
|
18
50
|
export class ServiceSchema {
|
|
19
51
|
constructor() {
|
|
20
52
|
/**
|
|
21
|
-
*
|
|
53
|
+
* What the service actually is, in free text, e.g. `dynamodb`.
|
|
54
|
+
*/
|
|
55
|
+
this.label = Schema();
|
|
56
|
+
/**
|
|
57
|
+
* The models this service is attached under.
|
|
58
|
+
*/
|
|
59
|
+
this.parents = Schema();
|
|
60
|
+
/**
|
|
61
|
+
* The ID of the service, unique among the services of each of its parents.
|
|
22
62
|
*/
|
|
23
63
|
this.serviceId = Schema();
|
|
64
|
+
/**
|
|
65
|
+
* What kind of thing the service is. See {@link ServiceType}.
|
|
66
|
+
*/
|
|
67
|
+
this.type = Schema();
|
|
24
68
|
}
|
|
25
69
|
}
|
|
70
|
+
__decorate([
|
|
71
|
+
Validate({ options: { maxLength: 64, minLength: 2, regex: /^[a-zA-Z0-9][\w.-]*[a-zA-Z0-9]$/ } }),
|
|
72
|
+
__metadata("design:type", Object)
|
|
73
|
+
], ServiceSchema.prototype, "label", void 0);
|
|
26
74
|
__decorate([
|
|
27
75
|
Validate({ options: { maxLength: 128, minLength: 2, regex: /^[a-zA-Z0-9][\w.-]*[a-zA-Z0-9]$/ } }),
|
|
28
76
|
__metadata("design:type", Object)
|
|
29
77
|
], ServiceSchema.prototype, "serviceId", void 0);
|
|
78
|
+
__decorate([
|
|
79
|
+
Validate({ options: { custom: (value) => Object.values(ServiceType).includes(value) } }),
|
|
80
|
+
__metadata("design:type", Object)
|
|
81
|
+
], ServiceSchema.prototype, "type", void 0);
|
|
30
82
|
//# sourceMappingURL=service.schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.schema.js","sourceRoot":"","sources":["../../../src/models/service/service.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"service.schema.js","sourceRoot":"","sources":["../../../src/models/service/service.schema.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wCAAwC,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAG1D;;;;GAIG;AACH,MAAM,CAAN,IAAY,WA8BX;AA9BD,WAAY,WAAW;IACrB;;OAEG;IACH,8BAAe,CAAA;IAEf;;OAEG;IACH,oCAAqB,CAAA;IAErB;;OAEG;IACH,kCAAmB,CAAA;IAEnB;;OAEG;IACH,8CAA+B,CAAA;IAE/B;;OAEG;IACH,8BAAe,CAAA;IAEf;;OAEG;IACH,kCAAmB,CAAA;AACrB,CAAC,EA9BW,WAAW,KAAX,WAAW,QA8BtB;AAED;;;;;GAKG;AACH,MAAM,OAAO,aAAa;IAA1B;QACE;;WAEG;QAEH,UAAK,GAAG,MAAM,EAAU,CAAC;QAEzB;;WAEG;QACH,YAAO,GAAG,MAAM,EAAqB,CAAC;QAEtC;;WAEG;QAEH,cAAS,GAAG,MAAM,EAAU,CAAC;QAE7B;;WAEG;QAEH,SAAI,GAAG,MAAM,EAAe,CAAC;IAC/B,CAAC;CAAA;AAlBC;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE,CAAC;;4CACxE;AAWzB;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE,CAAC;;gDACrE;AAM7B;IADC,QAAQ,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,KAAkB,EAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;;2CAClF"}
|
|
@@ -6,8 +6,8 @@ export type TerraformOutputs = Record<string, {
|
|
|
6
6
|
value: unknown;
|
|
7
7
|
}>;
|
|
8
8
|
/**
|
|
9
|
-
* Records a terraform apply back into octo's state: Committed ← Cloud. The catch-up step of
|
|
10
|
-
*
|
|
9
|
+
* Records a terraform apply back into octo's state: Committed ← Cloud. The catch-up step of a
|
|
10
|
+
* run, not a drift resolver.
|
|
11
11
|
*
|
|
12
12
|
* Operates on the resource graph the `transaction` already built: reads every module folder's outputs
|
|
13
13
|
* from the caller-supplied `outputs` map (keyed by module id), populates resource responses by the
|
|
@@ -6,8 +6,8 @@ import { ATerraformResource } from '../resources/terraform-resource.abstract.js'
|
|
|
6
6
|
import { TerraformService } from '../services/terraform/terraform.service.js';
|
|
7
7
|
import { TransactionService } from '../services/transaction/transaction.service.js';
|
|
8
8
|
/**
|
|
9
|
-
* Records a terraform apply back into octo's state: Committed ← Cloud. The catch-up step of
|
|
10
|
-
*
|
|
9
|
+
* Records a terraform apply back into octo's state: Committed ← Cloud. The catch-up step of a
|
|
10
|
+
* run, not a drift resolver.
|
|
11
11
|
*
|
|
12
12
|
* Operates on the resource graph the `transaction` already built: reads every module folder's outputs
|
|
13
13
|
* from the caller-supplied `outputs` map (keyed by module id), populates resource responses by the
|