Using an Existing Flow Cluster
Overview
Customers with existing Flow clusters may want to reuse their existing deployment for flow based processes in the Organizer. This documentation explains how to:
- Disable Flow Pods via Helm.
- Add the ToPDFworker to an existing cluster.
- Configure the ToPDFworker using Helm.
By reusing existing Flow installations, customers avoid the need for a second cluster for PDF export. Additionally, existing preprocessing workflows can be reused via Intents in Output Organizer (OO).
Disable Flow Pods via Helm
To disable the default Flow containers in the OO deployment, modify the Helm configuration as follows:
worker-topdf.enabled: false
controller.enabled: false
Add the ToPDF Worker to an Existing Cluster
If the ToPDF worker is not already present in your existing cluster, add it as a Helm dependency:
dependencies:
- name: jf-worker-topdf
  alias: worker-topdf
  condition: worker-topdf.enabled
  version: 1.31.5
  repository: https://artifacts.jadice.com/repository/helm-charts/
Configure the ToPDF Worker via Helm
The following Helm configuration sets up the ToPDF worker in your deployment, including annotation profiles and Eureka endpoints:
worker-topdf:
  worker:
    application:
      annotation:
        profiles: ["file:./annotation/jwt-annotation-profile.xml"]
        defaultProfile: "JWT-Default"
        redactionAnnotationTypes: "[\"Mask\", \"TextMask\" ]"
      uniqueOutputFilename: false
  additionalConfigMaps:
    - mountPath: ./annotation/jwt-annotation-profile.xml
      subPath: jwt-annotation-profile.xml
      name: anno-profile
      readOnly: true
  secrets:
    eureka:
      username: changeMe
      password: changeMe
  eureka:
    endpoint: http://fusion-output-organizer
The eureka.endpoint can be directed to the Output Organizer because it implements the Eureka API.
Add the Annotation Profile to the Existing Cluster
To apply the required annotation profile, create the following ConfigMap:
apiVersion: v1
kind: ConfigMap
metadata:
  name: anno-profile
  labels:
    {{- include "fusion.labels" . | nindent 4 }}
data:
  jwt-annotation-profile.xml: |
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <annotation-profile name="JWT-Default">
    [...]
    </annotation-profile>
Update the Flow Worker Definition
Extend the Flow worker definition to include the fusionCollectionExport worker for PDF export:
workerDefinition:
  - workerName: "fusionCollectionExport"
    description: "Creates a single PDF export for a fusion collection"
    processorClass: "com.jadice.flow.controller.server.processor.RemoteItemProcessor"
    workerURL: "http://jf-worker-topdf"
    infoTags:
      - "ITEM_BASED"
      - "IMAGE_PROCESSING"
      - "REMOTE"
    workerParameters:
      - name: "pdfaConformanceLevel"
        type: "com.jadice.flow.worker.topdf.settings.Conformance"
        value: "PDF/A 2b"
        description: "PDF-A conformance level"
      - name: "isCollection"
        type: "java.lang.String"
        value: "\"true\""
        description: "PDF export settings"
      - name: "processingStepSettings"
        type: "com.jadice.flow.worker.topdf.settings.ProcessingStepSettingsDTO"
        value: "{\"repackingAllowed\":false,\"genericProcessingAllowed\":true,\"rasterizationAllowed\":true}"
        description: "PDF export settings"
      - name: "outputMode"
        type: "com.jadice.flow.worker.topdf.settings.OutputMode"
        value: "\"JOINED\""
        description: "PDF export output mode"
Update the Flow Job Template
To properly configure the Flow job for PDF export, modify the Flow job template as follows:
jobTemplate:
  - jobName: "fusionCollectionExport"
    description: "This worker exports documents and publishes them to the configured export targets."
    enabled: true
    stepTemplates:
      - stepName: "fusionCollectionExport"
        workerDefinitionName: "fusionCollectionExport"
        inputMimeTypes: []
        parameters:
          - name: "pdfaConformanceLevel"
            type: "com.jadice.flow.worker.topdf.settings.Conformance"
            value: "\"PDFA2b\""
    jobFlow:
      - from: null
        "on": "*"
        to: "fusionCollectionExport"