We have a handful of Drush commands which allow for dispatcherd to send data
back to the frontend. These are wrapped in relayd tasks which simply relay
the information into the appropriate drush command to post data values
(aegir:input), operation log data (aegir:log) or exit codes
(aegir:exitcode) back to an Operation the backend has run:
aegir:inputThe drush aegir:input command is used for updating field values on a given entity. The backend provides the type and uuid, as well as field name and data value, and this command will load the entity, set the value, and re-save.
This corresponds with the relayd aegir_input
task, which
dispatcherd calls by placing a task on the queue for relayd to run through
drush aegir:input.
aegir:logThe drush aegir:log
command allows the backend to send Operation log data back to the frontend
while an Operation is running. The command requires a uuid for the operation,
as well as timestamp, sequence (to be deprecated), and data values. These
are posted as new values on the multi-value log fields attached to the
Operation.
This corresponds to the relayd aegir_log
task that
dispatcherd calls by placing a task on the queue for relayd to run through
drush aegir:log.
aegir:exitcodeThe drush aegir:exitcode command is the mechanism for the backend to return a final status code for an Operation it has run. This is a simple numeric code, typically as returned by the shell command which was run, to indicate whether the Operation succeeded or not.
The corresponding relayd
aegir_exitcode
task is called from dispatcherd by placing a task on the queue for relayd
to in turn pass to drush aegir:exitcode.