Merge "Mavenized image creation for readiness-check"
[oom.git] / kubernetes / common / cassandra / templates / statefulset.yaml
index 86cf467..72e886d 100644 (file)
@@ -49,11 +49,14 @@ spec:
         - containerPort: {{ $ports.port }}
         {{- end }}
         volumeMounts:
-          - name: cassandra-data
+          - name: {{ include "common.fullname" . }}-data
             mountPath: /var/lib/cassandra
           - name: localtime
             mountPath: /etc/localtime
             readOnly: true
+          - name: cassandra-entrypoint
+            mountPath: /docker-entrypoint.sh
+            subPath: docker-entrypoint.sh
           {{- range $key, $value := .Values.configOverrides }}
           - name: cassandra-config-{{ $key | replace "." "-" }}
             mountPath: /etc/cassandra/{{ $key }}
@@ -71,7 +74,7 @@ spec:
           timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
           successThreshold: {{ .Values.liveness.successThreshold }}
           failureThreshold: {{ .Values.liveness.failureThreshold }}
-        {{ end -}}
+        {{ end }}
         readinessProbe:
           exec:
             command:
@@ -109,7 +112,9 @@ spec:
           - name: CASSANDRA_START_RPC
             value: {{ default "true" .Values.config.start_rpc | quote }}
           - name: CASSANDRA_ENDPOINT_SNITCH
-            value: {{ default "SimpleSnitch" .Values.config.endpoint_snitch | quote }}
+            value: {{ default "GossipingPropertyFileSnitch" .Values.config.endpoint_snitch | quote }}
+          - name: CASSANDRA_AUTHENTICATOR
+            value: {{ default "PasswordAuthenticator" .Values.config.authenticator | quote }}
           - name: POD_IP
             valueFrom:
               fieldRef:
@@ -141,26 +146,31 @@ spec:
         configMap:
           name: {{ include "common.fullname" . }}-configOverrides
       {{- end }}
+      - name: cassandra-entrypoint
+        configMap:
+          name: {{ include "common.fullname" . }}-entrypoint
+          defaultMode: 0755
   {{- if not .Values.persistence.enabled }}
-      - name: cassandra-data
+      - name: {{ include "common.fullname" . }}-data
         emptyDir: {}
   {{- else }}
   volumeClaimTemplates:
     - metadata:
-        name: cassandra-data
+        name: {{ include "common.fullname" . }}-data
         labels:
-          app: {{ template "common.fullname" . }}
+          name: {{ include "common.fullname" . }}
+          chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
           release: "{{ .Release.Name }}"
           heritage: "{{ .Release.Service }}"
-      annotations:
-        volume.beta.kubernetes.io/storage-class: {{ .Values.persistence.storageClass }}
       spec:
         accessModes:
-          - {{ .Values.persistence.accessMode | quote }}
+        {{- if .Values.backup.enabled }}
+        - ReadWriteMany
+        {{- else }}
+        - ReadWriteOnce
+        {{- end }}
+        storageClassName: {{ include "common.storageClass" . }}
         resources:
           requests:
             storage: {{ .Values.persistence.size | quote }}
-        selector:
-          matchLabels:
-            release: "{{ .Release.Name }}"
   {{- end }}