Workflow API¶
workflow class¶
Module: hermes.workflow.workflow
The central class that loads JSON workflow definitions and builds executable task networks.
Constructor¶
| Parameter | Type | Description |
|---|---|---|
workflowJSON |
dict | The workflow JSON definition |
WD_path |
str | Working directory path |
Resources_path |
str | Path to the Resources directory |
name |
str | Optional workflow name |
Properties¶
| Property | Type | Description |
|---|---|---|
json |
dict | Full workflow JSON with GUI and final nodes |
workflowJSON |
dict | The workflow section only |
nodeList |
list | Ordered list of node names |
nodes |
dict | Node definitions dictionary |
parametersJSON |
dict | Extracted parameters only |
taskRepresentations |
dict | Map of node names to TaskWrapper lists |
solver |
str | Solver configuration |
Methods¶
build(buildername)¶
Build execution code for the specified engine.
| Parameter | Type | Description |
|---|---|---|
buildername |
str | Engine name (e.g., "luigi") |
write(workflowName, directory, fullJSON=False)¶
Persist the workflow to a JSON file.
updateNodes(parameters)¶
Update node parameters from a dictionary.
getRootTaskName()¶
Returns the name of the root (final) task in the workflow.
Dictionary Access¶
The workflow supports dictionary-like access to nodes:
node = wf["NodeName"] # Get node
wf["NewNode"] = node_def # Set node
del wf["OldNode"] # Delete node
for name in wf.keys(): # Iterate names
...
hermesNode class¶
Module: hermes.workflow.workflow
Provides a convenient interface to individual node JSON definitions.
Constructor¶
Properties¶
| Property | Type | Description |
|---|---|---|
name |
str | Node name |
parameters |
dict | Node input parameters |
executionJSON |
dict | Execution configuration only |
parametersTable |
DataFrame | Pandas-formatted parameters table |