takomo 9.0.0-alpha.4 → 9.0.0-alpha.6
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/cli-io/deployment-targets/deployment-operation-io.js +3 -0
- package/dist/cli-io/deployment-targets/deployment-operation-io.js.map +1 -1
- package/dist/cli-io/formatters.d.ts +2 -0
- package/dist/cli-io/formatters.js +13 -1
- package/dist/cli-io/formatters.js.map +1 -1
- package/dist/cli-io/stacks/list-stacks-io.js +2 -2
- package/dist/cli-io/stacks/list-stacks-io.js.map +1 -1
- package/dist/command/stacks/common/load-current-cf-stacks.js +4 -0
- package/dist/command/stacks/common/load-current-cf-stacks.js.map +1 -1
- package/dist/command/stacks/deploy/custom-stack/steps/get-changes.js +30 -10
- package/dist/command/stacks/deploy/custom-stack/steps/get-changes.js.map +1 -1
- package/dist/command/stacks/deploy/plan.d.ts +1 -0
- package/dist/command/stacks/deploy/plan.js +15 -2
- package/dist/command/stacks/deploy/plan.js.map +1 -1
- package/dist/command/stacks/list/list-stacks.js +3 -4
- package/dist/command/stacks/list/list-stacks.js.map +1 -1
- package/dist/command/stacks/list/model.d.ts +15 -4
- package/dist/command/stacks/undeploy/plan.js +1 -0
- package/dist/command/stacks/undeploy/plan.js.map +1 -1
- package/dist/custom-stacks/custom-stack-handler.d.ts +15 -8
- package/dist/stacks/custom-stack.d.ts +1 -1
- package/dist/stacks/custom-stack.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ import { createTargetListenerInternal } from "../config-set/target-listener.js";
|
|
|
6
6
|
import { formatCommandStatus } from "../formatters.js";
|
|
7
7
|
import { createDeployStacksIO } from "../stacks/deploy-stacks/deploy-stacks-io.js";
|
|
8
8
|
import { createUndeployStacksIO } from "../stacks/undeploy-stacks-io.js";
|
|
9
|
+
import { isCustomStack } from "../../stacks/custom-stack.js";
|
|
9
10
|
const makeChoices = ({ confirmAnswerCancel, confirmAnswerContinueAndReview, confirmAnswerContinueNoReview, }) => [
|
|
10
11
|
{
|
|
11
12
|
name: confirmAnswerCancel,
|
|
@@ -46,6 +47,7 @@ export const createDeploymentTargetsOperationIO = (props) => {
|
|
|
46
47
|
.cell("Command path", result.commandPath)
|
|
47
48
|
.cell("Stack path", stackResult.stack.path)
|
|
48
49
|
.cell("Stack name", stackResult.stack.name)
|
|
50
|
+
.cell("Stack type", isCustomStack(stackResult.stack) ? "custom" : "standard")
|
|
49
51
|
.cell("Status", formatCommandStatus(stackResult.status))
|
|
50
52
|
.cell("Time", stackResult.timer.getFormattedTimeElapsed())
|
|
51
53
|
.cell("Message", stackResult.message)
|
|
@@ -60,6 +62,7 @@ export const createDeploymentTargetsOperationIO = (props) => {
|
|
|
60
62
|
.cell("Command path", result.commandPath)
|
|
61
63
|
.cell("Stack path", "-")
|
|
62
64
|
.cell("Stack name", "-")
|
|
65
|
+
.cell("Stack type", "-")
|
|
63
66
|
.cell("Status", formatCommandStatus(result.status))
|
|
64
67
|
.cell("Time", result.result.timer.getFormattedTimeElapsed())
|
|
65
68
|
.cell("Message", result.result.message)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployment-operation-io.js","sourceRoot":"","sources":["../../../src/cli-io/deployment-targets/deployment-operation-io.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAA;AAC9B,OAAO,KAAK,CAAC,MAAM,OAAO,CAAA;AAW1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAA;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAEtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAA;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;
|
|
1
|
+
{"version":3,"file":"deployment-operation-io.js","sourceRoot":"","sources":["../../../src/cli-io/deployment-targets/deployment-operation-io.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { ResourceStatus, StackDriftStatus, StackEvent, StackStatus } from "../aws/cloudformation/model.js";
|
|
2
|
+
import { StackInfo } from "../command/stacks/list/model.js";
|
|
2
3
|
import { CustomStackStatus } from "../stacks/custom-stack.js";
|
|
3
4
|
import { CommandStatus } from "../takomo-core/command.js";
|
|
4
5
|
export declare const formatCommandStatus: (status: CommandStatus) => string;
|
|
5
6
|
export declare const formatResourceStatus: (status: ResourceStatus) => string;
|
|
6
7
|
export declare const formatCustomStackStatus: (status: CustomStackStatus) => string;
|
|
7
8
|
export declare const formatStandardStackStatus: (status?: StackStatus) => string;
|
|
9
|
+
export declare const formatStackInfoStatus: (info: StackInfo) => string;
|
|
8
10
|
export declare const formatDriftStatus: (status?: StackDriftStatus) => string;
|
|
9
11
|
export declare const formatStackEvent: (e: StackEvent) => string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { cyan, green, grey, red, yellow } from "../utils/colors.js";
|
|
1
|
+
import { cyan, green, grey, orange, red, yellow } from "../utils/colors.js";
|
|
2
2
|
import { exhaustiveCheck } from "../utils/exhaustive-check.js";
|
|
3
3
|
export const formatCommandStatus = (status) => {
|
|
4
4
|
switch (status) {
|
|
@@ -36,6 +36,8 @@ export const formatCustomStackStatus = (status) => {
|
|
|
36
36
|
return green(status);
|
|
37
37
|
case "PENDING":
|
|
38
38
|
return cyan(status);
|
|
39
|
+
case "UNKNOWN":
|
|
40
|
+
return orange(status);
|
|
39
41
|
default:
|
|
40
42
|
return exhaustiveCheck(status);
|
|
41
43
|
}
|
|
@@ -74,6 +76,16 @@ export const formatStandardStackStatus = (status) => {
|
|
|
74
76
|
return status;
|
|
75
77
|
}
|
|
76
78
|
};
|
|
79
|
+
export const formatStackInfoStatus = (info) => {
|
|
80
|
+
switch (info.type) {
|
|
81
|
+
case "custom":
|
|
82
|
+
return formatCustomStackStatus(info.status);
|
|
83
|
+
case "standard":
|
|
84
|
+
return formatStandardStackStatus(info.status);
|
|
85
|
+
default:
|
|
86
|
+
return exhaustiveCheck(info);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
77
89
|
export const formatDriftStatus = (status) => {
|
|
78
90
|
if (!status) {
|
|
79
91
|
return grey("NOT_CHECKED");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/cli-io/formatters.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../src/cli-io/formatters.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import Table from "easy-table";
|
|
|
2
2
|
import { toPrettyJson } from "../../utils/json.js";
|
|
3
3
|
import { formatYaml } from "../../utils/yaml.js";
|
|
4
4
|
import { createBaseIO } from "../cli-io.js";
|
|
5
|
-
import {
|
|
5
|
+
import { formatStackInfoStatus } from "../formatters.js";
|
|
6
6
|
import { formatDate } from "./common.js";
|
|
7
7
|
export const createListStacksIO = (props) => {
|
|
8
8
|
const { logger } = props;
|
|
@@ -41,7 +41,7 @@ export const createListStacksIO = (props) => {
|
|
|
41
41
|
.cell("Path", stack.path)
|
|
42
42
|
.cell("Name", stack.name)
|
|
43
43
|
.cell("Type", stack.type)
|
|
44
|
-
.cell("Status",
|
|
44
|
+
.cell("Status", formatStackInfoStatus(stack))
|
|
45
45
|
.cell("Created", formatDate(stack.createdTime))
|
|
46
46
|
.cell("Updated", formatDate(stack.updatedTime))
|
|
47
47
|
.newRow();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-stacks-io.js","sourceRoot":"","sources":["../../../src/cli-io/stacks/list-stacks-io.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAA;AAK9B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"list-stacks-io.js","sourceRoot":"","sources":["../../../src/cli-io/stacks/list-stacks-io.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAA;AAK9B,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AACxD,OAAO,EAAE,UAAU,EAAW,MAAM,aAAa,CAAA;AAEjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAgB,EAAE;IACjE,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAA;IACxB,MAAM,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IAE9B,MAAM,WAAW,GAAG,CAAC,MAAwB,EAAoB,EAAE;QACjE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,MAAM,CAAA;QACxC,QAAQ,YAAY,EAAE,CAAC;YACrB,KAAK,MAAM;gBACT,EAAE,CAAC,OAAO,CAAC;oBACT,IAAI,EAAE,YAAY,CAAC;wBACjB,OAAO;wBACP,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE;qBACpC,CAAC;iBACH,CAAC,CAAA;gBACF,MAAK;YACP,KAAK,MAAM;gBACT,EAAE,CAAC,OAAO,CAAC;oBACT,IAAI,EAAE,UAAU,CAAC;wBACf,OAAO;wBACP,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE;qBACpC,CAAC;iBACH,CAAC,CAAA;gBACF,MAAK;YACP;gBACE,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAA;gBAEzB,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;oBACxB,KAAK;yBACF,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;yBACxB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;yBACxB,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC;yBACxB,IAAI,CAAC,QAAQ,EAAE,qBAAqB,CAAC,KAAK,CAAC,CAAC;yBAC5C,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;yBAC9C,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;yBAC9C,MAAM,EAAE,CAAA;gBACb,CAAC,CAAC,CAAA;gBAEF,EAAE,CAAC,OAAO,CAAC;oBACT,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE;oBACtB,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAA;QACN,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,OAAO;QACL,GAAG,EAAE;QACL,GAAG,MAAM;QACT,WAAW;KACZ,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -47,6 +47,10 @@ export const loadCurrentStandardStacks = async (logger, stacks) => {
|
|
|
47
47
|
};
|
|
48
48
|
export const getCustomStackState = async (ctx, stack) => {
|
|
49
49
|
const { customStackHandler, customConfig, logger, path } = stack;
|
|
50
|
+
if (!customStackHandler.getCurrentState) {
|
|
51
|
+
logger.debug(`Custom stack handler '${customStackHandler.type}' does not implement getCurrentState() for stack ${path}, returning UNKNOWN state`);
|
|
52
|
+
return { status: "UNKNOWN" };
|
|
53
|
+
}
|
|
50
54
|
try {
|
|
51
55
|
const result = await customStackHandler.getCurrentState({
|
|
52
56
|
logger,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-current-cf-stacks.js","sourceRoot":"","sources":["../../../../src/command/stacks/common/load-current-cf-stacks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"load-current-cf-stacks.js","sourceRoot":"","sources":["../../../../src/command/stacks/common/load-current-cf-stacks.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,17 +7,37 @@ export class UnexpectedChangesInCustomStackError extends TakomoError {
|
|
|
7
7
|
super(message);
|
|
8
8
|
}
|
|
9
9
|
}
|
|
10
|
+
const getChangesInternal = async ({ customStackHandler, logger, stack, currentState, ctx, parameters, tags, }) => {
|
|
11
|
+
if (!customStackHandler.getChanges) {
|
|
12
|
+
logger.debug(`Custom stack handler '${customStackHandler.type}' does not implement getChanges(), assuming changes are present`);
|
|
13
|
+
return {
|
|
14
|
+
success: true,
|
|
15
|
+
changes: [{ description: "Changes present but no details available" }],
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
try {
|
|
19
|
+
return await customStackHandler.getChanges({
|
|
20
|
+
config: stack.customConfig,
|
|
21
|
+
currentState,
|
|
22
|
+
logger,
|
|
23
|
+
parameters,
|
|
24
|
+
tags,
|
|
25
|
+
ctx,
|
|
26
|
+
stack,
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
catch (e) {
|
|
30
|
+
logger.error("Failed to get custom stack changes", e);
|
|
31
|
+
return {
|
|
32
|
+
success: false,
|
|
33
|
+
message: "Failed to get custom stack changes",
|
|
34
|
+
error: e,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
};
|
|
10
38
|
export const getChanges = async (state) => {
|
|
11
|
-
const { transitions, expectNoChanges,
|
|
12
|
-
const result = await
|
|
13
|
-
config: stack.customConfig,
|
|
14
|
-
currentState,
|
|
15
|
-
logger,
|
|
16
|
-
parameters,
|
|
17
|
-
tags,
|
|
18
|
-
ctx,
|
|
19
|
-
stack,
|
|
20
|
-
});
|
|
39
|
+
const { transitions, expectNoChanges, logger } = state;
|
|
40
|
+
const result = await getChangesInternal(state);
|
|
21
41
|
if (!result.success) {
|
|
22
42
|
logger.error("Failed to get custom stack changes", result.error);
|
|
23
43
|
return transitions.failStackOperation({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-changes.js","sourceRoot":"","sources":["../../../../../../src/command/stacks/deploy/custom-stack/steps/get-changes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-changes.js","sourceRoot":"","sources":["../../../../../../src/command/stacks/deploy/custom-stack/steps/get-changes.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,4 +29,5 @@ export interface StacksDeployPlan {
|
|
|
29
29
|
readonly operations: ReadonlyArray<StackDeployOperation>;
|
|
30
30
|
}
|
|
31
31
|
export declare const resolveOperationType: (status?: StackStatus) => StackOperationType;
|
|
32
|
+
export declare const resolveCustomStackOperationType: (currentState: CustomStackState) => StackOperationType;
|
|
32
33
|
export declare const buildStacksDeployPlan: (stacks: ReadonlyArray<InternalStack>, commandPath: CommandPath, ignoreDependencies: boolean, logger: TkmLogger, ctx: StacksContext) => Promise<StacksDeployPlan>;
|
|
@@ -42,6 +42,18 @@ export const resolveOperationType = (status) => {
|
|
|
42
42
|
throw new Error(`Unsupported stack status: ${status}`);
|
|
43
43
|
}
|
|
44
44
|
};
|
|
45
|
+
export const resolveCustomStackOperationType = (currentState) => {
|
|
46
|
+
switch (currentState.status) {
|
|
47
|
+
case "CREATE_COMPLETE":
|
|
48
|
+
case "UPDATE_COMPLETE":
|
|
49
|
+
return "UPDATE";
|
|
50
|
+
case "UNKNOWN":
|
|
51
|
+
case "PENDING":
|
|
52
|
+
return "CREATE";
|
|
53
|
+
default:
|
|
54
|
+
return exhaustiveCheck(currentState.status);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
45
57
|
const convertToOperation = (pair) => {
|
|
46
58
|
if (isStandardStackPair(pair)) {
|
|
47
59
|
return {
|
|
@@ -54,9 +66,10 @@ const convertToOperation = (pair) => {
|
|
|
54
66
|
if (isCustomStackPair(pair)) {
|
|
55
67
|
return {
|
|
56
68
|
stack: pair.stack,
|
|
57
|
-
type: pair.currentState
|
|
69
|
+
type: resolveCustomStackOperationType(pair.currentState),
|
|
58
70
|
currentState: pair.currentState,
|
|
59
|
-
stackExistedBeforeOperation: pair.currentState.status !== "PENDING"
|
|
71
|
+
stackExistedBeforeOperation: pair.currentState.status !== "PENDING" &&
|
|
72
|
+
pair.currentState.status !== "UNKNOWN",
|
|
60
73
|
};
|
|
61
74
|
}
|
|
62
75
|
return exhaustiveCheck(pair);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../src/command/stacks/deploy/plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAA;AAK1B,OAAO,EAEL,uBAAuB,GACxB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gDAAgD,CAAA;AACpF,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAG1D,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,GAElB,MAAM,qCAAqC,CAAA;AAE5C,OAAO,EAEL,qBAAqB,GACtB,MAAM,iCAAiC,CAAA;AAGxC,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEpE;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,YAA2C,EAC3C,KAAoB,EACM,EAAE,CAC5B,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;IAClD,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;IACpD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,6BAA6B,UAAU,YAAY,CAAC,CAAA;IACtE,CAAC;IAED,OAAO,CAAC,CAAC,IAAI,CAAC;QACZ,UAAU;QACV,GAAG,SAAS;QACZ,GAAG,wBAAwB,CAAC,YAAY,EAAE,eAAe,CAAC;KAC3D,CAAC,CAAA;AACJ,CAAC,EAAE,IAAI,KAAK,EAAa,CAAC,CAAA;AAoB5B,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAC5C,EAAwB,EACY,EAAE,CAAC,uBAAuB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;AAE1E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,EAAwB,EACU,EAAE,CAAC,qBAAqB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAA;AAMtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAoB,EACA,EAAE;IACtB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,iBAAiB,CAAC;QACvB,KAAK,iBAAiB,CAAC;QACvB,KAAK,0BAA0B,CAAC;QAChC,KAAK,wBAAwB,CAAC;QAC9B,KAAK,iBAAiB;YACpB,OAAO,QAAQ,CAAA;QACjB,KAAK,eAAe,CAAC;QACrB,KAAK,mBAAmB,CAAC;QACzB,KAAK,iBAAiB,CAAC;QACvB,KAAK,oBAAoB;YACvB,OAAO,UAAU,CAAA;QACnB;YACE,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAA;IAC1D,CAAC;AACH,CAAC,CAAA;AAED,MAAM,kBAAkB,GAAG,CAAC,IAAe,EAAwB,EAAE;IACnE,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,oBAAoB,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;YACrD,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,2BAA2B,EAAE,IAAI,CAAC,YAAY,KAAK,SAAS;SAC7D,CAAA;IACH,CAAC;IAED,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../src/command/stacks/deploy/plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { isNotObsolete } from "../../../takomo-stacks-model/util.js";
|
|
2
2
|
import { isCustomStackPair, isStandardStackPair, loadCurrentStacks, } from "../common/load-current-cf-stacks.js";
|
|
3
|
+
import { exhaustiveCheck } from "../../../utils/exhaustive-check.js";
|
|
3
4
|
export const listStacks = async (ctx, input, logger) => {
|
|
4
5
|
const { timer, commandPath, outputFormat } = input;
|
|
5
6
|
const stacksWithinCommandPath = ctx.stacks
|
|
@@ -12,9 +13,7 @@ export const listStacks = async (ctx, input, logger) => {
|
|
|
12
13
|
path: pair.stack.path,
|
|
13
14
|
name: pair.stack.name,
|
|
14
15
|
type: "custom",
|
|
15
|
-
status:
|
|
16
|
-
? "CREATE_COMPLETE"
|
|
17
|
-
: "PENDING"),
|
|
16
|
+
status: pair.currentState.status,
|
|
18
17
|
createdTime: pair.currentState?.creationTime,
|
|
19
18
|
updatedTime: pair.currentState?.lastUpdatedTime,
|
|
20
19
|
};
|
|
@@ -29,7 +28,7 @@ export const listStacks = async (ctx, input, logger) => {
|
|
|
29
28
|
updatedTime: pair.currentStack?.lastUpdatedTime,
|
|
30
29
|
};
|
|
31
30
|
}
|
|
32
|
-
|
|
31
|
+
return exhaustiveCheck(pair);
|
|
33
32
|
});
|
|
34
33
|
return {
|
|
35
34
|
success: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-stacks.js","sourceRoot":"","sources":["../../../../src/command/stacks/list/list-stacks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-stacks.js","sourceRoot":"","sources":["../../../../src/command/stacks/list/list-stacks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAA;AAEpE,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,qCAAqC,CAAA;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AAEpE,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,GAA0B,EAC1B,KAAsB,EACtB,MAAiB,EACU,EAAE;IAC7B,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,KAAK,CAAA;IAElD,MAAM,uBAAuB,GAAG,GAAG,CAAC,MAAM;SACvC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;SACrD,MAAM,CAAC,aAAa,CAAC,CAAA;IAExB,MAAM,UAAU,GAAG,MAAM,iBAAiB,CACxC,MAAM,EACN,uBAAuB,EACvB,GAAG,CACJ,CAAA;IAED,MAAM,OAAO,GAA6B,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAChE,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;gBACrB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;gBACrB,IAAI,EAAE,QAAQ;gBACd,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM;gBAChC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY;gBAC5C,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,eAAe;aAChD,CAAA;QACH,CAAC;QAED,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;gBACrB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;gBACrB,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM;gBACjC,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY;gBAC5C,WAAW,EAAE,IAAI,CAAC,YAAY,EAAE,eAAe;aAChD,CAAA;QACH,CAAC;QAED,OAAO,eAAe,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC,CAAC,CAAA;IAEF,OAAO;QACL,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,SAAS;QAClB,YAAY;QACZ,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE;QACnB,OAAO;KACR,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,17 +1,28 @@
|
|
|
1
1
|
import { StackName, StackStatus } from "../../../aws/cloudformation/model.js";
|
|
2
|
+
import { CustomStackStatus } from "../../../stacks/custom-stack.js";
|
|
2
3
|
import { StackPath } from "../../../stacks/stack.js";
|
|
3
4
|
import { CommandInput, IO, ResultsOutput } from "../../../takomo-core/command.js";
|
|
4
5
|
import { CommandPath } from "../../command-model.js";
|
|
5
|
-
|
|
6
|
+
type BaseStackInfo = {
|
|
7
|
+
readonly type: "custom" | "standard";
|
|
6
8
|
readonly path: StackPath;
|
|
7
9
|
readonly name: StackName;
|
|
8
|
-
readonly
|
|
9
|
-
readonly status?: StackStatus;
|
|
10
|
+
readonly status?: StackStatus | CustomStackStatus;
|
|
10
11
|
readonly createdTime?: Date;
|
|
11
12
|
readonly updatedTime?: Date;
|
|
12
|
-
}
|
|
13
|
+
};
|
|
14
|
+
export type CustomStackInfo = BaseStackInfo & {
|
|
15
|
+
readonly type: "custom";
|
|
16
|
+
readonly status: CustomStackStatus;
|
|
17
|
+
};
|
|
18
|
+
export type StandardStackInfo = BaseStackInfo & {
|
|
19
|
+
readonly type: "standard";
|
|
20
|
+
readonly status?: StackStatus;
|
|
21
|
+
};
|
|
22
|
+
export type StackInfo = CustomStackInfo | StandardStackInfo;
|
|
13
23
|
export interface ListStacksInput extends CommandInput {
|
|
14
24
|
readonly commandPath: CommandPath;
|
|
15
25
|
}
|
|
16
26
|
export type ListStacksOutput = ResultsOutput<StackInfo>;
|
|
17
27
|
export type ListStacksIO = IO<ListStacksOutput>;
|
|
28
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../src/command/stacks/undeploy/plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAA;AAE1B,OAAO,EAEL,uBAAuB,GACxB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,YAAY,EACZ,aAAa,EACb,UAAU,EACV,mBAAmB,GACpB,MAAM,sCAAsC,CAAA;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAE1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gDAAgD,CAAA;AAEtF,OAAO,EAEL,qBAAqB,GACtB,MAAM,iCAAiC,CAAA;AAExC,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AAKzE,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,YAAsB,EACM,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;AAEnE,MAAM,CAAC,MAAM,uCAAuC,GAAG,CACrD,YAA8B,EACF,EAAE;IAC9B,QAAQ,YAAY,CAAC,MAAM,EAAE,CAAC;QAC5B,KAAK,iBAAiB,CAAC;QACvB,KAAK,iBAAiB;
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../../src/command/stacks/undeploy/plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -446,22 +446,26 @@ export interface CustomStackHandler<CONFIG, STATE extends CustomStackState> {
|
|
|
446
446
|
/**
|
|
447
447
|
* Retrieves the current state of the custom stack from the target environment.
|
|
448
448
|
*
|
|
449
|
-
* This
|
|
449
|
+
* This function is crucial for determining the stack's lifecycle operations:
|
|
450
450
|
* - During deployment: determines whether to create a new stack or update an existing one
|
|
451
451
|
* - During undeployment: determines whether a stack exists and needs to be deleted
|
|
452
452
|
*
|
|
453
453
|
* The implementation should query the actual infrastructure to determine the
|
|
454
454
|
* real state, not just return cached or assumed values.
|
|
455
455
|
*
|
|
456
|
+
* Implementing this function is optional; if not provided, the stack will be assumed to be in a "UNKNOWN" state.
|
|
457
|
+
* - During deployment; stacks with "UNKNOWN" state are assumed to require creation (i.e. create function is always invoked).
|
|
458
|
+
* - During undeployment; stacks with "UNKNOWN" state are assumed to require deletion (i.e. delete function is always invoked).
|
|
459
|
+
*
|
|
456
460
|
* @param props - Configuration and context needed to query the stack state
|
|
457
461
|
* @returns A promise resolving to the current state or an error result
|
|
458
462
|
*/
|
|
459
|
-
readonly getCurrentState
|
|
463
|
+
readonly getCurrentState?: (props: GetCurrentStateProps<CONFIG>) => Promise<GetCurrentStateResult<STATE>>;
|
|
460
464
|
/**
|
|
461
465
|
* Analyzes and returns the changes that would be applied to bring the stack
|
|
462
466
|
* from its current state to the desired state defined by the configuration.
|
|
463
467
|
*
|
|
464
|
-
* This
|
|
468
|
+
* This function is invoked during deployment of existing stacks to:
|
|
465
469
|
* - Show users what changes will be made before applying them
|
|
466
470
|
* - Determine if any changes are actually required
|
|
467
471
|
* - Enable dry-run functionality for planning purposes
|
|
@@ -470,14 +474,17 @@ export interface CustomStackHandler<CONFIG, STATE extends CustomStackState> {
|
|
|
470
474
|
* configuration and return a detailed list of changes that would be applied.
|
|
471
475
|
* The format and granularity of changes is up to the implementation.
|
|
472
476
|
*
|
|
477
|
+
* Implementing this function is optional; if not provided, Takomo will assume that
|
|
478
|
+
* changes are always present but no detailed change information is available.
|
|
479
|
+
*
|
|
473
480
|
* @param props - Current state, desired configuration, and context for comparison
|
|
474
481
|
* @returns A promise resolving to the detected changes or an error result
|
|
475
482
|
*/
|
|
476
|
-
readonly getChanges
|
|
483
|
+
readonly getChanges?: (props: GetChangesProps<CONFIG, STATE>) => Promise<GetChangesResult>;
|
|
477
484
|
/**
|
|
478
485
|
* Validates and parses the raw configuration for this custom stack type.
|
|
479
486
|
*
|
|
480
|
-
* This
|
|
487
|
+
* This function is responsible for:
|
|
481
488
|
* - Validating the configuration against the expected schema
|
|
482
489
|
* - Converting raw configuration data into a typed configuration object
|
|
483
490
|
* - Providing meaningful error messages for invalid configurations
|
|
@@ -493,7 +500,7 @@ export interface CustomStackHandler<CONFIG, STATE extends CustomStackState> {
|
|
|
493
500
|
/**
|
|
494
501
|
* Creates a new instance of the custom stack in the target environment.
|
|
495
502
|
*
|
|
496
|
-
* This
|
|
503
|
+
* This function should:
|
|
497
504
|
* - Provision all necessary infrastructure resources
|
|
498
505
|
* - Apply the specified parameters and tags
|
|
499
506
|
* - Return the final state of the created stack
|
|
@@ -508,7 +515,7 @@ export interface CustomStackHandler<CONFIG, STATE extends CustomStackState> {
|
|
|
508
515
|
/**
|
|
509
516
|
* Updates an existing custom stack to match the desired configuration.
|
|
510
517
|
*
|
|
511
|
-
* This
|
|
518
|
+
* This function should:
|
|
512
519
|
* - Apply configuration changes to the existing stack
|
|
513
520
|
* - Update parameters and tags as specified
|
|
514
521
|
* - Handle resource modifications, additions, and removals
|
|
@@ -524,7 +531,7 @@ export interface CustomStackHandler<CONFIG, STATE extends CustomStackState> {
|
|
|
524
531
|
/**
|
|
525
532
|
* Removes the custom stack and all its associated resources from the target environment.
|
|
526
533
|
*
|
|
527
|
-
* This
|
|
534
|
+
* This function should:
|
|
528
535
|
* - Clean up all resources created by the stack
|
|
529
536
|
* - Ensure complete removal without leaving orphaned resources
|
|
530
537
|
* - Handle cases where some resources have already been deleted
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { InternalCredentialManager } from "../aws/common/credentials.js";
|
|
2
2
|
import { CustomStackHandler } from "../custom-stacks/custom-stack-handler.js";
|
|
3
3
|
import { BaseInternalStack, CustomStackType, InternalStack, Stack, StackProps } from "./stack.js";
|
|
4
|
-
export type CustomStackStatus = "PENDING" | "CREATE_COMPLETE" | "UPDATE_COMPLETE";
|
|
4
|
+
export type CustomStackStatus = "UNKNOWN" | "PENDING" | "CREATE_COMPLETE" | "UPDATE_COMPLETE";
|
|
5
5
|
export interface CustomStackProps extends StackProps {
|
|
6
6
|
customType: CustomStackType;
|
|
7
7
|
customConfig: unknown;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-stack.js","sourceRoot":"","sources":["../../src/stacks/custom-stack.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"custom-stack.js","sourceRoot":"","sources":["../../src/stacks/custom-stack.ts"],"names":[],"mappings":"AAqCA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAAuB,EACF,EAAE;IACvB,MAAM,EACJ,IAAI,EACJ,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,MAAM,EACN,IAAI,EACJ,UAAU,EACV,IAAI,EACJ,OAAO,EACP,MAAM,EACN,cAAc,EACd,IAAI,EACJ,qBAAqB,EACrB,OAAO,EACP,OAAO,EACP,UAAU,EACV,YAAY,EACZ,kBAAkB,GACnB,GAAG,KAAK,CAAA;IAET,OAAO;QACL,IAAI;QACJ,UAAU;QACV,YAAY;QACZ,kBAAkB;QAClB,UAAU;QACV,WAAW;QACX,iBAAiB;QACjB,IAAI;QACJ,UAAU;QACV,YAAY;QACZ,MAAM;QACN,QAAQ;QACR,MAAM;QACN,IAAI;QACJ,UAAU;QACV,IAAI;QACJ,OAAO;QACP,MAAM;QACN,cAAc;QACd,IAAI;QACJ,qBAAqB;QACrB,OAAO;QACP,OAAO;QACP,cAAc,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,cAAc,EAAE;QACxD,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK;KACrB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,GAAY,EAAW,EAAE,CAC9C,GAAG,KAAK,SAAS;IACjB,GAAG,KAAK,IAAI;IACZ,OAAO,GAAG,KAAK,QAAQ;IACvB,YAAY,IAAI,GAAG;IACnB,GAAG,CAAC,UAAU,KAAK,SAAS,CAAA;AAE9B,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,KAAiB,EACU,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AAEpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,KAAoB,EACU,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;AAEvD,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAY,EAAwB,EAAE,CAClE,aAAa,CAAC,KAAK,CAAC,CAAA"}
|