5.2. 使用 SonataFlow CR 配置持久性
SonataFlow 自定义资源(CR)启用特定于工作流的持久性配置。您可以独立使用此配置,即使当前命名空间中已经设置了 SonataFlowPlatform 持久性。
流程
-
使用
SonataFlowCR 规格中的persistence字段来配置持久性,如下例所示:
apiVersion: sonataflow.org/v1alpha08
kind: SonataFlow
metadata:
name: example-workflow
annotations:
sonataflow.org/description: Example Workflow
sonataflow.org/version: 0.0.1
spec:
persistence:
postgresql:
serviceRef:
name: postgres-example
namespace: postgres-example-namespace
databaseName: example-database
databaseSchema: example-schema
port: 1234
secretRef:
name: postgres-secrets-example
userKey: POSTGRESQL_USER
passwordKey: POSTGRESQL_PASSWORD
flow:
此配置告知 OpenShift Serverless Logic Operator,工作流在部署时必须连接到指定的 PostgreSQL 数据库服务器。OpenShift Serverless Logic Operator 将相关的 JDBC 连接参数作为环境变量添加到工作流容器中。
注意
PostgreSQL 目前是唯一受支持的用于持久性的数据库。
对于使用 preview 配置集进行 SonataFlow CR 部署,OpenShift Serverless Logic 构建系统包括所需的 Quarkus 扩展来自动启用持久性。