Workshop status diagrams

During its lifecycle, a workshop goes through a number of states, which we call statuses to distinguish them from SDK states. The following partial diagrams represent each state with the commands that cause the workshop to transition to a different status.

Off

Always the starting point, where the workshop exists solely as a definition file in the project directory; there is no container yet.

        stateDiagram-v2
    OFF --> READY: launch
    OFF --> ERROR: launch (on error)
    OFF --> WAITING: launch --wait-on-error (on error)
    

Off state

Ready

The workshop was successfully launched from the definition file; its underlying container is linked to the project directory, up and ready to do some work.

        stateDiagram-v2
    READY --> STOPPED: stop
    READY --> OFF: remove
    READY --> READY: remount
    READY --> READY: refresh
    READY --> ERROR: refresh (on error)
    READY --> WAITING: refresh --wait-on-error (on error)
    

Ready state

Stopped

The underlying container was stopped but is still linked to the project directory.

        stateDiagram-v2
    STOPPED --> READY: start
    STOPPED --> STOPPED: remount
    

Stopped state

Waiting

The workshop is paused in the middle of a change to allow for interactive debugging; only a few commands will be accepted.

         stateDiagram-v2
     WAITING --> OFF: launch --abort
     WAITING --> READY: launch --continue
     WAITING --> READY: refresh --abort
     WAITING --> READY: refresh --continue
    

Waiting state

Pending

An intermediate state while the workshop is being updated or changing its status; only a few commands will be accepted.

Error

The workshop failed at some stage, and its underlying container became nonoperational.

        stateDiagram-v2
    ERROR --> OFF: remove
    

Error state

See also

Explanation:

Reference: