* Separate service accounts for each component * Permission changes per component * Fixed fluentbit permissions * added hooks to pre-upgrade service account and role * Adjusted hook weights for pre-upgrade hook * Replaced * with explicit permissions
95 lines
2.9 KiB
YAML
95 lines
2.9 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: controller
|
|
labels:
|
|
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
|
svc: controller
|
|
application: fission-api
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
svc: controller
|
|
application: fission-api
|
|
template:
|
|
metadata:
|
|
labels:
|
|
svc: controller
|
|
application: fission-api
|
|
annotations:
|
|
prometheus.io/scrape: "true"
|
|
prometheus.io/path: "/metrics"
|
|
prometheus.io/port: "8080"
|
|
spec:
|
|
{{- if .Values.controller.securityContext.enabled }}
|
|
securityContext: {{- omit .Values.controller.securityContext "enabled" | toYaml | nindent 8 }}
|
|
{{- end }}
|
|
containers:
|
|
- name: controller
|
|
image: {{ include "fission-bundleImage" . | quote }}
|
|
imagePullPolicy: {{ .Values.pullPolicy }}
|
|
command: ["/fission-bundle"]
|
|
args: ["--controllerPort", "8888"]
|
|
env:
|
|
- name: FISSION_FUNCTION_NAMESPACE
|
|
value: "{{ .Values.functionNamespace }}"
|
|
- name: DEBUG_ENV
|
|
value: {{ .Values.debugEnv | quote }}
|
|
- name: PPROF_ENABLED
|
|
value: {{ .Values.pprof.enabled | quote }}
|
|
- name: POD_NAMESPACE
|
|
valueFrom:
|
|
fieldRef:
|
|
fieldPath: metadata.namespace
|
|
{{- include "opentelemtry.envs" . | indent 8 }}
|
|
resources:
|
|
{{- toYaml .Values.controller.resources | nindent 10 }}
|
|
{{- if .Values.terminationMessagePath }}
|
|
terminationMessagePath: {{ .Values.terminationMessagePath }}
|
|
{{- end }}
|
|
{{- if .Values.terminationMessagePolicy }}
|
|
terminationMessagePolicy: {{ .Values.terminationMessagePolicy }}
|
|
{{- end }}
|
|
readinessProbe:
|
|
httpGet:
|
|
path: "/healthz"
|
|
port: 8888
|
|
initialDelaySeconds: 1
|
|
periodSeconds: 1
|
|
failureThreshold: 30
|
|
livenessProbe:
|
|
httpGet:
|
|
path: "/healthz"
|
|
port: 8888
|
|
initialDelaySeconds: 35
|
|
periodSeconds: 5
|
|
volumeMounts:
|
|
- name: config-volume
|
|
mountPath: /etc/config/config.yaml
|
|
subPath: config.yaml
|
|
ports:
|
|
- containerPort: 8080
|
|
name: metrics
|
|
- containerPort: 8888
|
|
name: http
|
|
{{- if .Values.pprof.enabled }}
|
|
- containerPort: 6060
|
|
name: pprof
|
|
{{- end }}
|
|
|
|
serviceAccountName: fission-controller
|
|
volumes:
|
|
- name: config-volume
|
|
configMap:
|
|
name: feature-config
|
|
{{- if .Values.priorityClassName }}
|
|
priorityClassName: {{ .Values.priorityClassName }}
|
|
{{- end }}
|
|
{{- with .Values.imagePullSecrets }}
|
|
imagePullSecrets:
|
|
{{- toYaml . | nindent 8 }}
|
|
{{- end }}
|
|
{{- if .Values.extraCoreComponentPodConfig }}
|
|
{{ toYaml .Values.extraCoreComponentPodConfig | indent 6 -}}
|
|
{{- end }} |