Run all components in one namespace
[oom.git] / kubernetes / sdnc / templates / sdnc-statefulset.yaml
1 #{{ if not .Values.disableSdncSdnc }}
2 apiVersion: apps/v1beta1
3 kind: StatefulSet
4 metadata:
5   name: sdnc
6   namespace: "{{ .Values.nsPrefix }}"
7 spec:
8   serviceName: "sdnhost-cluster"
9   replicas: {{ .Values.numberOfODLReplicas }}
10   podManagementPolicy: Parallel
11   selector:
12     matchLabels:
13       app: sdnc
14   template:
15     metadata:
16       labels:
17         app: sdnc
18       name: sdnc
19     spec:
20       initContainers:
21       - command:
22         - /root/ready.py
23         args:
24         - --container-name
25         - sdnc-db-container
26         env:
27         - name: NAMESPACE
28           valueFrom:
29             fieldRef:
30               apiVersion: v1
31               fieldPath: metadata.namespace
32         image: {{ .Values.image.readiness }}
33         imagePullPolicy: {{ .Values.pullPolicy }}
34         name: sdnc-readiness
35       containers:
36       - command:
37         - bash
38         - "-c"
39         - |
40           sed -i 's/dbhost/sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}.svc.cluster.local/g' /opt/onap/sdnc/data/properties/svclogic.properties
41           sed -i 's/^\(org.onap.ccsdk.sli.jdbc.hosts=\).*/\1sdnc-dbhost-0.dbhost.{{ .Values.nsPrefix }}.svc.cluster.local/' /opt/onap/sdnc/data/properties/dblib.properties
42           /opt/onap/sdnc/bin/startODL.sh
43         env:
44         - name: MYSQL_ROOT_PASSWORD
45           value: openECOMP1.0
46         - name: SDNC_CONFIG_DIR
47           value: /opt/onap/sdnc/data/properties
48         - name: ENABLE_ODL_CLUSTER
49           value: "{{ .Values.enableODLCluster }}"
50         - name: SDNC_REPLICAS
51           value: "{{ .Values.numberOfODLReplicas }}"
52         image: {{ .Values.image.sdnc }}
53         imagePullPolicy: {{ .Values.pullPolicy }}
54         name: sdnc-controller-container
55         volumeMounts:
56         - mountPath: /etc/localtime
57           name: localtime
58           readOnly: true
59         - mountPath: /opt/onap/sdnc/data/properties/admportal.json
60           name: sdnc-conf
61           subPath: admportal.json
62         - mountPath: /opt/onap/sdnc/data/properties/aaiclient.properties
63           name: sdnc-conf
64           subPath: aaiclient.properties
65         - mountPath: /var/log/onap
66           name: sdnc-logs
67         - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg
68           name: sdnc-logging-cfg-config
69           subPath: org.ops4j.pax.logging.cfg
70         ports:
71         - containerPort: 8181
72         - containerPort: 8101
73         - containerPort: 2550
74         - containerPort: 8080
75         readinessProbe:
76           tcpSocket:
77             port: 8181
78           initialDelaySeconds: 5
79           periodSeconds: 10
80       - image: {{ .Values.image.filebeat }}
81         imagePullPolicy: {{ .Values.pullPolicy }}
82         name: filebeat-onap
83         volumeMounts:
84         - mountPath: /usr/share/filebeat/filebeat.yml
85           name: filebeat-conf
86           subPath: filebeat.yml
87         - mountPath: /var/log/onap
88           name: sdnc-logs
89         - mountPath: /usr/share/filebeat/data
90           name: sdnc-data-filebeat
91       volumes:
92         - name: localtime
93           hostPath:
94             path: /etc/localtime
95         - name: filebeat-conf
96           configMap:
97             name: sdnc-log-configmap
98         - name: sdnc-logging-cfg-config
99           configMap:
100             name: sdnc-logging-cfg-configmap
101         - name: sdnc-logs
102           emptyDir: {}
103         - name: sdnc-data-filebeat
104           emptyDir: {}
105         - name: sdnc-conf
106           configMap:
107             name: sdnc-conf-configmap
108             items:
109             - key: admportal.json
110               path: admportal.json
111               mode: 0755
112             - key: aaiclient.properties
113               path: aaiclient.properties
114               mode: 0755
115       imagePullSecrets:
116       - name: "{{ .Values.nsPrefix }}-docker-registry-key"
117 #{{ end }}