config-init time optimization
[oom.git] / kubernetes / portal / templates / portal-apps-deployment.yaml
1 #{{ if not .Values.disablePortalPortalapps }}
2 apiVersion: extensions/v1beta1
3 kind: Deployment
4 metadata:
5   name: portalapps
6   namespace: "{{ .Values.nsPrefix }}-portal"
7 spec:
8   selector:
9     matchLabels:
10       app: portalapps
11   template:
12     metadata:
13        labels:
14          app: portalapps
15        name: portalapps
16        annotations:
17          pod.beta.kubernetes.io/init-containers: '[
18            {
19                "args": [
20                    "--container-name",
21                    "portaldb"
22                ],
23                "command": [
24                    "/root/ready.py"
25                ],
26                "env": [
27                    {
28                        "name": "NAMESPACE",
29                        "valueFrom": {
30                            "fieldRef": {
31                                "apiVersion": "v1",
32                                "fieldPath": "metadata.namespace"
33                            }
34                        }
35                    }
36                ],
37                "image": "{{ .Values.image.readiness }}",
38                "imagePullPolicy": "{{ .Values.pullPolicy }}",
39                "name": "portalapps-readiness"
40            },
41            {
42                "command": ["/bin/bash", "-c", "if [ ! -e /portal_root/boot.txt ]; then mysql -u root -pAa123456 -h portaldb < /portal-mysql/oom_updates.sql; fi"],
43                "volumeMounts": [
44                  {
45                    "mountPath": "/portal-mysql/oom_updates.sql",
46                    "name": "portal-mariadb-onboarding-sql"
47                  },
48                  {
49                    "mountPath": "/portal_root/",
50                    "name": "portal-root"
51                  }
52                ],
53                "image": "{{ .Values.image.mariadbClient }}",
54                "imagePullPolicy": "{{ .Values.pullPolicy }}",
55                "name": "provision-portaldb-users"
56            }
57            ]'
58     spec:
59       containers:
60       - image: {{ .Values.image.portalapps }}
61         imagePullPolicy: {{ .Values.pullPolicy }}
62         lifecycle:
63           postStart:
64             exec:
65               command: ["/bin/sh", "-c", "echo yes > /portal_root/boot.txt"]
66         name: portalapps
67         volumeMounts:
68         - mountPath: /etc/localtime
69           name: localtime
70           readOnly: true
71         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/fusion/conf/fusion.properties"
72           name: portal-fusion-properties
73         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/openid-connect.properties"
74           name: portal-openid-connect-properties
75         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/conf/system.properties"
76           name: portal-system-properties
77         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/portal.properties"
78           name: portal-portal-properties
79         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTAL/WEB-INF/classes/logback.xml"
80           name: portal-logback
81         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/conf/system.properties"
82           name: sdkapp-system-properties
83         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/classes/portal.properties"
84           name: sdkapp-portal-properties
85         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/fusion/conf/fusion.properties"
86           name: sdkapp-fusion-properties
87         - mountPath: "{{ .Values.onapPortal.webappsDir }}/ONAPPORTALSDK/WEB-INF/classes/logback.xml"
88           name: sdkapp-logback
89         - mountPath: /portal_root/
90           name: portal-root
91         - mountPath: "{{ .Values.onapPortal.webappsDir }}/logs"
92           name: portal-logs
93         - mountPath: /var/log/onap
94           name: portal-logs2
95         ports:
96         - containerPort: 8005
97         - containerPort: 8009
98         - containerPort: 8080
99         readinessProbe:
100           tcpSocket:
101             port: 8080
102           initialDelaySeconds: 5
103           periodSeconds: 10
104       - image: {{ .Values.image.filebeat }}
105         imagePullPolicy: {{ .Values.pullPolicy }}
106         name: filebeat-onap
107         volumeMounts:
108         - mountPath: /usr/share/filebeat/filebeat.yml
109           name: filebeat-conf
110         - mountPath: /var/log/onap
111           name: portal-logs2
112         - mountPath: /usr/share/filebeat/data
113           name: portal-data-filebeat
114       volumes:
115         - name: localtime
116           hostPath:
117             path: /etc/localtime
118         - name: filebeat-conf
119           hostPath:
120             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/filebeat/logback/filebeat.yml
121         - name: portal-logs2
122           emptyDir: {}
123         - name: portal-data-filebeat
124           emptyDir: {}
125         - name: portal-fusion-properties
126           hostPath:
127             path:  /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTAL/fusion.properties
128         - name: portal-openid-connect-properties
129           hostPath:
130             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTAL/openid-connect.properties
131         - name: portal-system-properties
132           hostPath:
133             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTAL/system.properties
134         - name: portal-portal-properties
135           hostPath:
136             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTAL/portal.properties
137         - name: portal-logback
138           hostPath:
139             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/portal/onapportal/logback.xml
140         - name: sdkapp-system-properties
141           hostPath:
142             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTALSDK/system.properties
143         - name: sdkapp-portal-properties
144           hostPath:
145             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTALSDK/portal.properties
146         - name: sdkapp-fusion-properties
147           hostPath:
148             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/portal-fe/webapps/etc/ONAPPORTALSDK/fusion.properties
149         - name: sdkapp-logback
150           hostPath:
151             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/log/portal/onapportalsdk/logback.xml
152         - name: portal-mariadb-onboarding-sql
153           hostPath:
154             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/mariadb/oom_updates.sql
155         - name: portal-root
156           hostPath:
157             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal
158         - name: portal-logs
159           hostPath:
160             path: /dockerdata-nfs/{{ .Values.nsPrefix }}/portal/logs
161       imagePullSecrets:
162       - name: "{{ .Values.nsPrefix }}-docker-registry-key"
163 #{{ end }}