Kubernetes operator for SonataFlow

Clone this repo:
  1. 5936bee kie-kogito-serverless-operator-441: Make the SonataFlowBuild smarter to manage persistence related extensions/props based on configuration (#457) by Walter Medvedeo · 17 hours ago main
  2. 4f505a7 Fix #385 - Introduce Knative deployments for workflows (#447) by Ricardo Zanini · 20 hours ago
  3. 023d0e8 kie-kogito-serverless-operator-445: Add custom configuration to the DI and JS for operator managed deployments (#455) by Walter Medvedeo · 3 days ago
  4. a49e299 NO-ISSUE: Use preview instead of prod in 03-sonataflow_callbackstatetimeouts.sw.yaml (#444) by Dominik Hanák · 14 days ago
  5. f7e81d7 Bump golang.org/x/net from 0.17.0 to 0.23.0 (#454) by Ricardo Zanini · 3 weeks ago

SonataFlow Operator

The SonataFlow Operator defines a set of Kubernetes Custom Resources to help users to deploy SonataFlow projects on Kubernetes and OpenShift.

Please visit our official documentation to know more.

Available modules for integrations

If you're a developer, and you are interested in integrating your project or application with the SonataFlow Operator ecosystem, this repository provides a few Go Modules described below.

SonataFlow Operator Types (api)

Every custom resource managed by the operator is exported in the module api. You can use it to programmatically create any custom type managed by the operator. To use it, simply run:

go get github.com/kiegroup/kogito-serverless-workflow/api

Then you can create any type programmatically, for example:

workflow := &v1alpha08.SonataFlow{
ObjectMeta: metav1.ObjectMeta{Name: w.name, Namespace: w.namespace},
Spec:       v1alpha08.SonataFlowSpec{Flow: *myWorkflowDef>}
}

You can use the Kubernetes client-go library to manipulate these objects in the cluster.

You might need to register our schemes:

    s := scheme.Scheme
utilruntime.Must(v1alpha08.AddToScheme(s))

Container Builder (container-builder)

Please see the module's README file.

Workflow Project Handler (workflowproj)

Please see the module's README file.

Development and Contributions

Contributing is easy, just take a look at our contributors'guide.

Productization notes

In order to productize the Red Hat OpenShift Serverless Logic Operator read the notes into the productization'section.