Global Configuration Settings
This document describes how to set global configuration options for the SonataFlow Operator.
-
You have installed the operator in the target cluster. You can find more information at the Install the SonataFlow Operator guide.
Modifying configuration options
After installing the operator, you can access the ConfigMap named sonataflow-operator-controllers-config
in the namespace sonataflow-operator-system
.
This configuration file governs the operator’s behavior when creating new resources in the cluster. Existing resources won’t be changed after this configuration.
See the section Configuration Changes Impact for more information.
You can freely edit any of the options in the key controllers_cfg.yaml
entry. The table bellow lists each possible entry.
Configuration Key | Default Value | Description |
---|---|---|
|
1Gi |
The default size of Kaniko PVC when using the internal operator builder manager. |
|
50 |
How much time (in seconds) to wait for a devmode workflow to start. This information is used for the controller manager to create new devmode containers and setup the healthcheck probes. |
|
gcr.io/kaniko-project/warmer:v1.9.0 |
Default image used internally by the Operator Managed Kaniko builder to create the warmup pods. |
|
gcr.io/kaniko-project/executor:v1.9.0 |
Default image used internally by the Operator Managed Kaniko builder to create the executor pods. |
|
empty |
The Jobs Service image for PostgreSQL to use, if empty the operator will use the default Apache Community one based on the current operator’s version. |
|
empty |
The Jobs Service image without persistence to use, if empty the operator will use the default Apache Community one based on the current operator’s version. |
|
empty |
The Data Index image for PostgreSQL to use, if empty the operator will use the default Apache Community one based on the current operator’s version. |
|
empty |
The Data Index image without persistence to use, if empty the operator will use the default Apache Community one based on the current operator’s version. |
|
empty |
SonataFlow base builder image used in the internal Dockerfile to build workflow applications in preview profile. If empty the operator will use the default Apache Community one based on the current operator’s version. |
|
empty |
The image to use to deploy SonataFlow workflow images in devmode profile. If empty the operator will use the default Apache Community one based on the current operator’s version. |
|
sonataflow-operator-builder-config |
The default name of the builder configMap in the operator’s namespace. |
|
next column |
Quarkus extensions required for workflows persistence. These extensions are used by the SonataFlow Operator builder in cases where the workflow being built has configured postgresql persistence.
io.quarkus:quarkus-agroal:3.8.4 io.quarkus:quarkus-jdbc-postgresql:3.8.4 org.kie:kie-addons-quarkus-persistence-jdbc:999-SNAPSHOT |
To edit this file, update the ConfigMap sonataflow-operator-controllers-config
using your preferred tool such as kubectl
.
Configuration Changes Impact
When updating the global configuration, the changes will be taken impact immediately for newly created resources only.
For example, if you change sonataFlowDevModeImageTag
property, given that you already have a workflow deployed in devmode, the operator won’t rollout a new one with the new image configuration. Only new deployments will be affected.
A Note About the Base Builder Image
As noted in Changing Base Builder section, you can directly change the base builder image in the Dockerfile used by the SonataFlow Operator.
Additionally, you can also change the base builder image in the SonataFlowPlatform
in the current namespace:
apiVersion: sonataflow.org/v1alpha08
kind: SonataFlowPlatform
metadata:
name: sonataflow-platform
spec:
build:
config:
baseImage: dev.local/my-workflow-builder:1.0.0
And finally, you can also change this information directly in the global confinguration ConfigMap
apiVersion: v1
data:
controllers_cfg.yaml: |
sonataFlowBaseBuilderImageTag: dev.local/my-workflow-builder:1.0.0
kind: ConfigMap
metadata:
name: sonataflow-operator-controllers-config
namespace: sonataflow-operator-system
The order of precedence is:
-
The
SonataFlowPlatform
in the current context -
The global configuration entry
-
The
FROM
clause in the Dockerfile in the operator’s namespacesonataflow-operator-builder-config
ConfigMap
In summary, the entry in SonataFlowPlatform
will always override any other value.
Found an issue?
If you find an issue or any misleading information, please feel free to report it here. We really appreciate it!