-
Epic
-
Resolution: Unresolved
-
Major
-
None
-
None
-
Knative integration
-
False
-
-
False
-
To Do
-
17% To Do, 50% In Progress, 33% Done
-
-
This EPIC captures the tasks required to integrate workflows with Knative Eventing and Serving.
1) Knative Eventing integration
Knative Eventing plays a huge part in SonataFlow Operator use cases:
- Identify topologies to integrate with Knative Eventing resources
- Identify event integration by analyzing the SonataFlow CR flow definition
As a user, I should be able to deploy a workflow that can produce or consume CloudEvents using the Knative Eventing platform. P2P or Broadcast communications should be considered.
2) Knative Serving Integration
The user has the option to deploy the workflows via Knative Serving instead of regular Kubernetes Deployments:
- Straight workflows (no callbacks, no resume) should be able to execute and have the pod scaled to 0 after processing
- Workflows depending on resume instances (for example, callbacks), should be deployed by the user with persistence in case the pod is scaled to zero and still waiting for the resume event to come
- The user should be able to declare knative functions in the functions definition in the flow. See https://sonataflow.org/serverlessworkflow/latest/integrations/custom-functions-knative.html