wei.core.interfaces.zmq_interface

Handling ZMQ execution for steps in the RPL-SDL efforts

pydantic model wei.core.interfaces.zmq_interface.ZmqInterface

Basic Interface for interacting with WEI modules using ZMQ

Show JSON schema
{
   "title": "ZmqInterface",
   "description": "Basic Interface for interacting with WEI modules using ZMQ",
   "type": "object",
   "properties": {
      "name": {
         "title": "Name",
         "type": "string"
      }
   },
   "required": [
      "name"
   ]
}

Config:
  • use_enum_values: bool = True

Fields:

Validators:

static config_validator(config: Dict[str, Any]) bool

Validates the configuration for the interface

Parameters:

config (dict) – The configuration for the module

Returns:

bool – Whether the configuration is valid or not

static send_action(step: Step, module: Module, **kwargs: Any) Tuple[str, str, str]

Executes a single step from a workflow using a ZMQ messaging framework with the ZMQ library

Parameters:

step (Step) – A single step from a workflow definition

Returns:

  • action_response (StepStatus) – A status of the step (in theory provides async support with IDLE, RUNNING, but for now is just SUCCEEDED/FAILED)

  • action_msg (str) – the data or information returned from running the step.

  • action_log (str) – A record of the execution of the step