blob: eb785e2d9b332033c64593de57e86ece62ae01e6 [file] [log] [blame]
kj52dfb132018-03-27 15:50:39 +03001# Copyright © 2017 Amdocs, Bell Canada
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15apiVersion: extensions/v1beta1
16kind: Deployment
17metadata:
18 name: {{ include "common.fullname" . }}
19 namespace: {{ include "common.namespace" . }}
20 labels:
21 app: {{ include "common.name" . }}
22 chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010023 release: {{ include "common.release" . }}
kj52dfb132018-03-27 15:50:39 +030024 heritage: {{ .Release.Service }}
25spec:
Instrumentalcc3a0bd2019-05-01 14:18:49 -050026 replicas: {{ .Values.global.aaf.cass.replicas }}
kj52dfb132018-03-27 15:50:39 +030027 template:
28 metadata:
29 labels:
30 app: {{ include "common.name" . }}
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +010031 release: {{ include "common.release" . }}
kj52dfb132018-03-27 15:50:39 +030032 spec:
ChrisCec86a532020-03-19 15:53:31 -050033 initContainers:
34 - name: fix-permission
35 command:
36 - /bin/sh
37 args:
38 - -c
39 - |
40 chmod -R 775 /opt/app/aaf/status
41 chown -R 1000:1000 /opt/app/aaf/status
42 chmod -R 775 /var/lib/cassandra
43 chown -R 1000:1000 /var/lib/cassandra
44 image: "{{ .Values.global.busyboxRepository }}/{{ .Values.global.busyboxImage }}"
45 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
46 volumeMounts:
47 - mountPath: /opt/app/aaf/status
48 name: aaf-status-vol
49 - mountPath: /var/lib/cassandra
50 name: aaf-cass-vol
kj52dfb132018-03-27 15:50:39 +030051 containers:
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000052 - name: {{ include "common.name" . }}
Instrumental0c7bc942019-08-06 16:36:13 -050053 image: {{ .Values.global.repository }}/{{.Values.global.aaf.cass.image}}
kj52dfb132018-03-27 15:50:39 +030054 imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
Instrumentalcc3a0bd2019-05-01 14:18:49 -050055 # installing with cmd "onap" will not only initialize the DB, but add ONAP bootstrap data as well
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000056 command: ["/bin/bash","/opt/app/aaf/cass_init/cmd.sh","onap"]
Instrumentalcc3a0bd2019-05-01 14:18:49 -050057 lifecycle:
58 preStop:
59 exec:
60 command: ["/bin/sh","-c","rm /opt/app/aaf/status/aaf-cass"]
Mahendra Raghuwanshiafb1e2a2018-05-03 12:15:03 +000061 ports:
Instrumentalcc3a0bd2019-05-01 14:18:49 -050062 - name: storage
63 containerPort: {{.Values.global.aaf.cass.storage_port}}
64 - name: ssl-storage
65 containerPort: {{.Values.global.aaf.cass.ssl_storage_port}}
66 - name: native-trans
67 containerPort: {{.Values.global.aaf.cass.native_trans_port}}
68 - name: rpc
69 containerPort: {{.Values.global.aaf.cass.rpc_port}}
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000070 env:
71 - name: CASSANDRA_CLUSTER_NAME
Instrumentalcc3a0bd2019-05-01 14:18:49 -050072 value: {{.Values.global.aaf.cass.cluster_name}}
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000073 - name: CASSANDRA_DC
Instrumentalcc3a0bd2019-05-01 14:18:49 -050074 value: {{.Values.global.aaf.cass.dc}}
ChrisCec86a532020-03-19 15:53:31 -050075 - name: CQLSH
76 value: "/opt/cassandra/bin/cqlsh"
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000077 - name: HEAP_NEWSIZE
Instrumentalcc3a0bd2019-05-01 14:18:49 -050078 value: {{.Values.global.aaf.cass.heap_new_size}}
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000079 - name: MAX_HEAP_SIZE
Instrumentalcc3a0bd2019-05-01 14:18:49 -050080 value: {{.Values.global.aaf.cass.max_heap_size}}
81 - name: MY_POD_NAME
82 valueFrom:
83 fieldRef:
84 fieldPath: metadata.name
85 - name: MY_POD_NAMESPACE
86 valueFrom:
87 fieldRef:
88 fieldPath: metadata.namespace
89 - name: MY_POD_IP
90 valueFrom:
91 fieldRef:
92 fieldPath: status.podIP
kj52dfb132018-03-27 15:50:39 +030093 volumeMounts:
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +000094 - mountPath: /var/lib/cassandra
Instrumentalcc3a0bd2019-05-01 14:18:49 -050095 name: aaf-cass-vol
96 - mountPath: /opt/app/aaf/status
97 name: aaf-status-vol
Mahendra Raghuwanshiafb1e2a2018-05-03 12:15:03 +000098 - mountPath: /etc/localtime
99 name: localtime
100 readOnly: true
kj52dfb132018-03-27 15:50:39 +0300101 {{- if eq .Values.liveness.enabled true }}
102 livenessProbe:
103 tcpSocket:
Instrumentalcc3a0bd2019-05-01 14:18:49 -0500104 port: {{.Values.global.aaf.cass.native_trans_port}}
kj52dfb132018-03-27 15:50:39 +0300105 initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
106 periodSeconds: {{ .Values.liveness.periodSeconds }}
107 {{ end -}}
108 readinessProbe:
Mike Elliotta91e2bf2018-10-15 11:43:53 -0400109 tcpSocket:
Instrumentalcc3a0bd2019-05-01 14:18:49 -0500110 port: {{.Values.global.aaf.cass.native_trans_port}}
kj52dfb132018-03-27 15:50:39 +0300111 initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
112 periodSeconds: {{ .Values.readiness.periodSeconds }}
Mandeep Khinda5e3f36a2018-09-24 15:25:42 +0000113 resources:
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +0000114{{ include "common.resources" . | indent 10 }}
kj52dfb132018-03-27 15:50:39 +0300115 {{- if .Values.nodeSelector }}
116 nodeSelector:
117{{ toYaml .Values.nodeSelector | indent 10 }}
118 {{- end -}}
119 {{- if .Values.affinity }}
120 affinity:
121{{ toYaml .Values.affinity | indent 10 }}
122 {{- end }}
kj52dfb132018-03-27 15:50:39 +0300123 volumes:
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +0000124 - name: localtime
125 hostPath:
126 path: /etc/localtime
Instrumentalcc3a0bd2019-05-01 14:18:49 -0500127 - name: aaf-status-vol
128 persistentVolumeClaim:
Krzysztof Opasiak137d7cc2020-01-24 23:49:11 +0100129 claimName: {{ include "common.release" . }}-aaf-status
Instrumentalcc3a0bd2019-05-01 14:18:49 -0500130 - name: aaf-cass-vol
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +0000131 {{- if .Values.persistence.enabled }}
132 persistentVolumeClaim:
Sylvain Desbureaux7a235752019-11-28 15:01:45 +0100133 claimName: {{ include "common.fullname" . }}-data
Mandeep Khinda6dcc80d2018-10-09 14:47:35 +0000134 {{- else }}
135 emptyDir: {}
136 {{- end }}
kj52dfb132018-03-27 15:50:39 +0300137 imagePullSecrets:
Instrumental378109d2018-10-16 20:40:41 -0500138 - name: "{{ include "common.namespace" . }}-docker-registry-key"