fix(core): Replace throw with warning when deactivating a non-active workflow (#6969)

Replaces a throw with a warning message instead, since the failure in
question is not serious enough to warrant stopping the application.
This commit is contained in:
Michael Auerswald 2023-08-18 14:04:49 +02:00 committed by GitHub
parent 6422078a5d
commit b6a00febbd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 4 deletions

View file

@ -920,8 +920,10 @@ export class ActiveWorkflowRunner implements IWebhookManager {
// if it's active in memory then it's a trigger // if it's active in memory then it's a trigger
// so remove from list of actives workflows // so remove from list of actives workflows
if (this.activeWorkflows.isActive(workflowId)) { if (this.activeWorkflows.isActive(workflowId)) {
await this.activeWorkflows.remove(workflowId); const removalSuccess = await this.activeWorkflows.remove(workflowId);
Logger.verbose(`Successfully deactivated workflow "${workflowId}"`, { workflowId }); if (removalSuccess) {
Logger.verbose(`Successfully deactivated workflow "${workflowId}"`, { workflowId });
}
} }
} }
} }

View file

@ -197,12 +197,13 @@ export class ActiveWorkflows {
* *
* @param {string} id The id of the workflow to deactivate * @param {string} id The id of the workflow to deactivate
*/ */
async remove(id: string): Promise<void> { async remove(id: string): Promise<boolean> {
if (!this.isActive(id)) { if (!this.isActive(id)) {
// Workflow is currently not registered // Workflow is currently not registered
throw new Error( Logger.warn(
`The workflow with the id "${id}" is currently not active and can so not be removed`, `The workflow with the id "${id}" is currently not active and can so not be removed`,
); );
return false;
} }
const workflowData = this.workflowData[id]; const workflowData = this.workflowData[id];
@ -244,5 +245,7 @@ export class ActiveWorkflows {
} }
delete this.workflowData[id]; delete this.workflowData[id];
return true;
} }
} }