-
Enhancement
-
Resolution: Done
-
Major
-
4.14.0.Final
-
None
-
Sprint #228 Dec 2022
-
3
While working on the odo based explorer to JBoss Tools, I noticed that we are starting long running process and those processes are not managed / controlled once launched.
I think we should do and I will explain my proposition.
The long processes are the following:
- watch
- follow log
- debug
Less critical , we also have describe, list services and component and in general each time we launch odo in a terminal. This is less critical because they are less long living.
The problem that we have is:
- we should stop them when context is switched
- we should stop them when tooling stops (seems VSCode is handling that properly)
- we should stop them when we undeploy/delete a component
Another plus is that managing them will prevent multiple executions of the same task and control of state for the debug.
Here is my proposition: each time we start a long running process we keep it at the OdoCli (for JBoss Tools / IJ) level in a map that is keyed by project / application / component / action-type.
Then, we can:
- while processing delete / undeploy, scan the map to find proper processes to stop
- while processing debug we can check that debug is already running or not
- for cleanup before tooling exit or context switch we should add a reset method (this is required btw for proxy support as we need to recompute the HTTPS_PROXY env variable that will be passed to future odo executions
- links to