78f2e5c29aa9861da0548a9f0d886094c0c3b369
[it/otf.git] / otf-helm / otf / charts / databases / charts / mongodb / templates / deployment.yaml
1 apiVersion: extensions/v1beta1\r
2 kind: Deployment\r
3 metadata:\r
4   name: {{ .Values.global.mongodb.appName }}\r
5   namespace: {{.Values.global.mongodb.namespace }}\r
6   labels:\r
7     app: {{ .Values.global.mongodb.appName }}\r
8     version: {{.Values.global.mongodb.version }}\r
9 spec:\r
10   revisionHistoryLimit: 1   # keep one replica set to allow rollback\r
11   minReadySeconds: 10\r
12   strategy:\r
13   # indicate which strategy we want for rolling update\r
14     type: RollingUpdate\r
15     rollingUpdate:\r
16       maxSurge: 1\r
17       maxUnavailable: 1\r
18   replicas: {{ .Values.global.mongodb.replicas }}\r
19   selector:\r
20     matchLabels:\r
21       app: {{ .Values.global.mongodb.appName }}\r
22       version: {{.Values.global.mongodb.version }}\r
23   template:\r
24     metadata:\r
25       labels:\r
26         app: {{ .Values.global.mongodb.appName }}\r
27         version: {{.Values.global.mongodb.version }}\r
28     spec:\r
29       serviceAccount: default\r
30       containers:\r
31       - name: {{ .Values.global.mongodb.appName }}\r
32         image: {{ .Values.global.mongodb.image.registry }}/{{ .Values.global.mongodb.image.repository }}\r
33         imagePullPolicy: Always               \r
34         env:\r
35         - name: MONGODB_PASSWORD\r
36           valueFrom:\r
37             secretKeyRef:\r
38               name : {{ .Values.global.mongodb.appName }}\r
39               key: mongo_password\r
40         - name: MONGODB_ROOT_PASSWORD\r
41           valueFrom:\r
42             secretKeyRef:\r
43               name : {{ .Values.global.mongodb.appName }}\r
44               key: mongo_root_password\r
45         - name: MONGODB_USERNAME\r
46           value: {{ .Values.global.mongodb.mongodbUsername | quote }}\r
47         - name: MONGODB_DATABASE\r
48           value: {{ .Values.global.mongodb.mongodbDatabase | quote }}\r
49         ports:\r
50         - name: mongodb\r
51           containerPort: 27017\r
52           hostPort: 27017\r
53         resources:\r
54           limits: \r
55             memory: {{ .Values.global.mongodb.resources.limits.memory }}\r
56             cpu: {{ .Values.global.mongodb.resources.limits.cpu }}\r
57           requests:\r
58             memory: {{ .Values.global.mongodb.resources.requests.memory }}\r
59             cpu: {{ .Values.global.mongodb.resources.requests.cpu }}\r
60         lifecycle:\r
61           postStart:\r
62             exec:\r
63               command: ["/bin/bash", "-c", "cd data/scripts;./init_db.sh"]\r
64         volumeMounts:\r
65            - name: custom-init-scripts\r
66              mountPath: /data/scripts\r
67       volumes:\r
68         - name: custom-init-scripts\r
69           configMap:\r
70             name: {{  .Values.global.mongodb.appName }}-init-scripts\r
71             defaultMode: 0755\r
72       restartPolicy: Always\r