Virtual deployment¶
The trac model runtime is a python package that provides the context within which trac models run. It guarantees models receive inputs that meet their requirements and takes responsibility data marshalling out of the model code.
Models simply declare their inputs, outputs, and parameters - the trac model runtime takes care of the rest.

In the trac platform, models aren’t deployed in the traditional sense - the code stays in the repository and is fetched dynamically at runtime. There are three steps to this process:
IMPORT MODEL |
Model code is scanned by not copied. A new metadata object is created which contains the model schema and a link to the code in the repository (via the commit ID) |
BUILD FLOW |
Models are combined into Flows (calculation graphs) where the outputs of one model become the inputs to the next. Flows exist only as trac metadata and are validated using the model schemas |
RUN FLOW |
To launch a Job you select the Flow and the data inputs - all the model code is then fetched from the repository at runtime. |
Note
This short video explains the virtual deployment method more fully.