Files
trainer/manifests/base/manager/manager.yaml
T
Tariq HasanandGitHub 1f57df4484 ci(boilerplate): enhance copyright boilerplate enforcement (#3665)
* ci(boilerplate): enforce copyright headers on YAML files

Signed-off-by: tariq-hasan <[email protected]>

* ci(boilerplate): enforce year-less header for new files

Signed-off-by: tariq-hasan <[email protected]>

---------

Signed-off-by: tariq-hasan <[email protected]>
2026-07-03 13:39:54 +00:00

111 lines
3.0 KiB
YAML

# Copyright The Kubeflow Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: kubeflow-trainer-controller-manager
labels:
app.kubernetes.io/name: trainer
app.kubernetes.io/component: manager
app.kubernetes.io/part-of: kubeflow
spec:
selector:
matchLabels:
app.kubernetes.io/name: trainer
app.kubernetes.io/component: manager
app.kubernetes.io/part-of: kubeflow
template:
metadata:
labels:
app.kubernetes.io/name: trainer
app.kubernetes.io/component: manager
app.kubernetes.io/part-of: kubeflow
spec:
containers:
- name: manager
image: ghcr.io/kubeflow/trainer/trainer-controller-manager
securityContext:
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
runAsNonRoot: true
capabilities:
drop:
- ALL
seccompProfile:
type: RuntimeDefault
ports:
- name: health
containerPort: 8081
protocol: TCP
- name: metrics
containerPort: 8443
protocol: TCP
- name: webhook
containerPort: 9443
protocol: TCP
- name: status-server
containerPort: 10443
protocol: TCP
volumeMounts:
- mountPath: /tmp/k8s-webhook-server/serving-certs
name: cert
readOnly: true
livenessProbe:
httpGet:
path: /healthz
port: health
initialDelaySeconds: 15
periodSeconds: 20
timeoutSeconds: 3
readinessProbe:
httpGet:
path: /readyz
port: health
initialDelaySeconds: 10
periodSeconds: 15
timeoutSeconds: 3
serviceAccountName: kubeflow-trainer-controller-manager
volumes:
- name: cert
secret:
defaultMode: 420
secretName: kubeflow-trainer-webhook-cert
---
apiVersion: v1
kind: Service
metadata:
name: kubeflow-trainer-controller-manager
spec:
ports:
- name: monitoring-port
port: 8443
targetPort: metrics
- name: webhook-server
port: 443
protocol: TCP
targetPort: webhook
- name: status-server
port: 10443
protocol: TCP
targetPort: status-server
selector:
app.kubernetes.io/component: manager