ALICE’s Experiment Control System (ECS) uses entities named environments to enable users to take data in ALICE. These environments are a set of software and hardware configurations used for preparation and during data-taking operations.
Environments can transition (link) between multiple states. These states can be:
Thus, for the GUI to provide a good user experience, the ECS GUI introduces a few logic items that are to be known when developing for ECS GUI:
A deployment is a set of operations that prepares hardware and software for data taking operations. A deployment is a definition in ECS GUI that covers an environment first transition from:
PENDING
(virtual state) -> STANDBY
-> DEPLOY
-> CONFIGURED
For this sequence of actions, ECS GUI assigns a private attribute isDeploying
and deploymentError
to the environment so that it can display to the User all the information needed.
isDeploying
set to:
true
- only by:
NewEnvironmentAsync
PENDING
false
- only if:
CONFIGURED
and message 'transition completed successfully'
is receivedisDeploying
is true
already (TBD)deploymentError
is updated every time there is an event with an error (TBD)These attributes allow the GUI to display all necessary deployment information to the user.
If a deployment fails, the ECS will remove it from the active environments list. Thus, the GUI uses deploymentError
to make sure the environment is kept in-memory until the user acknowledges the error.