apiVersion: apps/v1 kind: Deployment metadata: name: executor labels: chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" svc: executor spec: replicas: 1 selector: matchLabels: svc: executor template: metadata: labels: svc: executor annotations: prometheus.io/scrape: "true" prometheus.io/path: "/metrics" prometheus.io/port: "8080" spec: {{- if .Values.executor.securityContext.enabled }} securityContext: {{- omit .Values.executor.securityContext "enabled" | toYaml | nindent 8 }} {{- end }} containers: - name: executor image: {{ include "fission-bundleImage" . | quote }} imagePullPolicy: {{ .Values.pullPolicy }} command: ["/fission-bundle"] args: ["--executorPort", "8888"] env: - name: FETCHER_IMAGE {{- if eq .Values.fetcher.imageTag "" }} value: "{{ .Values.fetcher.image }}" {{- else }} value: "{{ .Values.fetcher.image }}:{{ .Values.fetcher.imageTag }}" {{- end }} - name: FETCHER_IMAGE_PULL_POLICY value: "{{ .Values.pullPolicy }}" - name: FISSION_BUILDER_NAMESPACE value: "{{ .Values.builderNamespace }}" - name: FISSION_FUNCTION_NAMESPACE value: "{{ .Values.functionNamespace }}" - name: FISSION_DEFAULT_NAMESPACE value: "{{ .Values.defaultNamespace }}" - name: RUNTIME_IMAGE_PULL_POLICY value: "{{ .Values.pullPolicy }}" - name: ADOPT_EXISTING_RESOURCES value: {{ .Values.executor.adoptExistingResources | default false | quote }} - name: POD_READY_TIMEOUT value: {{ .Values.executor.podReadyTimeout | default false | quote }} - name: ENABLE_ISTIO value: "{{ .Values.enableIstio }}" - name: FETCHER_MINCPU value: {{ .Values.fetcher.resource.cpu.requests | quote }} - name: FETCHER_MINMEM value: {{ .Values.fetcher.resource.mem.requests | quote }} - name: FETCHER_MAXCPU value: {{ .Values.fetcher.resource.cpu.limits | quote }} - name: FETCHER_MAXMEM value: {{ .Values.fetcher.resource.mem.limits | quote }} - name: DEBUG_ENV value: {{ .Values.debugEnv | quote }} - name: PPROF_ENABLED value: {{ .Values.pprof.enabled | quote }} - name: OBJECT_REAPER_INTERVAL value: {{ .Values.executor.objectReaperInterval | quote }} {{- if .Values.executor.poolmgr.objectReaperInterval }} - name: POOLMGR_OBJECT_REAPER_INTERVAL value: {{ .Values.executor.poolmgr.objectReaperInterval | quote }} {{- end}} {{- if .Values.executor.newdeploy.objectReaperInterval }} - name: NEWDEPLOY_OBJECT_REAPER_INTERVAL value: {{ .Values.executor.newdeploy.objectReaperInterval | quote }} {{- end}} {{- if .Values.executor.container.objectReaperInterval }} - name: CONTAINER_OBJECT_REAPER_INTERVAL value: {{ .Values.executor.container.objectReaperInterval | quote }} {{- end}} {{- if .Values.executor.serviceAccountCheck.enabled }} - name: SERVICEACCOUNT_CHECK_ENABLED value: {{ .Values.executor.serviceAccountCheck.enabled | quote }} - name: SERVICEACCOUNT_CHECK_INTERVAL value: {{ .Values.executor.serviceAccountCheck.interval | quote }} {{- end}} {{- include "fission-resource-namespace.envs" . | indent 8 }} - name: HELM_RELEASE_NAME value: {{ .Release.Name | quote }} {{- include "opentelemtry.envs" . | indent 8 }} resources: {{- toYaml .Values.executor.resources | nindent 10 }} readinessProbe: httpGet: path: "/healthz" port: 8888 initialDelaySeconds: 1 periodSeconds: 1 failureThreshold: 30 livenessProbe: httpGet: path: "/healthz" port: 8888 initialDelaySeconds: 35 periodSeconds: 5 {{- if .Values.runtimePodSpec.enabled }} volumeMounts: - name: runtime-podspec-patch-volume mountPath: /etc/fission/runtime-podspec-patch.yaml subPath: runtime-podspec-patch.yaml readOnly: true {{- end }} ports: - containerPort: 8080 name: metrics - containerPort: 8888 name: http {{- if .Values.pprof.enabled }} - containerPort: 6060 name: pprof {{- end }} {{- if .Values.executor.terminationMessagePath }} terminationMessagePath: {{ .Values.executor.terminationMessagePath }} {{- else if .Values.terminationMessagePath }} terminationMessagePath: {{ .Values.terminationMessagePath }} {{- end }} {{- if .Values.executor.terminationMessagePolicy }} terminationMessagePolicy: {{ .Values.executor.terminationMessagePolicy }} {{- else if .Values.terminationMessagePolicy }} terminationMessagePolicy: {{ .Values.terminationMessagePolicy }} {{- end }} serviceAccountName: fission-executor {{- if .Values.runtimePodSpec.enabled }} volumes: - name: runtime-podspec-patch-volume configMap: name: runtime-podspec-patch {{- end }} {{- if .Values.executor.priorityClassName }} priorityClassName: {{ .Values.executor.priorityClassName }} {{- else if .Values.priorityClassName }} priorityClassName: {{ .Values.priorityClassName }} {{- end }} {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 8 }} {{- end }} {{- if .Values.extraCoreComponentPodConfig }} {{ toYaml .Values.extraCoreComponentPodConfig | indent 6 -}} {{- end }}