Uploaded image for project: 'Tools (JBoss Tools)'
  1. Tools (JBoss Tools)
  2. JBIDE-27083

Process management for running odo cli instances

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Done
    • Icon: Major Major
    • 4.26.0.Final
    • 4.14.0.Final
    • openshift
    • 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

              sbouchet.rh Stephane Bouchet
              jmaury@redhat.com Jeff MAURY
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: