--- apiVersion: apps/v1 items: - apiVersion: apps/v1 kind: Deployment metadata: annotations: deployment.kubernetes.io/revision: "1" internal.config.kubernetes.io/previousKinds: Deployment internal.config.kubernetes.io/previousNames: kubeflow-trainer-controller-manager internal.config.kubernetes.io/previousNamespaces: opendatahub platform.opendatahub.io/instance.generation: "1" platform.opendatahub.io/instance.name: default-trainer platform.opendatahub.io/instance.uid: 150f41e0-2ef1-42e6-99f5-c2c037645b66 platform.opendatahub.io/type: Kubeflow Trainer platform.opendatahub.io/version: 2.1.0 creationTimestamp: "2026-07-23T13:35:51Z" generation: 1 labels: app.kubernetes.io/component: controller app.kubernetes.io/name: trainer app.kubernetes.io/part-of: kubeflow platform.opendatahub.io/part-of: trainer managedFields: - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:internal.config.kubernetes.io/previousKinds: {} f:internal.config.kubernetes.io/previousNames: {} f:internal.config.kubernetes.io/previousNamespaces: {} f:platform.opendatahub.io/instance.generation: {} f:platform.opendatahub.io/instance.name: {} f:platform.opendatahub.io/instance.uid: {} f:platform.opendatahub.io/type: {} f:platform.opendatahub.io/version: {} f:labels: f:app.kubernetes.io/component: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:platform.opendatahub.io/part-of: {} f:spec: f:replicas: {} f:selector: {} f:template: f:metadata: f:labels: f:app.kubernetes.io/component: {} f:app.kubernetes.io/name: {} f:app.kubernetes.io/part-of: {} f:platform.opendatahub.io/part-of: {} f:spec: f:containers: k:{"name":"manager"}: .: {} f:args: {} f:env: k:{"name":"ENABLE_RHAI_FEATURES"}: .: {} f:name: {} f:value: {} f:image: {} f:livenessProbe: f:httpGet: f:path: {} f:port: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:timeoutSeconds: {} f:name: {} f:ports: k:{"containerPort":8443,"protocol":"TCP"}: .: {} f:containerPort: {} f:name: {} f:readinessProbe: f:httpGet: f:path: {} f:port: {} f:initialDelaySeconds: {} f:periodSeconds: {} f:timeoutSeconds: {} f:securityContext: f:allowPrivilegeEscalation: {} f:capabilities: f:drop: {} f:runAsNonRoot: {} f:seccompProfile: f:type: {} f:volumeMounts: k:{"mountPath":"/controller_manager_config.yaml"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:subPath: {} k:{"mountPath":"/tmp/k8s-webhook-server/serving-certs"}: .: {} f:mountPath: {} f:name: {} f:readOnly: {} f:serviceAccountName: {} f:volumes: k:{"name":"cert"}: .: {} f:name: {} f:secret: f:defaultMode: {} f:secretName: {} k:{"name":"kubeflow-trainer-config"}: .: {} f:configMap: f:name: {} f:name: {} manager: trainer-module-controller operation: Apply time: "2026-07-23T13:35:51Z" - apiVersion: apps/v1 fieldsType: FieldsV1 fieldsV1: f:metadata: f:annotations: f:deployment.kubernetes.io/revision: {} f:status: f:availableReplicas: {} f:conditions: .: {} k:{"type":"Available"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} k:{"type":"Progressing"}: .: {} f:lastTransitionTime: {} f:lastUpdateTime: {} f:message: {} f:reason: {} f:status: {} f:type: {} f:observedGeneration: {} f:readyReplicas: {} f:replicas: {} f:updatedReplicas: {} manager: kube-controller-manager operation: Update subresource: status time: "2026-07-23T13:36:11Z" name: kubeflow-trainer-controller-manager namespace: opendatahub resourceVersion: "13916" uid: b2bc7296-934b-4c50-a49f-6aee9c79441c spec: progressDeadlineSeconds: 600 replicas: 1 revisionHistoryLimit: 10 selector: matchLabels: app.kubernetes.io/component: controller app.kubernetes.io/name: trainer app.kubernetes.io/part-of: kubeflow platform.opendatahub.io/part-of: trainer strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: trainer app.kubernetes.io/part-of: kubeflow platform.opendatahub.io/part-of: trainer spec: containers: - args: - --config=/controller_manager_config.yaml - --zap-log-level=2 env: - name: ENABLE_RHAI_FEATURES value: "true" image: quay.io/opendatahub/trainer:odh-3.5-ea1 imagePullPolicy: IfNotPresent livenessProbe: failureThreshold: 3 httpGet: path: /healthz port: 8081 scheme: HTTP initialDelaySeconds: 15 periodSeconds: 20 successThreshold: 1 timeoutSeconds: 3 name: manager ports: - containerPort: 8443 name: metrics protocol: TCP readinessProbe: failureThreshold: 3 httpGet: path: /readyz port: 8081 scheme: HTTP initialDelaySeconds: 10 periodSeconds: 15 successThreshold: 1 timeoutSeconds: 3 resources: {} securityContext: allowPrivilegeEscalation: false capabilities: drop: - ALL runAsNonRoot: true seccompProfile: type: RuntimeDefault terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts: - mountPath: /controller_manager_config.yaml name: kubeflow-trainer-config readOnly: true subPath: controller_manager_config.yaml - mountPath: /tmp/k8s-webhook-server/serving-certs name: cert readOnly: true dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} serviceAccount: kubeflow-trainer-controller-manager serviceAccountName: kubeflow-trainer-controller-manager terminationGracePeriodSeconds: 30 volumes: - configMap: defaultMode: 420 name: kubeflow-trainer-config name: kubeflow-trainer-config - name: cert secret: defaultMode: 420 secretName: kubeflow-trainer-webhook-cert status: availableReplicas: 1 conditions: - lastTransitionTime: "2026-07-23T13:36:11Z" lastUpdateTime: "2026-07-23T13:36:11Z" message: Deployment has minimum availability. reason: MinimumReplicasAvailable status: "True" type: Available - lastTransitionTime: "2026-07-23T13:35:51Z" lastUpdateTime: "2026-07-23T13:36:11Z" message: ReplicaSet "kubeflow-trainer-controller-manager-7b4fcbc79d" has successfully progressed. reason: NewReplicaSetAvailable status: "True" type: Progressing observedGeneration: 1 readyReplicas: 1 replicas: 1 updatedReplicas: 1 kind: DeploymentList metadata: resourceVersion: "14593"