f4151b50a26e16d37f64ed41f0bff9fbb3a6e0b3
[oom.git] / kubernetes / aaf / charts / aaf-sms / charts / aaf-sms-vault / templates / statefulset.yaml
1 # Copyright 2018 Intel Corporation, Inc
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
15 apiVersion: apps/v1beta1
16 kind: StatefulSet
17 metadata:
18   name: {{ include "common.fullname" . }}
19   namespace: {{ include "common.namespace" . }}
20   labels:
21     app: {{ include "common.name" . }}
22     chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
23     release: {{ .Release.Name }}
24     heritage: {{ .Release.Service }}
25 spec:
26   replicas: {{ .Values.replicaCount }}
27   serviceName:
28   template:
29     metadata:
30       labels:
31         app: {{ include "common.name" . }}
32         release: {{ .Release.Name }}
33     spec:
34       containers:
35       - image: "{{ include "common.repository" . }}/{{ .Values.image.vault }}"
36         name: {{ include "common.name" . }}
37         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
38         command: ["vault","server","-config","/vault/config/config.json"]
39         ports:
40         - containerPort: {{ .Values.service.internalPort }}
41         volumeMounts:
42         - mountPath: /vault/config/config.json
43           name: {{ include "common.fullname" . }}-vault
44           subPath: config.json
45         - mountPath: /etc/localtime
46           name: localtime
47           readOnly: true
48         resources:
49 {{ include "common.resources" . | indent 10 }}
50       - image: "{{ include "common.repository" . }}/{{ .Values.image.consul }}"
51         name: {{ include "common.name" . }}-backend
52         imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
53         command: ["consul","agent","-server","-client","0.0.0.0","-bootstrap-expect=1","-config-file","/consul/config/config.json"]
54         ports:
55         - name: http
56           containerPort: 8500
57         volumeMounts:
58 {{- if .Values.persistence.enabled }}
59         - mountPath: /consul/data
60           name: {{ include "common.fullname" . }}-data
61 {{- end }}
62         - mountPath: /consul/config/config.json
63           name: {{ include "common.fullname" . }}-consulconfiguration
64           subPath: config.json
65         - mountPath: /etc/localtime
66           name: localtime
67           readOnly: true
68         resources:
69 {{ include "common.resources" . | indent 10 }}
70       volumes:
71         - name: {{ include "common.fullname" . }}-consulconfiguration
72           configMap:
73             name: {{ include "common.fullname" . }}-consul
74         - name: {{ include "common.fullname" . }}-vault
75           configMap:
76             name: {{ include "common.fullname" . }}-vault
77         - name: localtime
78           hostPath:
79             path: /etc/localtime
80       imagePullSecrets:
81       - name: "{{ include "common.namespace" . }}-docker-registry-key"
82 {{- if .Values.persistence.enabled }}
83   volumeClaimTemplates:
84   - metadata:
85       name: {{ include "common.fullname" . }}-data
86       labels:
87         name: {{ include "common.fullname" . }}
88         chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
89         release: "{{ .Release.Name }}"
90         heritage: "{{ .Release.Service }}"
91     spec:
92       accessModes:
93       - {{ .Values.persistence.accessMode | quote }}
94       storageClassName: {{ include "common.storageClass" . }}
95       resources:
96         requests:
97           storage: {{ .Values.persistence.size | quote }}
98 {{- end }}