Wait for active workflow to finish before shutting down

This commit is contained in:
Jan Oberhauser 2020-09-14 12:30:58 +02:00
parent ae343b9f79
commit 397132688e

View file

@ -8,12 +8,14 @@ const open = require('open');
import * as config from '../config';
import {
ActiveExecutions,
ActiveWorkflowRunner,
CredentialTypes,
CredentialsOverwrites,
Db,
ExternalHooks,
GenericHelpers,
IExecutionsCurrentSummary,
LoadNodesAndCredentials,
NodeTypes,
Server,
@ -85,6 +87,21 @@ export class Start extends Command {
await Promise.all(removePromises);
// Wait for active workflow executions to finish
const activeExecutionsInstance = ActiveExecutions.getInstance();
let executingWorkflows = activeExecutionsInstance.getActiveExecutions();
let count = 0;
while (executingWorkflows.length !== 0) {
if (count++ % 4 === 0) {
console.log(`Waiting for ${executingWorkflows.length} active executions to finish...`);
}
await new Promise((resolve) => {
setTimeout(resolve, 500);
});
executingWorkflows = activeExecutionsInstance.getActiveExecutions();
}
process.exit(processExistCode);
}