We're updating the issue view to help you get more done. 

Executing a workflow that doesn't exist, results in an unremovable execution

Description

cfy executions start -w my_execution

If my_execution is defined in the blueprint, but leads to a nonexistent Python module/function, an exception will be shown to the management worker logs. However, from that point on, there is no way to remove the execution. Cancellation or force-cancellation won't help (execution will be stuck in cancelling or force_cancelling state).

This will also happen if the python module being invoked encounters an interpretation exception before the workflow itself is called. For example:

1 2 3 4 i = 3/0 def my_workflow(ctx): ctx.logger.info("Hello")

This will bring the execution to "pending" state because of the division by zero.

Another example steps to reproduce
1. Declare a plugin that exists within the blueprint (under `plugins/`), but remove the actual plugin implementation files

1 2 3 4 5 6 7 plugins: my_plugin: source: my_plugin workflows: my_workflow: implementation: my_plugin.sure.whatever

2. Run the my_workflow workflow

Steps to Reproduce

.

Why Propose Close?

None

Status

Assignee

Ido Berkovitch

Reporter

Isaac Shabtay

Labels

None

Severity

Medium

Target Version

4.4

Premium Only

no

Found In Version

3.42

QA Owner

Uri Wygodny

Bug Type

None

Customer Encountered

None

Customer Name

None

Release Notes

yes

Priority

None

Sprint

None

Priority

Unprioritized