Skip to content

Commit 60e178f

Browse files
committed
ensure correct execution order after waiting for deploy
1 parent 5886208 commit 60e178f

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

apps/webapp/app/v3/services/executeTasksWaitingForDeploy.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,9 @@ export class ExecuteTasksWaitingForDeployService extends BaseService {
3535
in: backgroundWorker.tasks.map((task) => task.slug),
3636
},
3737
},
38+
orderBy: {
39+
number: "asc",
40+
},
3841
});
3942

4043
if (!runsWaitingForDeploy.length) {
@@ -64,7 +67,8 @@ export class ExecuteTasksWaitingForDeployService extends BaseService {
6467
return;
6568
}
6669

67-
const enqueues: (Promise<any> | undefined)[] = [];
70+
const enqueues: Promise<any>[] = [];
71+
let i = 0;
6872

6973
for (const run of runsWaitingForDeploy) {
7074
enqueues.push(
@@ -76,9 +80,12 @@ export class ExecuteTasksWaitingForDeployService extends BaseService {
7680
type: "EXECUTE",
7781
taskIdentifier: run.taskIdentifier,
7882
},
79-
run.concurrencyKey ?? undefined
83+
run.concurrencyKey ?? undefined,
84+
Date.now() + i * 5 // slight delay to help preserve order
8085
)
8186
);
87+
88+
i++;
8289
}
8390

8491
const settled = await Promise.allSettled(enqueues);

0 commit comments

Comments
 (0)