apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" opendatahub.io/managed: "false" creationTimestamp: "2026-11-02T01:23:58Z" generation: 2 labels: app.kubernetes.io/managed-by: ai-gateway-controller name: payload-processing namespace: openshift-ingress resourceVersion: "21380" uid: efe735ef-63dc-494e-8231-e1bf42b22998 spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: app: payload-processing strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: annotations: ai-gateway-controller.opendatahub.io/extproc-config-sha256: 99ace36d4344145336ff0f3775d60adc6a6a229dce78cfb8312208868aea25e9 labels: app: payload-processing app.kubernetes.io/managed-by: ai-gateway-controller maas.opendatahub.io/tenant-instance: payload-processing spec: containers: - args: - -c - /etc/praxis/extproc.yaml image: quay.io/opendatahub/odh-praxis-extproc:odh-stable imagePullPolicy: IfNotPresent lifecycle: preStop: sleep: seconds: 5 livenessProbe: failureThreshold: 3 initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 tcpSocket: port: health timeoutSeconds: 1 name: payload-processing ports: - containerPort: 9004 name: grpc protocol: TCP - containerPort: 50052 name: health protocol: TCP - containerPort: 9090 name: metrics protocol: TCP readinessProbe: failureThreshold: 3 grpc: port: 50052 service: envoy.service.ext_proc.v3.ExternalProcessor initialDelaySeconds: 5 periodSeconds: 10 successThreshold: 1 timeoutSeconds: 1 resources: limits: cpu: 500m memory: 256Mi requests: cpu: 50m memory: 64Mi securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL readOnlyRootFilesystem: true runAsNonRoot: true seccompProfile: type: RuntimeDefault terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /etc/praxis name: plugins-config-volume readOnly: true dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: runAsNonRoot: true serviceAccount: payload-processing serviceAccountName: payload-processing terminationGracePeriodSeconds: 30 volumes: - configMap: defaultMode: 420 name: payload-processing-plugins name: plugins-config-volume status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-11-02T01:24:13Z" lastUpdateTime: "2026-11-02T01:24:13Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-11-02T01:23:58Z" lastUpdateTime: "2026-11-02T01:24:13Z" message: ReplicaSet "payload-processing-55fbbbf9dc" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 2 readyReplicas: 1 replicas: 1 terminatingReplicas: 0 updatedReplicas: 1