Che: New Workspace Loading Page

Created on 26 Mar 2020  路  4Comments  路  Source: eclipse/che

Current workspace loading page looks like this:

image

The progress bar that doesn't provide any information about progress
The logs provide an idea of the progress but are shown on a small part of the screen and only someone that is familiar with Che architecture can understand what's going on (in terms of where we are in the workspace startup process)

A proposal is to:

  • Replace the progress bar with a list of the "high level steps" of a workspace startup updated with their status (NOT STARTED / IN PROGRESS / COMPLETED)
  • Show to detailed logs only if a user clicks on a logs tab or button

cc @beaumorley

areux areworkspace-loader kinepic

All 4 comments

There's actually already a fairly reasonable internal representation of the high-level steps in starting workspace in our tracing:
Screenshot_2020-03-27 Jaeger UI

With that in mind, I might suggest phases like

  1. Processing workspace plugins
    a. Downloading plugin metadata from plugin registry
  2. Preparing to create workspace objects (elements?)
  3. Waiting for workspace to be ready
    a. Pulling images
    b. Running initialization tasks (init containers)
    c. Starting workspace containers
    d. Waiting for workspace servers

@amisevsk thanks for providing these details. I think they will be useful when @beaumorley will work on it.

For phase 2. I would use devfile terminology "Preparing to create workspace components".
And for 3d. as well "Waiting for workspace components readiness" ("workspace server" terminology).

Something important for the design is that, the 4 steps of phase 3, are run multiple times (once for each workspace container) and in parallel (one container can be ready while another one stuck at phase a).

@amisevsk in what phase does the volume mount happen?

@amisevsk in what phase does the volume mount happen?

Volume mounting happens when the pod is created (before image pulls) IIRC, so it would be the new step 3.a. That would be a very useful progress bullet point to include. Another pain point we might try to address down the line is route exposure time.

Volume mounting can also happen asynchronously in the future https://github.com/eclipse/che/issues/15384.

Was this page helpful?
0 / 5 - 0 ratings