feat(workflow): orchestrate resumable dataflow handoffs
This commit is contained in:
@@ -243,6 +243,12 @@ WORKFLOW_NODE_TYPES = (
|
||||
input_ports=(DefinitionPort(id="input", label="Input"),),
|
||||
output_ports=(
|
||||
DefinitionPort(id="success", label="Success", required=False),
|
||||
DefinitionPort(id="warning", label="Warning", required=False),
|
||||
DefinitionPort(
|
||||
id="review_required",
|
||||
label="Review required",
|
||||
required=False,
|
||||
),
|
||||
DefinitionPort(id="failure", label="Failure", required=False),
|
||||
),
|
||||
config_fields=(
|
||||
@@ -294,6 +300,12 @@ WORKFLOW_NODE_TYPES = (
|
||||
input_ports=(DefinitionPort(id="input", label="Input"),),
|
||||
output_ports=(
|
||||
DefinitionPort(id="success", label="Success", required=False),
|
||||
DefinitionPort(id="warning", label="Warning", required=False),
|
||||
DefinitionPort(
|
||||
id="review_required",
|
||||
label="Review required",
|
||||
required=False,
|
||||
),
|
||||
DefinitionPort(id="failure", label="Failure", required=False),
|
||||
),
|
||||
config_fields=(
|
||||
@@ -303,9 +315,59 @@ WORKFLOW_NODE_TYPES = (
|
||||
kind="dataflow",
|
||||
required=True,
|
||||
),
|
||||
DefinitionConfigField(
|
||||
id="revision",
|
||||
label="Pinned revision",
|
||||
kind="number",
|
||||
required=True,
|
||||
),
|
||||
DefinitionConfigField(
|
||||
id="environment",
|
||||
label="Environment",
|
||||
kind="select",
|
||||
required=True,
|
||||
options=(
|
||||
("development", "Development"),
|
||||
("staging", "Staging"),
|
||||
("production", "Production"),
|
||||
),
|
||||
),
|
||||
DefinitionConfigField(
|
||||
id="row_limit",
|
||||
label="Output row limit",
|
||||
kind="number",
|
||||
required=True,
|
||||
),
|
||||
DefinitionConfigField(
|
||||
id="publication_target_ref",
|
||||
label="Publication datasource",
|
||||
kind="text",
|
||||
description=(
|
||||
"Optional stable Datasource target for materialized "
|
||||
"output."
|
||||
),
|
||||
),
|
||||
DefinitionConfigField(
|
||||
id="warning_policy",
|
||||
label="Warnings",
|
||||
kind="select",
|
||||
required=True,
|
||||
options=(
|
||||
("review", "Require review"),
|
||||
("continue", "Continue"),
|
||||
),
|
||||
),
|
||||
DefinitionConfigField(id="input_mapping", label="Input mapping", kind="mapping"),
|
||||
),
|
||||
default_config={"pipeline_ref": "", "input_mapping": {}},
|
||||
default_config={
|
||||
"pipeline_ref": "",
|
||||
"revision": 1,
|
||||
"environment": "development",
|
||||
"row_limit": 500,
|
||||
"publication_target_ref": "",
|
||||
"warning_policy": "review",
|
||||
"input_mapping": {},
|
||||
},
|
||||
),
|
||||
DefinitionNodeType(
|
||||
type="workflow.end.completed",
|
||||
|
||||
Reference in New Issue
Block a user