https://github.com/apache/incubator-kie-kogito-serverless-operator
Kubernetes operator for SonataFlow
https://github.com/apache/incubator-kie-kogito-serverless-operator
k8s kogito kubernetes operator serverless workflow
Last synced: about 2 months ago
JSON representation
Kubernetes operator for SonataFlow
- Host: GitHub
- URL: https://github.com/apache/incubator-kie-kogito-serverless-operator
- Owner: apache
- License: apache-2.0
- Created: 2022-06-22T07:59:08.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-11-14T09:09:11.000Z (7 months ago)
- Last Synced: 2025-03-30T03:21:20.751Z (2 months ago)
- Topics: k8s, kogito, kubernetes, operator, serverless, workflow
- Language: Go
- Homepage:
- Size: 114 MB
- Stars: 19
- Watchers: 30
- Forks: 43
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# SonataFlow Operator
The SonataFlow Operator defines a set
of [Kubernetes Custom Resources](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/)
to help users to deploy SonataFlow projects on Kubernetes and OpenShift.Please [visit our official documentation](https://kiegroup.github.io/kogito-docs/serverlessworkflow/latest/cloud/operator/install-serverless-operator.html)
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](api). You can use it to programmatically
create any custom type managed by the operator.
To use it, simply run:```shell
go get github.com/kiegroup/kogito-serverless-workflow/api
```Then you can create any type programmatically, for example:
```go
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](https://github.com/kubernetes/client-go) to manipulate these objects in
the cluster.You might need to register our schemes:
```go
s := scheme.Scheme
utilruntime.Must(v1alpha08.AddToScheme(s))
```### Container Builder (container-builder)
Please see the module's [README file](container-builder/README.md).
### Workflow Project Handler (workflowproj)
Please see the module's [README file](workflowproj/README.md).
## Development and Contributions
Contributing is easy, just take a look at our [contributors](docs/CONTRIBUTING.md)'guide.