Skip to content

Commit 2545d5f

Browse files
committed
fix: Remove unnecessary scale up job workers API call and handling when editing job
1 parent fd0f075 commit 2545d5f

File tree

1 file changed

+34
-15
lines changed

1 file changed

+34
-15
lines changed

src/pages/deeploys/job/EditJob.tsx

Lines changed: 34 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -88,22 +88,23 @@ export default function EditJob() {
8888
}
8989

9090
const additionalNodesRequested: number = data.specifications.targetNodesCount - Number(job.numberOfNodesRequested);
91-
const increaseTargetNodes: boolean = additionalNodesRequested > 0;
91+
const increasingTargetNodes: boolean = additionalNodesRequested > 0;
9292

93-
if (increaseTargetNodes) {
93+
if (increasingTargetNodes) {
9494
setDeeployModalActions(['payment', 'signXMessages', 'callDeeployApi']);
9595
}
9696

9797
setErrors([]);
9898
setLoading(true);
9999

100-
setTimeout(() => deeployFlowModalRef.current?.open(1, increaseTargetNodes ? 2 : 1));
100+
setTimeout(() => deeployFlowModalRef.current?.open(1, increasingTargetNodes ? 2 : 1));
101101

102102
try {
103+
let scaleUpWorkersRequest;
103104
let scaleUpWorkersResponse;
104105

105106
// Pay for job extension in the smart contract
106-
if (increaseTargetNodes) {
107+
if (increasingTargetNodes) {
107108
const txHash = await walletClient.writeContract({
108109
address: escrowContractAddress,
109110
abi: CspEscrowAbi,
@@ -152,54 +153,72 @@ export default function EditJob() {
152153

153154
deeployFlowModalRef.current?.progress('signXMessages');
154155

156+
console.log('[EditJob] Triggering update pipeline signing', payload);
155157
const updatePipelineRequest = await signAndBuildUpdatePipelineRequest(job!, payload);
156158
console.log('[EditJob] Signed update pipeline request', updatePipelineRequest);
157-
const scaleUpWorkersRequest = await signAndBuildScaleUpWorkersRequest(
158-
job!,
159-
data.deployment.targetNodes.map((node) => node.address),
160-
job!.resources.containerOrWorkerType,
161-
);
162-
console.log('[EditJob] Signed scale up workers request', scaleUpWorkersRequest);
159+
160+
if (increasingTargetNodes) {
161+
console.log('[EditJob] Triggering scale up workers signing');
162+
scaleUpWorkersRequest = await signAndBuildScaleUpWorkersRequest(
163+
job!,
164+
data.deployment.targetNodes.map((node) => node.address),
165+
job!.resources.containerOrWorkerType,
166+
);
167+
console.log('[EditJob] Signed scale up workers request', scaleUpWorkersRequest);
168+
}
163169

164170
deeployFlowModalRef.current?.progress('callDeeployApi');
165171

166172
console.log('[EditJob] Calling update pipeline');
167173
const updatePipelineResponse = await updatePipeline(updatePipelineRequest);
168174
console.log('[EditJob] updatePipeline', updatePipelineResponse);
169175

170-
if (increaseTargetNodes) {
176+
if (increasingTargetNodes) {
171177
console.log('[EditJob] Calling scale up workers');
172178
scaleUpWorkersResponse = await scaleUpJobWorkers(scaleUpWorkersRequest);
173179
console.log('[EditJob] scaleUpWorkers', scaleUpWorkersResponse);
174180
}
175181

176182
if (
177183
updatePipelineResponse.status === 'success' &&
178-
(increaseTargetNodes ? scaleUpWorkersResponse.status === 'success' : true)
184+
(increasingTargetNodes ? scaleUpWorkersResponse.status === 'success' : true)
179185
) {
180186
deeployFlowModalRef.current?.progress('done');
181187
setFetchAppsRequired(true);
182188
toast.success('Job updated successfully.');
183189

190+
const serverAliases = [updatePipelineResponse?.server_info?.alias];
191+
192+
if (increasingTargetNodes) {
193+
serverAliases.push(scaleUpWorkersResponse?.server_info?.alias);
194+
}
195+
184196
setTimeout(() => {
185197
deeployFlowModalRef.current?.close();
198+
186199
navigate(`${routePath.deeploys}/${routePath.job}/${Number(job!.id)}`, {
187200
state: {
188-
serverAliases: [updatePipelineResponse.server_info.alias, scaleUpWorkersResponse.server_info.alias],
201+
serverAliases,
189202
},
190203
});
191204
}, 1000);
192205
} else {
193206
deeployFlowModalRef.current?.displayError();
194207
toast.error('Failed to update job, please try again.');
195208

196-
const aggregatedErrors = [updatePipelineResponse, scaleUpWorkersResponse]
209+
const responses = [updatePipelineResponse];
210+
211+
if (increasingTargetNodes) {
212+
responses.push(scaleUpWorkersResponse);
213+
}
214+
215+
const aggregatedErrors = responses
197216
.map((response) => {
198217
if (!response) {
199218
return undefined;
200219
}
201220

202-
const serverAlias = response.server_info?.alias ?? 'Unknown server';
221+
const serverAlias = response?.server_info?.alias ?? 'Unknown server';
203222
let text: string | undefined;
204223

205224
if (response.status === 'timeout') {

0 commit comments

Comments
 (0)