2 # SPDX-License-Identifier: EPL-1.0
3 ##############################################################################
4 # Copyright (c) 2021 The Linux Foundation and others.
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Eclipse Public License v1.0
8 # which accompanies this distribution, and is available at
9 # http://www.eclipse.org/legal/epl-v10.html
10 ##############################################################################
16 name: {{ include "opendaylight.fullname" . }}
18 {{- if not .Values.autoscaling.enabled }}
19 replicas: {{ .Values.replicaCount }}
21 podManagementPolicy: Parallel
22 serviceName: {{ include "opendaylight.fullname" . }}
25 {{- include "opendaylight.selectorLabels" . | nindent 6 }}
28 {{- with .Values.podAnnotations }}
30 {{- toYaml . | nindent 8 }}
33 {{- include "opendaylight.selectorLabels" . | nindent 8 }}
35 {{- with .Values.imagePullSecrets }}
37 {{- toYaml . | nindent 8 }}
39 serviceAccountName: {{ include "opendaylight.serviceAccountName" . }}
41 {{- toYaml .Values.podSecurityContext | nindent 8 }}
45 command: ['chown','8181','/data']
47 - name: {{ .Values.persistence.volName }}
48 mountPath: {{ .Values.persistence.mountPath }}
49 {{- if .Values.config.isClusterDeployment }}
50 - name: inject-cluster-related-conf
53 args: ["-c", "cp /config-input/akka.conf /config/akka.conf"]
55 - mountPath: /config-input/akka.conf
62 - name: {{ .Chart.Name }}
64 {{- toYaml .Values.securityContext | nindent 12 }}
65 image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
66 imagePullPolicy: {{ .Values.image.pullPolicy }}
67 command: ['bash','-c','bash -x /scripts/startodl.sh']
70 value: "{{ .Values.config.features }}"
72 value: "{{ .Values.config.javaHome}}"
74 value: "-Xms{{.Values.config.javaOptions.minMemory}} -Xmx{{.Values.config.javaOptions.maxMemory}}"
75 - name: EXTRA_JAVA_OPTS
76 value: "-XX:+UseG1GC -XX:MaxGCPauseMillis={{.Values.config.javaOptions.maxGCPauseMillis}} -XX:ParallelGCThreads={{.Values.config.javaOptions.parallelGCThreads}} -XX:+ParallelRefProcEnabled -XX:+UseStringDeduplication {{.Values.config.javaOptions.gcLogOptions}}"
78 value: "{{ .Values.replicaCount }}"
79 - name: IS_CLUSTER_ENABLED
80 value: "{{ .Values.config.isClusterDeployment }}"
83 containerPort: {{ .Values.service.port }}
85 {{- if .Values.config.isClusterDeployment }}
87 containerPort: {{ .Values.service.clusterPort }}
92 port: {{ .Values.service.port }}
93 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
94 periodSeconds: {{ .Values.readiness.periodSeconds }}
96 {{- toYaml .Values.resources | nindent 12 }}
98 - name: {{ .Values.persistence.volName }}
99 mountPath: {{ .Values.persistence.mountPath }}
102 {{- if .Values.config.isClusterDeployment }}
103 - mountPath: {{ .Values.cluster.salConfigDir }}/{{ .Values.cluster.salConfigVersion}}/sal-clustering-config-{{ .Values.cluster.salConfigVersion}}-akkaconf.xml
107 {{- with .Values.nodeSelector }}
109 {{- toYaml . | nindent 8 }}
111 {{- with .Values.affinity }}
113 {{- toYaml . | nindent 8 }}
115 {{- with .Values.tolerations }}
117 {{- toYaml . | nindent 8 }}
122 name: {{ include "opendaylight.fullname" . }}-scripts
123 {{- if .Values.config.isClusterDeployment }}
126 name: {{ include "opendaylight.fullname" . }}-conf
132 {{ if not .Values.persistence.enabled }}
133 - name: {{ .Values.persistence.volName }}
136 volumeClaimTemplates:
138 name: {{ .Values.persistence.volName }}
141 - {{ .Values.persistence.accessMode }}
142 storageClassName: {{ .Values.persistence.storageClass }}
145 storage: {{ .Values.persistence.size }}