@aid-framework/cli 0.1.56 → 0.1.58
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/dist/.tsbuildinfo +1 -1
- package/dist/commands/eject.d.ts +27 -0
- package/dist/commands/eject.d.ts.map +1 -0
- package/dist/commands/eject.js +206 -0
- package/dist/commands/eject.js.map +1 -0
- package/dist/commands/gen.js +2 -0
- package/dist/commands/gen.js.map +1 -1
- package/dist/commands/infra.d.ts +12 -8
- package/dist/commands/infra.d.ts.map +1 -1
- package/dist/commands/infra.js +74 -34
- package/dist/commands/infra.js.map +1 -1
- package/dist/diagnostics.d.ts +4 -0
- package/dist/diagnostics.d.ts.map +1 -1
- package/dist/diagnostics.js +7 -0
- package/dist/diagnostics.js.map +1 -1
- package/dist/infra/cdk.d.ts +30 -0
- package/dist/infra/cdk.d.ts.map +1 -0
- package/dist/infra/cdk.js +69 -0
- package/dist/infra/cdk.js.map +1 -0
- package/dist/infra/emit.d.ts +67 -5
- package/dist/infra/emit.d.ts.map +1 -1
- package/dist/infra/emit.js +71 -7
- package/dist/infra/emit.js.map +1 -1
- package/dist/infra/tofu.d.ts +2 -0
- package/dist/infra/tofu.d.ts.map +1 -1
- package/dist/infra/tofu.js +10 -0
- package/dist/infra/tofu.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +17 -3
- package/dist/main.js.map +1 -1
- package/package.json +6 -6
package/dist/diagnostics.js
CHANGED
|
@@ -39,13 +39,20 @@ export const CLI_DIAGNOSTIC_CODES = {
|
|
|
39
39
|
// because they need different fixes; reporting both as "infra failed" would hide which.
|
|
40
40
|
infraSubcommandRequired: 'cli/infra-subcommand-required',
|
|
41
41
|
infraUnknownSubcommand: 'cli/infra-unknown-subcommand',
|
|
42
|
+
infraUnknownIac: 'cli/infra-unknown-iac',
|
|
42
43
|
infraGeneratedOutdated: 'cli/infra-generated-outdated',
|
|
43
44
|
infraNotGenerated: 'cli/infra-not-generated',
|
|
44
45
|
infraEnvRootMissing: 'cli/infra-env-root-missing',
|
|
45
46
|
infraTofuMissing: 'cli/infra-tofu-missing',
|
|
46
47
|
infraTofuFailed: 'cli/infra-tofu-failed',
|
|
48
|
+
infraCdkMissing: 'cli/infra-cdk-missing',
|
|
49
|
+
infraCdkFailed: 'cli/infra-cdk-failed',
|
|
47
50
|
infraDriftDetected: 'cli/infra-drift-detected',
|
|
48
51
|
infraConfirmProdRequired: 'cli/infra-confirm-prod-required',
|
|
52
|
+
// `aid eject` answers a path it cannot place. Every other refusal comes from the SDK
|
|
53
|
+
// with a `generator/` code, so a reader can tell "you named the wrong tree" from
|
|
54
|
+
// "this file cannot be ejected".
|
|
55
|
+
ejectUnmanagedPath: 'cli/eject-unmanaged-path',
|
|
49
56
|
};
|
|
50
57
|
export function cliError(init) {
|
|
51
58
|
return errorDiagnostic({
|
package/dist/diagnostics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKzE,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,cAAc,EAAE,qBAAqB;IACrC,aAAa,EAAE,oBAAoB;IACnC,mBAAmB,EAAE,2BAA2B;IAChD,aAAa,EAAE,oBAAoB;IACnC,aAAa,EAAE,qBAAqB;IACpC,kBAAkB,EAAE,0BAA0B;IAC9C,iBAAiB,EAAE,wBAAwB;IAC3C,iBAAiB,EAAE,wBAAwB;IAC3C,iBAAiB,EAAE,yBAAyB;IAC5C,oBAAoB,EAAE,4BAA4B;IAClD,iBAAiB,EAAE,wBAAwB;IAC3C,YAAY,EAAE,mBAAmB;IACjC,YAAY,EAAE,mBAAmB;IACjC,kFAAkF;IAClF,8EAA8E;IAC9E,eAAe,EAAE,sBAAsB;IACvC,kBAAkB,EAAE,yBAAyB;IAC7C,eAAe,EAAE,sBAAsB;IACvC,YAAY,EAAE,mBAAmB;IACjC,eAAe,EAAE,sBAAsB;IACvC,aAAa,EAAE,oBAAoB;IACnC,sFAAsF;IACtF,wFAAwF;IACxF,uBAAuB,EAAE,+BAA+B;IACxD,sBAAsB,EAAE,8BAA8B;IACtD,sBAAsB,EAAE,8BAA8B;IACtD,iBAAiB,EAAE,yBAAyB;IAC5C,mBAAmB,EAAE,4BAA4B;IACjD,gBAAgB,EAAE,wBAAwB;IAC1C,eAAe,EAAE,uBAAuB;IACxC,kBAAkB,EAAE,0BAA0B;IAC9C,wBAAwB,EAAE,iCAAiC;
|
|
1
|
+
{"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../src/diagnostics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKzE,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,cAAc,EAAE,qBAAqB;IACrC,aAAa,EAAE,oBAAoB;IACnC,mBAAmB,EAAE,2BAA2B;IAChD,aAAa,EAAE,oBAAoB;IACnC,aAAa,EAAE,qBAAqB;IACpC,kBAAkB,EAAE,0BAA0B;IAC9C,iBAAiB,EAAE,wBAAwB;IAC3C,iBAAiB,EAAE,wBAAwB;IAC3C,iBAAiB,EAAE,yBAAyB;IAC5C,oBAAoB,EAAE,4BAA4B;IAClD,iBAAiB,EAAE,wBAAwB;IAC3C,YAAY,EAAE,mBAAmB;IACjC,YAAY,EAAE,mBAAmB;IACjC,kFAAkF;IAClF,8EAA8E;IAC9E,eAAe,EAAE,sBAAsB;IACvC,kBAAkB,EAAE,yBAAyB;IAC7C,eAAe,EAAE,sBAAsB;IACvC,YAAY,EAAE,mBAAmB;IACjC,eAAe,EAAE,sBAAsB;IACvC,aAAa,EAAE,oBAAoB;IACnC,sFAAsF;IACtF,wFAAwF;IACxF,uBAAuB,EAAE,+BAA+B;IACxD,sBAAsB,EAAE,8BAA8B;IACtD,eAAe,EAAE,uBAAuB;IACxC,sBAAsB,EAAE,8BAA8B;IACtD,iBAAiB,EAAE,yBAAyB;IAC5C,mBAAmB,EAAE,4BAA4B;IACjD,gBAAgB,EAAE,wBAAwB;IAC1C,eAAe,EAAE,uBAAuB;IACxC,eAAe,EAAE,uBAAuB;IACxC,cAAc,EAAE,sBAAsB;IACtC,kBAAkB,EAAE,0BAA0B;IAC9C,wBAAwB,EAAE,iCAAiC;IAC3D,qFAAqF;IACrF,iFAAiF;IACjF,iCAAiC;IACjC,kBAAkB,EAAE,0BAA0B;CACtC,CAAC;AAWX,MAAM,UAAU,QAAQ,CAAC,IAAuB;IAC9C,OAAO,eAAe,CAAC;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;QACrB,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;KACxD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAuB;IAChD,OAAO,iBAAiB,CAAC;QACvB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;QACrB,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;KACxD,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How `aid infra` talks to AWS CDK.
|
|
3
|
+
*
|
|
4
|
+
* CDK is an alternative backend, not a second truth: both drivers read the one plan in
|
|
5
|
+
* `infra/generated`, and this file -- like `tofu.ts` -- knows only what to run and how to
|
|
6
|
+
* read a status. Every policy decision stays in the command, so a test can assert the
|
|
7
|
+
* argv without a CDK project installed.
|
|
8
|
+
*
|
|
9
|
+
* Deliberate limit, the same one `emit.ts` states for HCL: an env root here is a CDK app
|
|
10
|
+
* owned by the project (`infra/cdk/<env>`), because a stack is business code -- it names
|
|
11
|
+
* accounts, regions and construct choices. The emitter supplies the plan and a spelling
|
|
12
|
+
* of it; it does not guess constructs it could not `cdk synth`.
|
|
13
|
+
*/
|
|
14
|
+
import type { CliContext, SpawnResult } from '../context.js';
|
|
15
|
+
import type { InfraAction } from './tofu.js';
|
|
16
|
+
export declare const DEFAULT_CDK = "cdk";
|
|
17
|
+
/** Set to point `aid infra` at a specific binary, such as a pinned CDK install. */
|
|
18
|
+
export declare const CDK_ENV = "AID_CDK";
|
|
19
|
+
/** The env root an action runs in: `infra/cdk/<env>`, where the app's `cdk.json` lives. */
|
|
20
|
+
export declare function cdkRoot(env: string): string;
|
|
21
|
+
export declare function cdkArgs(action: InfraAction): string[];
|
|
22
|
+
export declare function cdkBinary(context: CliContext): string;
|
|
23
|
+
/**
|
|
24
|
+
* Run one action inside the env root, because CDK resolves its app from the nearest
|
|
25
|
+
* `cdk.json`, not from the project the command was started in.
|
|
26
|
+
*/
|
|
27
|
+
export declare function runCdk(context: CliContext, action: InfraAction, env: string, stdio: 'inherit' | 'pipe'): SpawnResult;
|
|
28
|
+
/** What an exit status means for CDK, kept beside the argv that produced it. */
|
|
29
|
+
export declare function classifyCdk(action: InfraAction, status: number | null): 'ok' | 'drift' | 'failed';
|
|
30
|
+
//# sourceMappingURL=cdk.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cdk.d.ts","sourceRoot":"","sources":["../../src/infra/cdk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C,eAAO,MAAM,WAAW,QAAQ,CAAC;AAEjC,mFAAmF;AACnF,eAAO,MAAM,OAAO,YAAY,CAAC;AAEjC,2FAA2F;AAC3F,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAwBD,wBAAgB,OAAO,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,EAAE,CAErD;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAGrD;AAED;;;GAGG;AACH,wBAAgB,MAAM,CACpB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GAAG,MAAM,GACxB,WAAW,CAMb;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,OAAO,GAAG,QAAQ,CAIjG"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How `aid infra` talks to AWS CDK.
|
|
3
|
+
*
|
|
4
|
+
* CDK is an alternative backend, not a second truth: both drivers read the one plan in
|
|
5
|
+
* `infra/generated`, and this file -- like `tofu.ts` -- knows only what to run and how to
|
|
6
|
+
* read a status. Every policy decision stays in the command, so a test can assert the
|
|
7
|
+
* argv without a CDK project installed.
|
|
8
|
+
*
|
|
9
|
+
* Deliberate limit, the same one `emit.ts` states for HCL: an env root here is a CDK app
|
|
10
|
+
* owned by the project (`infra/cdk/<env>`), because a stack is business code -- it names
|
|
11
|
+
* accounts, regions and construct choices. The emitter supplies the plan and a spelling
|
|
12
|
+
* of it; it does not guess constructs it could not `cdk synth`.
|
|
13
|
+
*/
|
|
14
|
+
import { join, posix } from 'node:path';
|
|
15
|
+
export const DEFAULT_CDK = 'cdk';
|
|
16
|
+
/** Set to point `aid infra` at a specific binary, such as a pinned CDK install. */
|
|
17
|
+
export const CDK_ENV = 'AID_CDK';
|
|
18
|
+
/** The env root an action runs in: `infra/cdk/<env>`, where the app's `cdk.json` lives. */
|
|
19
|
+
export function cdkRoot(env) {
|
|
20
|
+
return posix.join('infra', 'cdk', env);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The argv for one action, relative to the env root.
|
|
24
|
+
*
|
|
25
|
+
* `deploy` passes `--require-approval never`, the equivalent of OpenTofu's
|
|
26
|
+
* `-auto-approve`: that flag is consent to change state, and prod still needs
|
|
27
|
+
* `--confirm-prod` before it is reached. Without it a CI apply would block on a prompt.
|
|
28
|
+
*
|
|
29
|
+
* `plan` deliberately omits `--fail`: `cdk diff` then exits 0 whether or not the plan is
|
|
30
|
+
* non-empty, which is exactly what `tofu plan` does without `-detailed-exitcode`. An `ok`
|
|
31
|
+
* here means "the plan ran", never "nothing would change", and the command says so.
|
|
32
|
+
*
|
|
33
|
+
* `drift` is `diff --fail`, which exits 1 when the stack differs. CDK has no
|
|
34
|
+
* `-detailed-exitcode`, so its own failures also exit 1 and read as drift; that is the
|
|
35
|
+
* fail-closed direction -- the check can report "not clean" too often, never clean by
|
|
36
|
+
* accident.
|
|
37
|
+
*/
|
|
38
|
+
const ARGV = {
|
|
39
|
+
plan: ['diff', '--no-color'],
|
|
40
|
+
apply: ['deploy', '--require-approval', 'never', '--no-color'],
|
|
41
|
+
drift: ['diff', '--fail', '--no-color'],
|
|
42
|
+
};
|
|
43
|
+
export function cdkArgs(action) {
|
|
44
|
+
return [...ARGV[action]];
|
|
45
|
+
}
|
|
46
|
+
export function cdkBinary(context) {
|
|
47
|
+
const configured = context.env[CDK_ENV];
|
|
48
|
+
return configured === undefined || configured === '' ? DEFAULT_CDK : configured;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Run one action inside the env root, because CDK resolves its app from the nearest
|
|
52
|
+
* `cdk.json`, not from the project the command was started in.
|
|
53
|
+
*/
|
|
54
|
+
export function runCdk(context, action, env, stdio) {
|
|
55
|
+
return context.spawn(cdkBinary(context), cdkArgs(action), {
|
|
56
|
+
cwd: join(context.cwd, ...cdkRoot(env).split('/')),
|
|
57
|
+
stdio,
|
|
58
|
+
env: context.env,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/** What an exit status means for CDK, kept beside the argv that produced it. */
|
|
62
|
+
export function classifyCdk(action, status) {
|
|
63
|
+
if (status === 0)
|
|
64
|
+
return 'ok';
|
|
65
|
+
if (action === 'drift' && status === 1)
|
|
66
|
+
return 'drift';
|
|
67
|
+
return 'failed';
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=cdk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cdk.js","sourceRoot":"","sources":["../../src/infra/cdk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAKxC,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC;AAEjC,mFAAmF;AACnF,MAAM,CAAC,MAAM,OAAO,GAAG,SAAS,CAAC;AAEjC,2FAA2F;AAC3F,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,IAAI,GAAqD;IAC7D,IAAI,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC;IAC5B,KAAK,EAAE,CAAC,QAAQ,EAAE,oBAAoB,EAAE,OAAO,EAAE,YAAY,CAAC;IAC9D,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC;CACxC,CAAC;AAEF,MAAM,UAAU,OAAO,CAAC,MAAmB;IACzC,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAmB;IAC3C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC;AAClF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,MAAM,CACpB,OAAmB,EACnB,MAAmB,EACnB,GAAW,EACX,KAAyB;IAEzB,OAAO,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;QACxD,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,KAAK;QACL,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,WAAW,CAAC,MAAmB,EAAE,MAAqB;IACpE,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACvD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
package/dist/infra/emit.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The
|
|
2
|
+
* The deployment wiring, derived from the deployment plan.
|
|
3
3
|
*
|
|
4
|
-
* This emits the *derived* layer only: the plan itself, the
|
|
5
|
-
* and a README that says who owns what.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* This emits the *derived* layer only: the plan itself, the two spellings an env root
|
|
5
|
+
* consumes (Terraform tfvars, CDK context), and a README that says who owns what.
|
|
6
|
+
* Provider code -- the OpenTofu `modules/` and `envs/` trees, and CDK stacks -- is not
|
|
7
|
+
* emitted here, because it carries no information the IR has, and because an emitter
|
|
8
|
+
* that wrote AWS resources it could not `tofu validate` or `cdk synth` would be guessing.
|
|
8
9
|
*
|
|
9
10
|
* The load-bearing rule is enforced by construction: nothing in this file accepts an
|
|
10
11
|
* account id, a region, a CIDR, a domain, or a sizing number, so none can appear in the
|
|
@@ -13,6 +14,10 @@
|
|
|
13
14
|
import type { DeployPlan } from '@aid-framework/ir';
|
|
14
15
|
/** Where every derived infrastructure file lives, relative to the project root. */
|
|
15
16
|
export declare const INFRA_GENERATED_DIR = "infra/generated";
|
|
17
|
+
/** The plan both backends read. */
|
|
18
|
+
export declare const INFRA_PLAN_PATH = "infra/generated/deploy.plan.json";
|
|
19
|
+
/** The same plan spelled for a CDK app, which is TypeScript and therefore camelCase. */
|
|
20
|
+
export declare const INFRA_CDK_CONTEXT_PATH = "infra/generated/deploy.cdk-context.json";
|
|
16
21
|
/** The manifest recording what this emitter wrote, so a hand edit is never overwritten. */
|
|
17
22
|
export declare const INFRA_MANIFEST_PATH = "infra/aid.infra.manifest.json";
|
|
18
23
|
export interface InfraFile {
|
|
@@ -69,10 +74,67 @@ export interface DeployTfvars {
|
|
|
69
74
|
source: string;
|
|
70
75
|
}[];
|
|
71
76
|
}
|
|
77
|
+
/**
|
|
78
|
+
* The plan spelled for a CDK app: the same facts as `DeployTfvars`, keyed the way a
|
|
79
|
+
* TypeScript project reads them. Two spellings of one document are worth it because a
|
|
80
|
+
* CDK app cannot read HCL and a module tree cannot read JSON; what must not differ is
|
|
81
|
+
* the facts, and `infra.test.ts` asserts exactly that.
|
|
82
|
+
*
|
|
83
|
+
* Deliberately absent, as in the tfvars: any value a person must choose.
|
|
84
|
+
*/
|
|
85
|
+
export interface DeployContext {
|
|
86
|
+
readonly project: {
|
|
87
|
+
readonly name: string;
|
|
88
|
+
readonly namespace: string;
|
|
89
|
+
};
|
|
90
|
+
readonly services: Readonly<Record<string, {
|
|
91
|
+
readonly target: string;
|
|
92
|
+
readonly streaming: boolean;
|
|
93
|
+
readonly routes: readonly {
|
|
94
|
+
pipeline: string;
|
|
95
|
+
method: string;
|
|
96
|
+
path: string;
|
|
97
|
+
}[];
|
|
98
|
+
readonly env: readonly {
|
|
99
|
+
name: string;
|
|
100
|
+
secret: boolean;
|
|
101
|
+
from: string;
|
|
102
|
+
value?: string;
|
|
103
|
+
}[];
|
|
104
|
+
readonly secrets: readonly string[];
|
|
105
|
+
readonly providers: readonly string[];
|
|
106
|
+
readonly ingest: readonly string[];
|
|
107
|
+
}>>;
|
|
108
|
+
readonly stores: Readonly<Record<string, {
|
|
109
|
+
readonly kind: string;
|
|
110
|
+
readonly secretRef?: string;
|
|
111
|
+
readonly requiresExtension?: string;
|
|
112
|
+
readonly retrievers: readonly string[];
|
|
113
|
+
}>>;
|
|
114
|
+
readonly tasks: readonly {
|
|
115
|
+
id: string;
|
|
116
|
+
kind: string;
|
|
117
|
+
source: string;
|
|
118
|
+
schedule?: string;
|
|
119
|
+
}[];
|
|
120
|
+
readonly alarms: readonly {
|
|
121
|
+
id: string;
|
|
122
|
+
metric: string;
|
|
123
|
+
source: string;
|
|
124
|
+
}[];
|
|
125
|
+
}
|
|
72
126
|
/**
|
|
73
127
|
* Every derived file, in a stable order. Pure: the same plan always yields the same bytes,
|
|
74
128
|
* so `aid infra gen --check` can compare content instead of trusting a timestamp.
|
|
75
129
|
*/
|
|
76
130
|
export declare function emitInfra(plan: DeployPlan): InfraFile[];
|
|
77
131
|
export declare function tfvars(plan: DeployPlan): DeployTfvars;
|
|
132
|
+
/**
|
|
133
|
+
* The CDK spelling of the same document.
|
|
134
|
+
*
|
|
135
|
+
* It renames `tfvars(plan)` rather than re-deriving from the plan: two loops over the
|
|
136
|
+
* same plan would drift, and the backend that drifted would be silently missing a fact.
|
|
137
|
+
* Renaming keeps one source and makes parity structural instead of asserted.
|
|
138
|
+
*/
|
|
139
|
+
export declare function cdkContext(plan: DeployPlan): DeployContext;
|
|
78
140
|
//# sourceMappingURL=emit.d.ts.map
|
package/dist/infra/emit.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/infra/emit.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"emit.d.ts","sourceRoot":"","sources":["../../src/infra/emit.ts"],"names":[],"mappings":"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"}
|
package/dist/infra/emit.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* The
|
|
2
|
+
* The deployment wiring, derived from the deployment plan.
|
|
3
3
|
*
|
|
4
|
-
* This emits the *derived* layer only: the plan itself, the
|
|
5
|
-
* and a README that says who owns what.
|
|
6
|
-
*
|
|
7
|
-
*
|
|
4
|
+
* This emits the *derived* layer only: the plan itself, the two spellings an env root
|
|
5
|
+
* consumes (Terraform tfvars, CDK context), and a README that says who owns what.
|
|
6
|
+
* Provider code -- the OpenTofu `modules/` and `envs/` trees, and CDK stacks -- is not
|
|
7
|
+
* emitted here, because it carries no information the IR has, and because an emitter
|
|
8
|
+
* that wrote AWS resources it could not `tofu validate` or `cdk synth` would be guessing.
|
|
8
9
|
*
|
|
9
10
|
* The load-bearing rule is enforced by construction: nothing in this file accepts an
|
|
10
11
|
* account id, a region, a CIDR, a domain, or a sizing number, so none can appear in the
|
|
@@ -12,6 +13,10 @@
|
|
|
12
13
|
*/
|
|
13
14
|
/** Where every derived infrastructure file lives, relative to the project root. */
|
|
14
15
|
export const INFRA_GENERATED_DIR = 'infra/generated';
|
|
16
|
+
/** The plan both backends read. */
|
|
17
|
+
export const INFRA_PLAN_PATH = `${INFRA_GENERATED_DIR}/deploy.plan.json`;
|
|
18
|
+
/** The same plan spelled for a CDK app, which is TypeScript and therefore camelCase. */
|
|
19
|
+
export const INFRA_CDK_CONTEXT_PATH = `${INFRA_GENERATED_DIR}/deploy.cdk-context.json`;
|
|
15
20
|
/** The manifest recording what this emitter wrote, so a hand edit is never overwritten. */
|
|
16
21
|
export const INFRA_MANIFEST_PATH = 'infra/aid.infra.manifest.json';
|
|
17
22
|
/**
|
|
@@ -20,8 +25,9 @@ export const INFRA_MANIFEST_PATH = 'infra/aid.infra.manifest.json';
|
|
|
20
25
|
*/
|
|
21
26
|
export function emitInfra(plan) {
|
|
22
27
|
return [
|
|
23
|
-
{ path:
|
|
28
|
+
{ path: INFRA_PLAN_PATH, contents: json(plan) },
|
|
24
29
|
{ path: `${INFRA_GENERATED_DIR}/deploy.auto.tfvars.json`, contents: json(tfvars(plan)) },
|
|
30
|
+
{ path: INFRA_CDK_CONTEXT_PATH, contents: json(cdkContext(plan)) },
|
|
25
31
|
{ path: `${INFRA_GENERATED_DIR}/README.md`, contents: readme(plan) },
|
|
26
32
|
];
|
|
27
33
|
}
|
|
@@ -75,6 +81,51 @@ export function tfvars(plan) {
|
|
|
75
81
|
})),
|
|
76
82
|
};
|
|
77
83
|
}
|
|
84
|
+
/**
|
|
85
|
+
* The CDK spelling of the same document.
|
|
86
|
+
*
|
|
87
|
+
* It renames `tfvars(plan)` rather than re-deriving from the plan: two loops over the
|
|
88
|
+
* same plan would drift, and the backend that drifted would be silently missing a fact.
|
|
89
|
+
* Renaming keeps one source and makes parity structural instead of asserted.
|
|
90
|
+
*/
|
|
91
|
+
export function cdkContext(plan) {
|
|
92
|
+
const spelled = tfvars(plan);
|
|
93
|
+
const services = {};
|
|
94
|
+
for (const [id, service] of Object.entries(spelled.services)) {
|
|
95
|
+
services[id] = {
|
|
96
|
+
target: service.target,
|
|
97
|
+
streaming: service.streaming,
|
|
98
|
+
routes: service.routes.map((route) => ({ ...route })),
|
|
99
|
+
env: service.env.map((variable) => ({
|
|
100
|
+
name: variable.name,
|
|
101
|
+
secret: variable.secret,
|
|
102
|
+
from: variable.from,
|
|
103
|
+
...(variable.value === undefined ? {} : { value: variable.value }),
|
|
104
|
+
})),
|
|
105
|
+
secrets: [...service.secret_names],
|
|
106
|
+
providers: [...service.providers],
|
|
107
|
+
ingest: [...service.ingest],
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
const stores = {};
|
|
111
|
+
for (const [id, store] of Object.entries(spelled.data_stores)) {
|
|
112
|
+
stores[id] = {
|
|
113
|
+
kind: store.kind,
|
|
114
|
+
...(store.secret_ref === undefined ? {} : { secretRef: store.secret_ref }),
|
|
115
|
+
...(store.requires_extension === undefined
|
|
116
|
+
? {}
|
|
117
|
+
: { requiresExtension: store.requires_extension }),
|
|
118
|
+
retrievers: [...store.retrievers],
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
return {
|
|
122
|
+
project: { name: spelled.project.name, namespace: spelled.project.namespace },
|
|
123
|
+
services,
|
|
124
|
+
stores,
|
|
125
|
+
tasks: spelled.tasks.map((task) => ({ ...task })),
|
|
126
|
+
alarms: spelled.alarms.map((alarm) => ({ ...alarm })),
|
|
127
|
+
};
|
|
128
|
+
}
|
|
78
129
|
function readme(plan) {
|
|
79
130
|
const routes = plan.services.reduce((total, service) => total + service.endpoints.length, 0);
|
|
80
131
|
return [
|
|
@@ -87,15 +138,28 @@ function readme(plan) {
|
|
|
87
138
|
'| --- | --- |',
|
|
88
139
|
'| `deploy.plan.json` | The provider-neutral deployment plan both backends render. |',
|
|
89
140
|
'| `deploy.auto.tfvars.json` | The same plan spelled as Terraform inputs. |',
|
|
141
|
+
'| `deploy.cdk-context.json` | The same plan spelled for a CDK app, with camelCase keys. |',
|
|
90
142
|
'',
|
|
91
143
|
'## Using it',
|
|
92
144
|
'',
|
|
93
|
-
'
|
|
145
|
+
'With OpenTofu, an env root consumes the tfvars directly, so dev and prod share one',
|
|
146
|
+
'module tree:',
|
|
94
147
|
'',
|
|
95
148
|
'```sh',
|
|
96
149
|
'tofu -chdir=infra/envs/dev plan -var-file=../../generated/deploy.auto.tfvars.json',
|
|
97
150
|
'```',
|
|
98
151
|
'',
|
|
152
|
+
'With CDK, an app in `infra/cdk/<env>` reads the context file and supplies the',
|
|
153
|
+
'constructs, account and region itself:',
|
|
154
|
+
'',
|
|
155
|
+
'```sh',
|
|
156
|
+
'aid infra plan --iac cdk --env dev',
|
|
157
|
+
'aid infra apply --iac cdk --env dev',
|
|
158
|
+
'```',
|
|
159
|
+
'',
|
|
160
|
+
'`aid infra` defaults to `--iac tofu`; the generated bytes are identical either way,',
|
|
161
|
+
'because both backends consume this one plan.',
|
|
162
|
+
'',
|
|
99
163
|
'## What is here, and what is not',
|
|
100
164
|
'',
|
|
101
165
|
`- Services: ${plan.services.length}`,
|
package/dist/infra/emit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/infra/emit.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"emit.js","sourceRoot":"","sources":["../../src/infra/emit.ts"],"names":[],"mappings":"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"}
|
package/dist/infra/tofu.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export declare function envRoot(env: string): string;
|
|
|
22
22
|
* human output.
|
|
23
23
|
*/
|
|
24
24
|
export declare function tofuArgs(action: InfraAction, env: string): string[];
|
|
25
|
+
/** What an exit status means for OpenTofu, kept beside the argv that produced it. */
|
|
26
|
+
export declare function classifyTofu(action: InfraAction, status: number | null): 'ok' | 'drift' | 'failed';
|
|
25
27
|
export declare function tofuBinary(context: CliContext): string;
|
|
26
28
|
/**
|
|
27
29
|
* Run one action inside the env root, because `-var-file` is resolved relative to the
|
package/dist/infra/tofu.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tofu.d.ts","sourceRoot":"","sources":["../../src/infra/tofu.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE7D,eAAO,MAAM,YAAY,SAAS,CAAC;AAEnC,yFAAyF;AACzF,eAAO,MAAM,QAAQ,aAAa,CAAC;AAEnC,eAAO,MAAM,WAAW,4CAA4C,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AASrD,0DAA0D;AAC1D,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAUnE;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAGtD;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACrB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GAAG,MAAM,GACxB,WAAW,CAMb"}
|
|
1
|
+
{"version":3,"file":"tofu.d.ts","sourceRoot":"","sources":["../../src/infra/tofu.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE7D,eAAO,MAAM,YAAY,SAAS,CAAC;AAEnC,yFAAyF;AACzF,eAAO,MAAM,QAAQ,aAAa,CAAC;AAEnC,eAAO,MAAM,WAAW,4CAA4C,CAAC;AAErE,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;AASrD,0DAA0D;AAC1D,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAUnE;AAED,qFAAqF;AACrF,wBAAgB,YAAY,CAC1B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,MAAM,GAAG,IAAI,GACpB,IAAI,GAAG,OAAO,GAAG,QAAQ,CAM3B;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAGtD;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CACrB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,WAAW,EACnB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,SAAS,GAAG,MAAM,GACxB,WAAW,CAMb"}
|
package/dist/infra/tofu.js
CHANGED
|
@@ -39,6 +39,16 @@ export function tofuArgs(action, env) {
|
|
|
39
39
|
...APPROVALS[action],
|
|
40
40
|
];
|
|
41
41
|
}
|
|
42
|
+
/** What an exit status means for OpenTofu, kept beside the argv that produced it. */
|
|
43
|
+
export function classifyTofu(action, status) {
|
|
44
|
+
if (status === 0)
|
|
45
|
+
return 'ok';
|
|
46
|
+
// OpenTofu reserves exit 2 for "the plan is non-empty" under `-detailed-exitcode`, so
|
|
47
|
+
// drift is a distinguishable status rather than a guess over human output.
|
|
48
|
+
if (action === 'drift' && status === 2)
|
|
49
|
+
return 'drift';
|
|
50
|
+
return 'failed';
|
|
51
|
+
}
|
|
42
52
|
export function tofuBinary(context) {
|
|
43
53
|
const configured = context.env[TOFU_ENV];
|
|
44
54
|
return configured === undefined || configured === '' ? DEFAULT_TOFU : configured;
|
package/dist/infra/tofu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tofu.js","sourceRoot":"","sources":["../../src/infra/tofu.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIxC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AAEnC,yFAAyF;AACzF,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;AAEnC,MAAM,CAAC,MAAM,WAAW,GAAG,yCAAyC,CAAC;AAIrE,6FAA6F;AAC7F,MAAM,SAAS,GAAqD;IAClE,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC,eAAe,CAAC;CACzB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAmB,EAAE,GAAW;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;IAC1D,OAAO;QACL,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QACpC,GAAG,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,aAAa,OAAO,EAAE;QACtB,cAAc;QACd,WAAW;QACX,GAAG,SAAS,CAAC,MAAM,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAmB;IAC5C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;AACnF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CACrB,OAAmB,EACnB,MAAmB,EACnB,GAAW,EACX,KAAyB;IAEzB,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;QAC/D,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,KAAK;QACL,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"tofu.js","sourceRoot":"","sources":["../../src/infra/tofu.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAIxC,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AAEnC,yFAAyF;AACzF,MAAM,CAAC,MAAM,QAAQ,GAAG,UAAU,CAAC;AAEnC,MAAM,CAAC,MAAM,WAAW,GAAG,yCAAyC,CAAC;AAIrE,6FAA6F;AAC7F,MAAM,SAAS,GAAqD;IAClE,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,CAAC,eAAe,CAAC;CACzB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,UAAU,OAAO,CAAC,GAAW;IACjC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,MAAmB,EAAE,GAAW;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;IAC1D,OAAO;QACL,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QACpC,GAAG,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,aAAa,OAAO,EAAE;QACtB,cAAc;QACd,WAAW;QACX,GAAG,SAAS,CAAC,MAAM,CAAC;KACrB,CAAC;AACJ,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,YAAY,CAC1B,MAAmB,EACnB,MAAqB;IAErB,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,sFAAsF;IACtF,2EAA2E;IAC3E,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACvD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,OAAmB;IAC5C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;AACnF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,OAAO,CACrB,OAAmB,EACnB,MAAmB,EACnB,GAAW,EACX,KAAyB;IAEzB,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE;QAC/D,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClD,KAAK;QACL,GAAG,EAAE,OAAO,CAAC,GAAG;KACjB,CAAC,CAAC;AACL,CAAC"}
|
package/dist/main.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAUjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C,UAAU,OAAQ,SAAQ,WAAW;IACnC,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,KAAK,cAAc,CAAC;IAC7E,kEAAkE;IAClE,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAQD,eAAO,MAAM,QAAQ,EAAE,SAAS,OAAO,EA+ItC,CAAC;AA0BF,wBAAgB,GAAG,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,UAAU,GAAG,QAAQ,CA6C1E"}
|
package/dist/main.js
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { booleanFlag, JSON_FLAG, parseArguments, valueFlag } from './args.js';
|
|
15
15
|
import { doctor } from './commands/doctor.js';
|
|
16
|
+
import { eject } from './commands/eject.js';
|
|
16
17
|
import { evaluate } from './commands/eval.js';
|
|
17
18
|
import { generate } from './commands/gen.js';
|
|
18
19
|
import { infra } from './commands/infra.js';
|
|
@@ -114,15 +115,27 @@ export const COMMANDS = [
|
|
|
114
115
|
target: args.values.get('target'),
|
|
115
116
|
}),
|
|
116
117
|
},
|
|
118
|
+
{
|
|
119
|
+
name: 'eject',
|
|
120
|
+
summary: 'take ownership of a generated file: move it to business/ and stop generating it',
|
|
121
|
+
usage: 'eject <path> [--target <name>] [--dry-run]',
|
|
122
|
+
flags: [TARGET_FLAG, booleanFlag('dry-run', 'report the move, and write nothing'), JSON_FLAG],
|
|
123
|
+
run: (context, args) => eject(context, {
|
|
124
|
+
path: args.positionals[0],
|
|
125
|
+
target: args.values.get('target'),
|
|
126
|
+
dryRun: args.booleans.has('dry-run'),
|
|
127
|
+
}),
|
|
128
|
+
},
|
|
117
129
|
{
|
|
118
130
|
name: 'infra',
|
|
119
|
-
summary: 'derive the deployment wiring from the spec and drive OpenTofu',
|
|
120
|
-
usage: 'infra <gen|plan|apply|drift> [spec] [--dry-run|--check] [--env <name>] [--force]',
|
|
131
|
+
summary: 'derive the deployment wiring from the spec and drive OpenTofu or AWS CDK',
|
|
132
|
+
usage: 'infra <gen|plan|apply|drift> [spec] [--dry-run|--check] [--env <name>] [--iac <tofu|cdk>] [--force]',
|
|
121
133
|
maxPositionals: 2,
|
|
122
134
|
flags: [
|
|
123
135
|
booleanFlag('dry-run', 'gen: report what would change, and write nothing'),
|
|
124
136
|
booleanFlag('check', 'gen: exit non-zero when the generated tree is out of date'),
|
|
125
|
-
valueFlag('env', 'name', 'environment root
|
|
137
|
+
valueFlag('env', 'name', 'environment root (infra/envs/<name> or infra/cdk/<name>); plan, apply and drift use dev'),
|
|
138
|
+
valueFlag('iac', 'tofu|cdk', 'plan, apply and drift: which backend to drive; defaults to tofu'),
|
|
126
139
|
booleanFlag('confirm-prod', 'required to apply to prod'),
|
|
127
140
|
booleanFlag('force', 'gen: overwrite generated files that were edited by hand'),
|
|
128
141
|
JSON_FLAG,
|
|
@@ -134,6 +147,7 @@ export const COMMANDS = [
|
|
|
134
147
|
check: args.booleans.has('check'),
|
|
135
148
|
force: args.booleans.has('force'),
|
|
136
149
|
env: args.values.get('env'),
|
|
150
|
+
iac: args.values.get('iac'),
|
|
137
151
|
confirmProd: args.booleans.has('confirm-prod'),
|
|
138
152
|
json: args.booleans.has('json'),
|
|
139
153
|
}),
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAGlD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEhD,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQvD,MAAM,WAAW,GAAG,SAAS,CAC3B,QAAQ,EACR,MAAM,EACN,4BAA4B,WAAW,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvD,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAuB;IAC1C;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,iDAAiD;QAC1D,KAAK,EAAE,gEAAgE;QACvE,KAAK,EAAE;YACL,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,wDAAwD,CAAC;YACnF,WAAW;YACX,WAAW,CAAC,OAAO,EAAE,gDAAgD,CAAC;YACtE,WAAW,CAAC,KAAK,EAAE,wCAAwC,CAAC;YAC5D,SAAS;SACV;QACD,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,IAAI,CAAC,OAAO,EAAE;YACZ,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACxB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YACjC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;SAC9B,CAAC;KACL;IACD;QACE,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,6DAA6D;QACtE,KAAK,EAAE,iBAAiB;QACxB,KAAK,EAAE,CAAC,SAAS,CAAC;QAClB,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;KACzE;IACD;QACE,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,iDAAiD;QAC1D,KAAK,EAAE,oDAAoD;QAC3D,KAAK,EAAE;YACL,WAAW;YACX,WAAW,CAAC,SAAS,EAAE,6CAA6C,CAAC;YACrE,WAAW,CAAC,OAAO,EAAE,oDAAoD,CAAC;YAC1E,SAAS;SACV;QACD,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,QAAQ,CAAC,OAAO,EAAE;YAChB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACjC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;SAClC,CAAC;KACL;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,2DAA2D;QACpE,KAAK,EAAE,wEAAwE;QAC/E,KAAK,EAAE;YACL,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,wDAAwD,CAAC;YACtF,WAAW,CAAC,KAAK,EAAE,0CAA0C,CAAC;YAC9D,WAAW,CAAC,SAAS,EAAE,kDAAkD,CAAC;YAC1E,WAAW;YACX,SAAS;SACV;QACD,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,MAAM,CAAC,OAAO,EAAE;YACd,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACjC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;YACvC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;YAC7B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;SACrC,CAAC;KACL;IACD;QACE,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,+DAA+D;QACxE,KAAK,EAAE,2DAA2D;QAClE,KAAK,EAAE;YACL,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,qCAAqC,CAAC;YAC/D,WAAW;YACX,WAAW,CAAC,UAAU,EAAE,2CAA2C,CAAC;YACpE,SAAS;SACV;QACD,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,QAAQ,CAAC,OAAO,EAAE;YAChB,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;YAC/B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC;SACxC,CAAC;KACL;IACD;QACE,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,oEAAoE;QAC7E,KAAK,EAAE,iCAAiC;QACxC,KAAK,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC;QAC/B,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,MAAM,CAAC,OAAO,EAAE;YACd,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;SAClC,CAAC;KACL;IACD;QACE,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,iFAAiF;QAC1F,KAAK,EAAE,4CAA4C;QACnD,KAAK,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC,SAAS,EAAE,oCAAoC,CAAC,EAAE,SAAS,CAAC;QAC7F,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,KAAK,CAAC,OAAO,EAAE;YACb,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YACjC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;SACrC,CAAC;KACL;IACD;QACE,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,0EAA0E;QACnF,KAAK,EACH,qGAAqG;QACvG,cAAc,EAAE,CAAC;QACjB,KAAK,EAAE;YACL,WAAW,CAAC,SAAS,EAAE,kDAAkD,CAAC;YAC1E,WAAW,CAAC,OAAO,EAAE,2DAA2D,CAAC;YACjF,SAAS,CACP,KAAK,EACL,MAAM,EACN,yFAAyF,CAC1F;YACD,SAAS,CACP,KAAK,EACL,UAAU,EACV,iEAAiE,CAClE;YACD,WAAW,CAAC,cAAc,EAAE,2BAA2B,CAAC;YACxD,WAAW,CAAC,OAAO,EAAE,yDAAyD,CAAC;YAC/E,SAAS;SACV;QACD,GAAG,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CACrB,KAAK,CAAC,OAAO,EAAE;YACb,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC/B,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YACzB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YACjC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;YACjC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YAC3B,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC;YAC3B,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC;YAC9C,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;SAChC,CAAC;KACL;CACF,CAAC;AAEF,SAAS,UAAU,CAAC,OAAmB,EAAE,OAAe,EAAE,KAAc;IACtE,OAAO,CAAC,MAAM,CAAC,QAAQ,OAAO,OAAO,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvE,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CACpB,OAAmB,EACnB,IAAa,EACb,OAAe,EACf,KAAc;IAEd,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,OAAO,CAAC,MAAM,CAAC,4BAA4B,OAAO,OAAO,OAAO,IAAI,CAAC,CAAC;IACtE,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1F,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,GAAG,CAAC,IAAuB,EAAE,OAAmB;IAC9D,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAE7B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QAChF,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtC,yEAAyE;QACzE,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;IACnD,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IACtE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,UAAU,CAAC,OAAO,EAAE,qBAAqB,IAAI,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QACf,OAAO,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrB,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,gFAAgF;IAChF,yFAAyF;IACzF,kFAAkF;IAClF,gEAAgE;IAChE,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,CAAC;IACnD,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;QACpD,wFAAwF;QACxF,qFAAqF;QACrF,MAAM,KAAK,GAAG,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,cAAc,YAAY,CAAC;QAChF,OAAO,UAAU,CACf,OAAO,EACP,SAAS,OAAO,CAAC,IAAI,oBAAoB,KAAK,SAAS,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EACvF,YAAY,CAAC,OAAO,CAAC,CACtB,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aid-framework/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.58",
|
|
4
4
|
"description": "The `aid` command: scaffold a project, validate its spec, generate its code, and run its eval gate.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -33,11 +33,11 @@
|
|
|
33
33
|
"access": "public"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
-
"@aid-framework/generator-py-fastapi": "0.1.
|
|
37
|
-
"@aid-framework/generator-sdk": "0.1.
|
|
38
|
-
"@aid-framework/generator-ts-vercel": "0.1.
|
|
39
|
-
"@aid-framework/ir": "0.1.
|
|
40
|
-
"@aid-framework/spec": "0.1.
|
|
36
|
+
"@aid-framework/generator-py-fastapi": "0.1.58",
|
|
37
|
+
"@aid-framework/generator-sdk": "0.1.58",
|
|
38
|
+
"@aid-framework/generator-ts-vercel": "0.1.58",
|
|
39
|
+
"@aid-framework/ir": "0.1.58",
|
|
40
|
+
"@aid-framework/spec": "0.1.58"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "^26.6.5"
|