Chapter 2. Global configuration settings You can set global configuration options for the OpenShift Serverless Logic Operator. 2.1. Prerequisites You have installed the OpenShift Serverless Logic Operator in the target cluster. 2.2. Customization of global configurations After installing the OpenShift Serverless Logic Operator, you can access the logic-operator-rhel8-controllers-config config map file in the openshift-serverless-logic namespace. This configuration file defines how the Operator behaves when it creates new resources in the cluster. However, changes to this configuration does not affect resources that already exist. You can modify any of the options within the controllers_cfg.yaml key in the config map. The following table outlines all the available global configuration options: Configuration key Default value Description defaultPvcKanikoSize 1Gi The default size of Kaniko persistent volume claim (PVC) when using the internal OpenShift Serverless Logic Operator builder manager. healthFailureThresholdDevMode 50 How much time (in seconds) to wait for a developer mode workflow to start. This information is used for the controller manager to create new developer mode containers and setup the health check probes. kanikoDefaultWarmerImageTag gcr.io/kaniko-project/warmer:v1.9.0 Default image used internally by the Operator managed Kaniko builder to create the warmup pods. kanikoExecutorImageTag gcr.io/kaniko-project/executor:v1.9.0 Default image used internally by the Operator managed Kaniko builder to create the executor pods. jobsServicePostgreSQLImageTag registry.redhat.io/openshift-serverless-1/logic-jobs-service-postgresql-rhel8:1.35.0 The Jobs service image for PostgreSQL to use. If empty, the OpenShift Serverless Logic Operator uses the default Apache community image based on the current OpenShift Serverless Logic Operator version. jobsServiceEphemeralImageTag registry.redhat.io/openshift-serverless-1/logic-jobs-service-ephemeral-rhel8:1.35.0 The Jobs service image without persistence to use. If empty, the OpenShift Serverless Logic Operator uses the default Apache community image based on the current OpenShift Serverless Logic Operator version. dataIndexPostgreSQLImageTag registry.redhat.io/openshift-serverless-1/logic-data-index-postgresql-rhel8:1.35.0 The Data Index service image for PostgreSQL to use. If empty, the OpenShift Serverless Logic Operator uses the default Apache community image based on the current OpenShift Serverless Logic Operator version. dataIndexEphemeralImageTag registry.redhat.io/openshift-serverless-1/logic-data-index-ephemeral-rhel8:1.35.0 The Data Index service image without persistence to use. If empty, the OpenShift Serverless Logic Operator uses the default Apache community image based on the current OpenShift Serverless Logic Operator version. sonataFlowBaseBuilderImageTag registry.redhat.io/openshift-serverless-1/logic-swf-builder-rhel8:1.35.0 OpenShift Serverless Logic base builder image used in the internal Dockerfile to build workflow applications in preview profile. If empty, the OpenShift Serverless Logic Operator uses the default Apache community image based on the current OpenShift Serverless Logic Operator version. sonataFlowDevModeImageTag registry.redhat.io/openshift-serverless-1/logic-swf-devmode-rhel8:1.35.0 The image to use to deploy OpenShift Serverless Logic workflow images in devmode profile. If empty, the OpenShift Serverless Logic Operator uses the default Apache community image based on the current OpenShift Serverless Logic Operator version. builderConfigMapName logic-operator-rhel8-builder-config The default name of the builder config map in the OpenShift Serverless Logic Operator namespace. postgreSQLPersistenceExtensions column Quarkus extensions required for workflows persistence. These extensions are used by the OpenShift Serverless Logic Operator builder in cases where the workflow being built has configured PostgreSQL persistence. kogitoEventsGrouping true When set to true , configures every workflow deployment with the gitops or preview profiles to send accumulated workflow status change events to the Data Index service, reducing the number of produced events. You can set the value to false to send individual events. kogitoEventsGroupingBinary true When set to true , the accumulated workflow status change events are sent in binary mode, reducing the size of the produced events. You can set the value to false to send plain JSON events. kogitoEventsGroupingCompress false When set to true , the accumulated workflow status change events, if sent in binary mode, are zipped at the cost of some performance. You can edit this by updating the logic-operator-controllers-config config map by using the oc command-line tool. 2.2.1. Impact of global configuration changes When you update the global configurations, the changes immediately affect only newly created resources. For example, if you change the sonataFlowDevModeImageTag property and already have a workflow deployed in dev mode, the OpenShift Serverless Logic Operator does not roll out a new deployment with the updated image configuration. Only new deployments reflect the changes. 2.2.2. Customizing the base builder image You can directly change the base builder image in the Dockerfile used by the OpenShift Serverless Logic Operator. Additionally, you can specify the base builder image in the SonataFlowPlatform configuration within the current namespace. This ensures that the specified base image is used exclusively in the given namespace. Example of SonataFlowPlatform with a custom base builder image apiVersion: sonataflow.org/v1alpha08 kind: SonataFlowPlatform metadata: name: sonataflow-platform spec: build: config: baseImage: dev.local/my-workflow-builder:1.0.0 Alternatively, you can also modify the base builder image in the global configuration config map as shown in the following example: Example of ConfigMap with a custom base builder image apiVersion: v1 data: controllers_cfg.yaml: | sonataFlowBaseBuilderImageTag: dev.local/my-workflow-builder:1.0.0 kind: ConfigMap metadata: name: logic-operator-rhel8-controllers-config namespace: openshift-serverless-logic When customizing the base builder image, the following order of precedence is applicable: The SonataFlowPlatform configuration in the current context. The global configuration entry in the ConfigMap resource. The FROM clause in the Dockerfile within the OpenShift Serverless Logic Operator namespace, defined in the logic-operator-rhel8-builder-config config map. The entry in the SonataFlowPlatform configuration always overrides any other value.

Commands:
apiVersion: sonataflow.org/v1alpha08 kind: SonataFlowPlatform metadata: name: sonataflow-platform spec: build: config: baseImage: dev.local/my-workflow-builder:1.0.0
apiVersion: v1 data: controllers_cfg.yaml: | sonataFlowBaseBuilderImageTag: dev.local/my-workflow-builder:1.0.0 kind: ConfigMap metadata: name: logic-operator-rhel8-controllers-config namespace: openshift-serverless-logic