Skip to content

Commit 4501911

Browse files
committed
Use StartSequencePayload in seq cli
1 parent 826cf96 commit 4501911

File tree

2 files changed

+24
-29
lines changed

2 files changed

+24
-29
lines changed

packages/cli/src/lib/commands/sequence.ts

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { resolve } from "path";
1313
import { sequenceDelete, sequencePack, sequenceParseArgs, sequenceParseConfig, sequenceSendPackage, sequenceStart } from "../helpers/sequence";
1414
import { ClientError } from "@scramjet/client-utils";
1515
import { initPlatform } from "../platform";
16-
import { AppConfig, DeepPartial, InstanceLimits } from "@scramjet/types";
16+
import { AppConfig, DeepPartial, STHRestAPI } from "@scramjet/types";
1717
import { isStartSequenceEndpointPayloadDTO, merge } from "@scramjet/utility";
1818

1919
/**
@@ -110,32 +110,27 @@ export const sequence: CommandDefinition = (program) => {
110110
}
111111
);
112112

113-
type ProcessedDeployArgs = {
113+
type SequenceDeployArgs = STHRestAPI.StartSequencePayload & {
114114
output?: string;
115-
config: AppConfig;
116-
instanceId?: string;
117-
inputTopic?: string;
118-
outputTopic?: string;
119-
args?: any[];
120-
appConfig: AppConfig,
121-
limits: InstanceLimits
122115
};
123116

124-
type SequenceStartParams = Omit<ProcessedDeployArgs, "instanceId"> & {
125-
startupConfig: DeepPartial<ProcessedDeployArgs>
117+
type SequenceStartCLIArgs = {
126118
args?: string;
127-
instId?: string;
128-
limits: string;
129119
configFile: any;
130120
configString: any;
131-
121+
instId?: string;
122+
inputTopic?: string;
123+
limits: string;
124+
output?: string;
125+
outputTopic?: string;
126+
startupConfig: DeepPartial<SequenceDeployArgs>;
132127
};
133128

134-
function validateStartupConfig(config: DeepPartial<ProcessedDeployArgs>) {
129+
function validateStartupConfig(config: DeepPartial<SequenceDeployArgs>) {
135130
return isStartSequenceEndpointPayloadDTO(config);
136131
}
137132

138-
function loadStartupConfig(filename: string): DeepPartial<ProcessedDeployArgs> {
133+
function loadStartupConfig(filename: string): DeepPartial<SequenceDeployArgs> {
139134
if (!filename) return {};
140135

141136
let json = {};
@@ -167,7 +162,7 @@ export const sequence: CommandDefinition = (program) => {
167162
.option("--startup-config <path-to-config>", "Path to startup config", loadStartupConfig)
168163
.option("--limits <json-string>", "Instance limits")
169164
.description("Start the Sequence with or without given arguments")
170-
.action(async (id, { startupConfig, configFile, configString, outputTopic, inputTopic, args: argsStr, limits: limitsStr, instId }: SequenceStartParams) => {
165+
.action(async (id, { startupConfig, configFile, configString, outputTopic, inputTopic, args: argsStr, limits: limitsStr, instId: instanceId }: SequenceStartCLIArgs) => {
171166
const args = argsStr ? sequenceParseArgs(argsStr) : undefined;
172167
const appConfig = await sequenceParseConfig(configFile, configString);
173168
const limits = limitsStr ? JSON.parse(limitsStr) : {};
@@ -176,7 +171,7 @@ export const sequence: CommandDefinition = (program) => {
176171
merge(startupConfig, {
177172
appConfig,
178173
args,
179-
instanceId: instId,
174+
instanceId,
180175
inputTopic,
181176
outputTopic,
182177
limits
@@ -187,7 +182,7 @@ export const sequence: CommandDefinition = (program) => {
187182
}
188183

189184
const instanceClient = await sequenceStart(id, {
190-
appConfig: startupConfig.appConfig as SequenceStartParams["appConfig"],
185+
appConfig: startupConfig.appConfig as AppConfig,
191186
args: startupConfig.args,
192187
limits: startupConfig.limits,
193188
instanceId: startupConfig.instanceId,
@@ -213,7 +208,7 @@ export const sequence: CommandDefinition = (program) => {
213208
.option("--startup-config <path-to-config>", "Path to startup config", loadStartupConfig)
214209
.option("--limits <json-string>", "Instance limits")
215210
.description("Pack (if needed), send and start the Sequence")
216-
.action(async (path: string, { startupConfig, output, configFile, configString, outputTopic, inputTopic, args: argsStr, limits: limitsStr, instId }: SequenceStartParams) => {
211+
.action(async (path: string, { startupConfig, output, configFile, configString, outputTopic, inputTopic, args: argsStr, limits: limitsStr, instId }: SequenceStartCLIArgs) => {
217212
const args = argsStr ? sequenceParseArgs(argsStr) : undefined;
218213
const appConfig = await sequenceParseConfig(configFile, configString);
219214
const limits = limitsStr ? JSON.parse(limitsStr) : {};
@@ -258,7 +253,7 @@ export const sequence: CommandDefinition = (program) => {
258253
}
259254

260255
const instanceClient = await sequenceStart("-", {
261-
appConfig: startupConfig.appConfig as SequenceStartParams["appConfig"],
256+
appConfig: startupConfig.appConfig as AppConfig,
262257
args: startupConfig.args,
263258
limits: startupConfig.limits,
264259
instanceId: startupConfig.instanceId,
Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import { AppConfig } from "../app-config";
22
import { InstanceLimits } from "../instance-limits";
33

4-
export type StartSequenceResponse = { id: string }
4+
export type StartSequenceResponse = { id: string };
55

66
export type StartSequencePayload = {
7-
appConfig: AppConfig,
8-
args?: any[],
9-
outputTopic?: string,
10-
inputTopic?: string,
11-
limits?: InstanceLimits,
12-
instanceId?: string
13-
}
7+
appConfig: AppConfig;
8+
args?: any[];
9+
outputTopic?: string;
10+
inputTopic?: string;
11+
limits?: InstanceLimits;
12+
instanceId?: string;
13+
};

0 commit comments

Comments
 (0)