.. _background: Background =========== The core of the OET is a script execution engine which runs a requested script in a child Python process. The engine supervises script execution, in that it can terminate the script at any time when requested, and captures the output and/or errors generated by the script for inspection by a (remote) client. A REST layer makes the Python API for the script execution engine available via REST over HTTP. This project also contains a command line client to allow users to submit script execution requests to a remote OET backend. The REST layer is made up of two components that work together to provide the remote script execution functionality: - The OET REST server maintains a list of the scripts that have been loaded and their current state. The server implements the interface specified by the OET :doc:`../internal/architecture/architecture_module_rest_api`. - The OET :doc:`../external/cli` provides a Command Line Interface (CLI) to the OET backend. More details on the OET architecture can be found in :doc:`../internal/architecture/architecture_backend_candc`. .. note:: SKA control scripts are not packaged as part of this project. The repository of observing scripts executed by the OET can be found in the `ska-oso-scripting `_ project.