This PR sets up the basic conversion logic to generate the ReactFlow workspace's nodes/edges based on a WorkflowConfig. As an example, given a config with ingest processors defined under ingest.enrich, UI will generate a Transformer component and connect it between the initial request, and the index, to visualize the data flow. Example in screenshot below.
More specifics:
updates the nodes/edges initialization in Workflow to be dynamically generated based on the config, instead of using the persisted workspace_flow. (we may deprecate workspace_flow as we may not need to persist that for now, until we want drag-and-drop support)
implements uiConfigToWorkspaceFlow and all of its sub/helper fns. Some are implemented and some are stubbed, will be filled out as the config details and fields we want to support are finalized. At a high level, we will have a few static/consistent workspace components for all workflows, such as an 'index' component under both 'Ingest' and 'Search' flows. As users add processors under ingest/search pipelines, we will dynamically add components and link them up in the workspace.
Screenshot:
Issues Resolved
Makes progress on #23
Check List
[x] Commits are signed per the DCO using --signoff
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.
Description
This PR sets up the basic conversion logic to generate the ReactFlow workspace's nodes/edges based on a WorkflowConfig. As an example, given a config with ingest processors defined under
ingest.enrich
, UI will generate a Transformer component and connect it between the initial request, and the index, to visualize the data flow. Example in screenshot below.More specifics:
Workflow
to be dynamically generated based on theconfig
, instead of using the persistedworkspace_flow
. (we may deprecateworkspace_flow
as we may not need to persist that for now, until we want drag-and-drop support)uiConfigToWorkspaceFlow
and all of its sub/helper fns. Some are implemented and some are stubbed, will be filled out as the config details and fields we want to support are finalized. At a high level, we will have a few static/consistent workspace components for all workflows, such as an 'index' component under both 'Ingest' and 'Search' flows. As users add processors under ingest/search pipelines, we will dynamically add components and link them up in the workspace.Screenshot:
Issues Resolved
Makes progress on #23
Check List
--signoff
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license. For more information on following Developer Certificate of Origin and signing off your commits, please check here.