2e30713459571e9ae275e4a9a2a3ba1231833955
[ric-plt/ric-dep.git] / depRicKubernetesOperator / internal / controller / getDeployment.go
1 package controller\r
2 \r
3 import (\r
4         appsv1 "k8s.io/api/apps/v1"\r
5         corev1 "k8s.io/api/core/v1"\r
6         metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"\r
7         "k8s.io/apimachinery/pkg/util/intstr"\r
8 )\r
9 \r
10 func int32Ptr(val int) *int32 {\r
11         var a int32\r
12         a = int32(val)\r
13         return &a\r
14 }\r
15 \r
16 func GetDeployment() []*appsv1.Deployment {\r
17 \r
18         deployment1 := &appsv1.Deployment{\r
19                 ObjectMeta: metav1.ObjectMeta{\r
20                         Labels: map[string]string{\r
21                                 "heritage": "Helm",\r
22                                 "release":  "release-name",\r
23                                 "app":      "ricplt-a1mediator",\r
24                                 "chart":    "a1mediator-3.0.0",\r
25                         },\r
26                         Name:      "deployment-ricplt-a1mediator",\r
27                         Namespace: "ricplt",\r
28                 },\r
29                 Spec: appsv1.DeploymentSpec{\r
30                         Paused:   false,\r
31                         Replicas: int32Ptr(1),\r
32                         Selector: &metav1.LabelSelector{\r
33                                 MatchLabels: map[string]string{\r
34                                         "app":     "ricplt-a1mediator",\r
35                                         "release": "release-name",\r
36                                 },\r
37                         },\r
38                         Template: corev1.PodTemplateSpec{\r
39                                 ObjectMeta: metav1.ObjectMeta{\r
40                                         Labels: map[string]string{\r
41                                                 "release": "release-name",\r
42                                                 "app":     "ricplt-a1mediator",\r
43                                         },\r
44                                 },\r
45                                 Spec: corev1.PodSpec{\r
46                                         HostPID:  false,\r
47                                         Hostname: "a1mediator",\r
48                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
49 \r
50                                                 corev1.LocalObjectReference{\r
51                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
52                                                 },\r
53                                         },\r
54                                         Volumes: []corev1.Volume{\r
55 \r
56                                                 corev1.Volume{\r
57                                                         Name: "a1conf",\r
58                                                         VolumeSource: corev1.VolumeSource{\r
59                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
60                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
61                                                                                 Name: "configmap-ricplt-a1mediator-a1conf",\r
62                                                                         },\r
63                                                                 },\r
64                                                         },\r
65                                                 },\r
66                                         },\r
67                                         Containers: []corev1.Container{\r
68 \r
69                                                 corev1.Container{\r
70                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
71                                                         LivenessProbe: &corev1.Probe{\r
72                                                                 ProbeHandler: corev1.ProbeHandler{\r
73                                                                         HTTPGet: &corev1.HTTPGetAction{\r
74                                                                                 Path: "/a1-p/healthcheck",\r
75                                                                                 Port: intstr.IntOrString{\r
76                                                                                         StrVal: "http",\r
77                                                                                         Type:   intstr.Type(1),\r
78                                                                                 },\r
79                                                                         },\r
80                                                                 },\r
81                                                         },\r
82                                                         Name: "container-ricplt-a1mediator",\r
83                                                         Ports: []corev1.ContainerPort{\r
84 \r
85                                                                 corev1.ContainerPort{\r
86                                                                         ContainerPort: 10000,\r
87                                                                         Name:          "http",\r
88                                                                         Protocol:      corev1.Protocol("TCP"),\r
89                                                                 },\r
90                                                                 corev1.ContainerPort{\r
91                                                                         ContainerPort: 4561,\r
92                                                                         Name:          "rmrroute",\r
93                                                                         Protocol:      corev1.Protocol("TCP"),\r
94                                                                 },\r
95                                                                 corev1.ContainerPort{\r
96                                                                         ContainerPort: 4562,\r
97                                                                         Name:          "rmrdata",\r
98                                                                         Protocol:      corev1.Protocol("TCP"),\r
99                                                                 },\r
100                                                         },\r
101                                                         Stdin:     false,\r
102                                                         StdinOnce: false,\r
103                                                         TTY:       false,\r
104                                                         EnvFrom: []corev1.EnvFromSource{\r
105 \r
106                                                                 corev1.EnvFromSource{\r
107                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
108                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
109                                                                                         Name: "configmap-ricplt-a1mediator-env",\r
110                                                                                 },\r
111                                                                         },\r
112                                                                 },\r
113                                                                 corev1.EnvFromSource{\r
114                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
115                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
116                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
117                                                                                 },\r
118                                                                         },\r
119                                                                 },\r
120                                                         },\r
121                                                         Image: "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-a1:2.5.0",\r
122                                                         ReadinessProbe: &corev1.Probe{\r
123                                                                 ProbeHandler: corev1.ProbeHandler{\r
124                                                                         HTTPGet: &corev1.HTTPGetAction{\r
125                                                                                 Path: "/a1-p/healthcheck",\r
126                                                                                 Port: intstr.IntOrString{\r
127                                                                                         StrVal: "http",\r
128                                                                                         Type:   intstr.Type(1),\r
129                                                                                 },\r
130                                                                         },\r
131                                                                 },\r
132                                                         },\r
133                                                         VolumeMounts: []corev1.VolumeMount{\r
134 \r
135                                                                 corev1.VolumeMount{\r
136                                                                         MountPath: "/opt/route",\r
137                                                                         Name:      "a1conf",\r
138                                                                         ReadOnly:  false,\r
139                                                                 },\r
140                                                         },\r
141                                                 },\r
142                                         },\r
143                                         HostIPC:     false,\r
144                                         HostNetwork: false,\r
145                                 },\r
146                         },\r
147                 },\r
148                 TypeMeta: metav1.TypeMeta{\r
149                         APIVersion: "apps/v1",\r
150                         Kind:       "Deployment",\r
151                 },\r
152         }\r
153 \r
154         deployment2 := &appsv1.Deployment{\r
155                 Spec: appsv1.DeploymentSpec{\r
156                         Paused:   false,\r
157                         Replicas: int32Ptr(1),\r
158                         Selector: &metav1.LabelSelector{\r
159                                 MatchLabels: map[string]string{\r
160                                         "release": "release-name",\r
161                                         "app":     "ricplt-alarmmanager",\r
162                                 },\r
163                         },\r
164                         Template: corev1.PodTemplateSpec{\r
165                                 ObjectMeta: metav1.ObjectMeta{\r
166                                         Labels: map[string]string{\r
167                                                 "app":     "ricplt-alarmmanager",\r
168                                                 "release": "release-name",\r
169                                         },\r
170                                 },\r
171                                 Spec: corev1.PodSpec{\r
172                                         HostIPC:     false,\r
173                                         HostNetwork: false,\r
174                                         HostPID:     false,\r
175                                         Hostname:    "alarmmanager",\r
176                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
177 \r
178                                                 corev1.LocalObjectReference{\r
179                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
180                                                 },\r
181                                         },\r
182                                         ServiceAccountName: "svcacct-ricplt-alarmmanager",\r
183                                         Volumes: []corev1.Volume{\r
184 \r
185                                                 corev1.Volume{\r
186                                                         Name: "config-volume",\r
187                                                         VolumeSource: corev1.VolumeSource{\r
188                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
189                                                                         Items: []corev1.KeyToPath{\r
190 \r
191                                                                                 corev1.KeyToPath{\r
192                                                                                         Mode: int32Ptr(420),\r
193                                                                                         Path: "config-file.json",\r
194                                                                                         Key:  "alarmmanagercfg",\r
195                                                                                 },\r
196                                                                         },\r
197                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
198                                                                                 Name: "configmap-ricplt-alarmmanager-alarmmanagercfg",\r
199                                                                         },\r
200                                                                 },\r
201                                                         },\r
202                                                 },\r
203                                                 corev1.Volume{\r
204                                                         Name: "am-persistent-storage",\r
205                                                         VolumeSource: corev1.VolumeSource{\r
206                                                                 PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSource{\r
207                                                                         ClaimName: "pvc-ricplt-alarmmanager",\r
208                                                                         ReadOnly:  false,\r
209                                                                 },\r
210                                                         },\r
211                                                 },\r
212                                         },\r
213                                         Containers: []corev1.Container{\r
214 \r
215                                                 corev1.Container{\r
216                                                         Ports: []corev1.ContainerPort{\r
217 \r
218                                                                 corev1.ContainerPort{\r
219                                                                         ContainerPort: 4561,\r
220                                                                         Name:          "rmrroute",\r
221                                                                         Protocol:      corev1.Protocol("TCP"),\r
222                                                                 },\r
223                                                                 corev1.ContainerPort{\r
224                                                                         ContainerPort: 4560,\r
225                                                                         Name:          "rmrdata",\r
226                                                                         Protocol:      corev1.Protocol("TCP"),\r
227                                                                 },\r
228                                                                 corev1.ContainerPort{\r
229                                                                         ContainerPort: 8080,\r
230                                                                         Name:          "http",\r
231                                                                         Protocol:      corev1.Protocol("TCP"),\r
232                                                                 },\r
233                                                         },\r
234                                                         StdinOnce: false,\r
235                                                         TTY:       false,\r
236                                                         VolumeMounts: []corev1.VolumeMount{\r
237 \r
238                                                                 corev1.VolumeMount{\r
239                                                                         MountPath: "/cfg",\r
240                                                                         Name:      "config-volume",\r
241                                                                         ReadOnly:  false,\r
242                                                                 },\r
243                                                                 corev1.VolumeMount{\r
244                                                                         Name:      "am-persistent-storage",\r
245                                                                         ReadOnly:  false,\r
246                                                                         MountPath: "/mnt/pv-ricplt-alarmmanager",\r
247                                                                 },\r
248                                                         },\r
249                                                         Image:           "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-alarmmanager:0.5.9",\r
250                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
251                                                         Name:            "container-ricplt-alarmmanager",\r
252                                                         Env: []corev1.EnvVar{\r
253 \r
254                                                                 corev1.EnvVar{\r
255                                                                         Name:  "PLT_NAMESPACE",\r
256                                                                         Value: "ricplt",\r
257                                                                 },\r
258                                                         },\r
259                                                         EnvFrom: []corev1.EnvFromSource{\r
260 \r
261                                                                 corev1.EnvFromSource{\r
262                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
263                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
264                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
265                                                                                 },\r
266                                                                         },\r
267                                                                 },\r
268                                                                 corev1.EnvFromSource{\r
269                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
270                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
271                                                                                         Name: "configmap-ricplt-alarmmanager-env",\r
272                                                                                 },\r
273                                                                         },\r
274                                                                 },\r
275                                                         },\r
276                                                         Stdin: false,\r
277                                                 },\r
278                                         },\r
279                                 },\r
280                         },\r
281                 },\r
282                 TypeMeta: metav1.TypeMeta{\r
283                         APIVersion: "apps/v1",\r
284                         Kind:       "Deployment",\r
285                 },\r
286                 ObjectMeta: metav1.ObjectMeta{\r
287                         Namespace: "ricplt",\r
288                         Labels: map[string]string{\r
289                                 "chart":    "alarmmanager-5.0.0",\r
290                                 "heritage": "Helm",\r
291                                 "release":  "release-name",\r
292                                 "app":      "ricplt-alarmmanager",\r
293                         },\r
294                         Name: "deployment-ricplt-alarmmanager",\r
295                 },\r
296         }\r
297 \r
298         deployment3 := &appsv1.Deployment{\r
299                 ObjectMeta: metav1.ObjectMeta{\r
300                         Namespace: "ricplt",\r
301                         Labels: map[string]string{\r
302                                 "app":      "ricplt-appmgr",\r
303                                 "chart":    "appmgr-3.0.0",\r
304                                 "heritage": "Helm",\r
305                                 "release":  "release-name",\r
306                         },\r
307                         Name: "deployment-ricplt-appmgr",\r
308                 },\r
309                 Spec: appsv1.DeploymentSpec{\r
310                         Template: corev1.PodTemplateSpec{\r
311                                 ObjectMeta: metav1.ObjectMeta{\r
312                                         Labels: map[string]string{\r
313                                                 "app":     "ricplt-appmgr",\r
314                                                 "release": "release-name",\r
315                                         },\r
316                                 },\r
317                                 Spec: corev1.PodSpec{\r
318                                         Containers: []corev1.Container{\r
319 \r
320                                                 corev1.Container{\r
321                                                         Stdin: false,\r
322                                                         VolumeMounts: []corev1.VolumeMount{\r
323 \r
324                                                                 corev1.VolumeMount{\r
325                                                                         MountPath: "/opt/ric/config/appmgr.yaml",\r
326                                                                         Name:      "config-volume",\r
327                                                                         ReadOnly:  false,\r
328                                                                         SubPath:   "appmgr.yaml",\r
329                                                                 },\r
330                                                                 corev1.VolumeMount{\r
331                                                                         MountPath: "/opt/ric/secret",\r
332                                                                         Name:      "helm-secret-volume",\r
333                                                                         ReadOnly:  false,\r
334                                                                 },\r
335                                                                 corev1.VolumeMount{\r
336                                                                         ReadOnly:  false,\r
337                                                                         SubPath:   "helm_repo_username",\r
338                                                                         MountPath: "/opt/ric/secret/helm_repo_username",\r
339                                                                         Name:      "secret-volume",\r
340                                                                 },\r
341                                                                 corev1.VolumeMount{\r
342                                                                         SubPath:   "helm_repo_password",\r
343                                                                         MountPath: "/opt/ric/secret/helm_repo_password",\r
344                                                                         Name:      "secret-volume",\r
345                                                                         ReadOnly:  false,\r
346                                                                 },\r
347                                                         },\r
348                                                         EnvFrom: []corev1.EnvFromSource{\r
349 \r
350                                                                 corev1.EnvFromSource{\r
351                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
352                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
353                                                                                         Name: "configmap-ricplt-appmgr-env",\r
354                                                                                 },\r
355                                                                         },\r
356                                                                 },\r
357                                                                 corev1.EnvFromSource{\r
358                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
359                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
360                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
361                                                                                 },\r
362                                                                         },\r
363                                                                 },\r
364                                                         },\r
365                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
366                                                         Name:            "container-ricplt-appmgr",\r
367                                                         TTY:             false,\r
368                                                         Image:           "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-appmgr:0.2.0",\r
369                                                         Ports: []corev1.ContainerPort{\r
370 \r
371                                                                 corev1.ContainerPort{\r
372                                                                         ContainerPort: 8080,\r
373                                                                         Name:          "http",\r
374                                                                         Protocol:      corev1.Protocol("TCP"),\r
375                                                                 },\r
376                                                                 corev1.ContainerPort{\r
377                                                                         Protocol:      corev1.Protocol("TCP"),\r
378                                                                         ContainerPort: 4561,\r
379                                                                         Name:          "rmrroute",\r
380                                                                 },\r
381                                                                 corev1.ContainerPort{\r
382                                                                         ContainerPort: 4560,\r
383                                                                         Name:          "rmrdata",\r
384                                                                         Protocol:      corev1.Protocol("TCP"),\r
385                                                                 },\r
386                                                         },\r
387                                                         StdinOnce: false,\r
388                                                 },\r
389                                         },\r
390                                         HostIPC:            false,\r
391                                         HostPID:            false,\r
392                                         Hostname:           "appmgr",\r
393                                         RestartPolicy:      corev1.RestartPolicy("Always"),\r
394                                         ServiceAccountName: "svcacct-ricplt-appmgr",\r
395                                         Volumes: []corev1.Volume{\r
396 \r
397                                                 corev1.Volume{\r
398                                                         Name: "config-volume",\r
399                                                         VolumeSource: corev1.VolumeSource{\r
400                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
401                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
402                                                                                 Name: "configmap-ricplt-appmgr-appconfig",\r
403                                                                         },\r
404                                                                 },\r
405                                                         },\r
406                                                 },\r
407                                                 corev1.Volume{\r
408                                                         Name: "secret-volume",\r
409                                                         VolumeSource: corev1.VolumeSource{\r
410                                                                 Secret: &corev1.SecretVolumeSource{\r
411                                                                         SecretName: "secret-ricplt-appmgr",\r
412                                                                 },\r
413                                                         },\r
414                                                 },\r
415                                                 corev1.Volume{\r
416                                                         Name: "helm-secret-volume",\r
417                                                 },\r
418                                                 corev1.Volume{\r
419                                                         Name: "appmgr-bin-volume",\r
420                                                         VolumeSource: corev1.VolumeSource{\r
421                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
422                                                                         DefaultMode: int32Ptr(493),\r
423                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
424                                                                                 Name: "configmap-ricplt-appmgr-bin",\r
425                                                                         },\r
426                                                                 },\r
427                                                         },\r
428                                                 },\r
429                                         },\r
430                                         HostNetwork: false,\r
431                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
432 \r
433                                                 corev1.LocalObjectReference{\r
434                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
435                                                 },\r
436                                         },\r
437                                         InitContainers: []corev1.Container{\r
438 \r
439                                                 corev1.Container{\r
440                                                         Env: []corev1.EnvVar{\r
441 \r
442                                                                 corev1.EnvVar{\r
443                                                                         Name:  "SVCACCT_NAME",\r
444                                                                         Value: "svcacct-ricplt-appmgr",\r
445                                                                 },\r
446                                                                 corev1.EnvVar{\r
447                                                                         Name:  "CLUSTER_NAME",\r
448                                                                         Value: "kubernetes",\r
449                                                                 },\r
450                                                                 corev1.EnvVar{\r
451                                                                         Name:  "KUBECONFIG",\r
452                                                                         Value: "/tmp/kubeconfig",\r
453                                                                 },\r
454                                                                 corev1.EnvVar{\r
455                                                                         Name:  "K8S_API_HOST",\r
456                                                                         Value: "https://kubernetes.default.svc.cluster.local/",\r
457                                                                 },\r
458                                                                 corev1.EnvVar{\r
459                                                                         Name:  "SECRET_NAMESPACE",\r
460                                                                         Value: "ricinfra",\r
461                                                                 },\r
462                                                                 corev1.EnvVar{\r
463                                                                         Name:  "SECRET_NAME",\r
464                                                                         Value: "ricxapp-helm-secret",\r
465                                                                 },\r
466                                                         },\r
467                                                         Image:     "nexus3.o-ran-sc.org:10002/o-ran-sc/it-dep-init:0.0.1",\r
468                                                         Name:      "container-ricplt-appmgr-copy-tiller-secret",\r
469                                                         Stdin:     false,\r
470                                                         StdinOnce: false,\r
471                                                         TTY:       false,\r
472                                                         VolumeMounts: []corev1.VolumeMount{\r
473 \r
474                                                                 corev1.VolumeMount{\r
475                                                                         Name:      "helm-secret-volume",\r
476                                                                         ReadOnly:  false,\r
477                                                                         MountPath: "/opt/ric/secret",\r
478                                                                 },\r
479                                                                 corev1.VolumeMount{\r
480                                                                         MountPath: "/svcacct-to-kubeconfig.sh",\r
481                                                                         Name:      "appmgr-bin-volume",\r
482                                                                         ReadOnly:  false,\r
483                                                                         SubPath:   "svcacct-to-kubeconfig.sh",\r
484                                                                 },\r
485                                                                 corev1.VolumeMount{\r
486                                                                         ReadOnly:  false,\r
487                                                                         SubPath:   "appmgr-tiller-secret-copier.sh",\r
488                                                                         MountPath: "/appmgr-tiller-secret-copier.sh",\r
489                                                                         Name:      "appmgr-bin-volume",\r
490                                                                 },\r
491                                                         },\r
492                                                         Command: []string{\r
493 \r
494                                                                 "/appmgr-tiller-secret-copier.sh",\r
495                                                         },\r
496                                                         EnvFrom: []corev1.EnvFromSource{\r
497 \r
498                                                                 corev1.EnvFromSource{\r
499                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
500                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
501                                                                                         Name: "configmap-ricplt-appmgr-env",\r
502                                                                                 },\r
503                                                                         },\r
504                                                                 },\r
505                                                         },\r
506                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
507                                                 },\r
508                                         },\r
509                                 },\r
510                         },\r
511                         Paused:   false,\r
512                         Replicas: int32Ptr(1),\r
513                         Selector: &metav1.LabelSelector{\r
514                                 MatchLabels: map[string]string{\r
515                                         "release": "release-name",\r
516                                         "app":     "ricplt-appmgr",\r
517                                 },\r
518                         },\r
519                 },\r
520                 TypeMeta: metav1.TypeMeta{\r
521                         APIVersion: "apps/v1",\r
522                         Kind:       "Deployment",\r
523                 },\r
524         }\r
525 \r
526         deployment4 := &appsv1.Deployment{\r
527                 Spec: appsv1.DeploymentSpec{\r
528                         Paused:   false,\r
529                         Replicas: int32Ptr(1),\r
530                         Selector: &metav1.LabelSelector{\r
531                                 MatchLabels: map[string]string{\r
532                                         "app":     "ricplt-e2mgr",\r
533                                         "release": "release-name",\r
534                                 },\r
535                         },\r
536                         Template: corev1.PodTemplateSpec{\r
537                                 ObjectMeta: metav1.ObjectMeta{\r
538                                         Labels: map[string]string{\r
539                                                 "app":     "ricplt-e2mgr",\r
540                                                 "release": "release-name",\r
541                                         },\r
542                                 },\r
543                                 Spec: corev1.PodSpec{\r
544                                         HostNetwork: false,\r
545                                         HostPID:     false,\r
546                                         Hostname:    "e2mgr",\r
547                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
548 \r
549                                                 corev1.LocalObjectReference{\r
550                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
551                                                 },\r
552                                         },\r
553                                         Volumes: []corev1.Volume{\r
554 \r
555                                                 corev1.Volume{\r
556                                                         Name: "local-router-file",\r
557                                                         VolumeSource: corev1.VolumeSource{\r
558                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
559                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
560                                                                                 Name: "configmap-ricplt-e2mgr-router-configmap",\r
561                                                                         },\r
562                                                                 },\r
563                                                         },\r
564                                                 },\r
565                                                 corev1.Volume{\r
566                                                         VolumeSource: corev1.VolumeSource{\r
567                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
568                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
569                                                                                 Name: "configmap-ricplt-e2mgr-configuration-configmap",\r
570                                                                         },\r
571                                                                 },\r
572                                                         },\r
573                                                         Name: "local-configuration-file",\r
574                                                 },\r
575                                                 corev1.Volume{\r
576                                                         Name: "e2mgr-loglevel-volume",\r
577                                                         VolumeSource: corev1.VolumeSource{\r
578                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
579                                                                         Items: []corev1.KeyToPath{\r
580 \r
581                                                                                 corev1.KeyToPath{\r
582                                                                                         Key:  "logcfg",\r
583                                                                                         Mode: int32Ptr(420),\r
584                                                                                         Path: "log-level.yaml",\r
585                                                                                 },\r
586                                                                         },\r
587                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
588                                                                                 Name: "configmap-ricplt-e2mgr-loglevel-configmap",\r
589                                                                         },\r
590                                                                 },\r
591                                                         },\r
592                                                 },\r
593                                         },\r
594                                         Containers: []corev1.Container{\r
595 \r
596                                                 corev1.Container{\r
597                                                         Ports: []corev1.ContainerPort{\r
598 \r
599                                                                 corev1.ContainerPort{\r
600                                                                         ContainerPort: 3800,\r
601                                                                         Name:          "http",\r
602                                                                 },\r
603                                                                 corev1.ContainerPort{\r
604                                                                         ContainerPort: 4561,\r
605                                                                         Name:          "rmrroute",\r
606                                                                 },\r
607                                                                 corev1.ContainerPort{\r
608                                                                         ContainerPort: 3801,\r
609                                                                         Name:          "rmrdata",\r
610                                                                 },\r
611                                                         },\r
612                                                         SecurityContext: &corev1.SecurityContext{\r
613                                                                 Privileged: boolPtr(false),\r
614                                                         },\r
615                                                         StdinOnce: false,\r
616                                                         LivenessProbe: &corev1.Probe{\r
617                                                                 InitialDelaySeconds: 3,\r
618                                                                 PeriodSeconds:       10,\r
619                                                                 ProbeHandler: corev1.ProbeHandler{\r
620                                                                         HTTPGet: &corev1.HTTPGetAction{\r
621                                                                                 Path: "v1/health",\r
622                                                                                 Port: intstr.IntOrString{\r
623                                                                                         IntVal: 3800,\r
624                                                                                 },\r
625                                                                         },\r
626                                                                 },\r
627                                                         },\r
628                                                         Name:            "container-ricplt-e2mgr",\r
629                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
630                                                         ReadinessProbe: &corev1.Probe{\r
631                                                                 InitialDelaySeconds: 3,\r
632                                                                 PeriodSeconds:       10,\r
633                                                                 ProbeHandler: corev1.ProbeHandler{\r
634                                                                         HTTPGet: &corev1.HTTPGetAction{\r
635                                                                                 Path: "v1/health",\r
636                                                                                 Port: intstr.IntOrString{\r
637                                                                                         IntVal: 3800,\r
638                                                                                 },\r
639                                                                         },\r
640                                                                 },\r
641                                                         },\r
642                                                         Stdin: true,\r
643                                                         TTY:   true,\r
644                                                         VolumeMounts: []corev1.VolumeMount{\r
645 \r
646                                                                 corev1.VolumeMount{\r
647                                                                         MountPath: "/opt/E2Manager/router.txt",\r
648                                                                         Name:      "local-router-file",\r
649                                                                         ReadOnly:  false,\r
650                                                                         SubPath:   "router.txt",\r
651                                                                 },\r
652                                                                 corev1.VolumeMount{\r
653                                                                         MountPath: "/etc/config",\r
654                                                                         Name:      "e2mgr-loglevel-volume",\r
655                                                                         ReadOnly:  false,\r
656                                                                 },\r
657                                                                 corev1.VolumeMount{\r
658                                                                         MountPath: "/opt/E2Manager/resources/configuration.yaml",\r
659                                                                         Name:      "local-configuration-file",\r
660                                                                         ReadOnly:  false,\r
661                                                                         SubPath:   "configuration.yaml",\r
662                                                                 },\r
663                                                         },\r
664                                                         EnvFrom: []corev1.EnvFromSource{\r
665 \r
666                                                                 corev1.EnvFromSource{\r
667                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
668                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
669                                                                                         Name: "configmap-ricplt-e2mgr-env",\r
670                                                                                 },\r
671                                                                         },\r
672                                                                 },\r
673                                                                 corev1.EnvFromSource{\r
674                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
675                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
676                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
677                                                                                 },\r
678                                                                         },\r
679                                                                 },\r
680                                                         },\r
681                                                         Image: "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-e2mgr:3.0.1",\r
682                                                 },\r
683                                         },\r
684                                         HostIPC: false,\r
685                                 },\r
686                         },\r
687                 },\r
688                 TypeMeta: metav1.TypeMeta{\r
689                         APIVersion: "apps/v1",\r
690                         Kind:       "Deployment",\r
691                 },\r
692                 ObjectMeta: metav1.ObjectMeta{\r
693                         Labels: map[string]string{\r
694                                 "app":      "ricplt-e2mgr",\r
695                                 "chart":    "e2mgr-3.0.0",\r
696                                 "heritage": "Helm",\r
697                                 "release":  "release-name",\r
698                         },\r
699                         Name:      "deployment-ricplt-e2mgr",\r
700                         Namespace: "ricplt",\r
701                 },\r
702         }\r
703 \r
704         deployment5 := &appsv1.Deployment{\r
705                 ObjectMeta: metav1.ObjectMeta{\r
706                         Labels: map[string]string{\r
707                                 "release":  "release-name",\r
708                                 "app":      "ricplt-e2term-alpha",\r
709                                 "chart":    "e2term-3.0.0",\r
710                                 "heritage": "Helm",\r
711                         },\r
712                         Name:      "deployment-ricplt-e2term-alpha",\r
713                         Namespace: "ricplt",\r
714                 },\r
715                 Spec: appsv1.DeploymentSpec{\r
716                         Paused:   false,\r
717                         Replicas: int32Ptr(1),\r
718                         Selector: &metav1.LabelSelector{\r
719                                 MatchLabels: map[string]string{\r
720                                         "release": "release-name",\r
721                                         "app":     "ricplt-e2term-alpha",\r
722                                 },\r
723                         },\r
724                         Template: corev1.PodTemplateSpec{\r
725                                 ObjectMeta: metav1.ObjectMeta{\r
726                                         Labels: map[string]string{\r
727                                                 "app":     "ricplt-e2term-alpha",\r
728                                                 "release": "release-name",\r
729                                         },\r
730                                 },\r
731                                 Spec: corev1.PodSpec{\r
732                                         Containers: []corev1.Container{\r
733 \r
734                                                 corev1.Container{\r
735                                                         ReadinessProbe: &corev1.Probe{\r
736                                                                 InitialDelaySeconds: 120,\r
737                                                                 PeriodSeconds:       60,\r
738                                                                 ProbeHandler: corev1.ProbeHandler{\r
739                                                                         Exec: &corev1.ExecAction{\r
740                                                                                 Command: []string{\r
741 \r
742                                                                                         "/bin/sh",\r
743                                                                                         "-c",\r
744                                                                                         "ip=`hostname -i`;export RMR_SRC_ID=$ip;/opt/e2/rmr_probe -h $ip:38000",\r
745                                                                                 },\r
746                                                                         },\r
747                                                                 },\r
748                                                         },\r
749                                                         SecurityContext: &corev1.SecurityContext{\r
750                                                                 Privileged: boolPtr(false),\r
751                                                         },\r
752                                                         Stdin: true,\r
753                                                         Env: []corev1.EnvVar{\r
754 \r
755                                                                 corev1.EnvVar{\r
756                                                                         Name:  "SYSTEM_NAME",\r
757                                                                         Value: "SEP",\r
758                                                                 },\r
759                                                                 corev1.EnvVar{\r
760                                                                         Name:  "CONFIG_MAP_NAME",\r
761                                                                         Value: "/etc/config/log-level",\r
762                                                                 },\r
763                                                                 corev1.EnvVar{\r
764                                                                         Name: "HOST_NAME",\r
765                                                                         ValueFrom: &corev1.EnvVarSource{\r
766                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
767                                                                                         FieldPath: "spec.nodeName",\r
768                                                                                 },\r
769                                                                         },\r
770                                                                 },\r
771                                                                 corev1.EnvVar{\r
772                                                                         Name:  "SERVICE_NAME",\r
773                                                                         Value: "RIC_E2_TERM",\r
774                                                                 },\r
775                                                                 corev1.EnvVar{\r
776                                                                         Name:  "CONTAINER_NAME",\r
777                                                                         Value: "container-ricplt-e2term",\r
778                                                                 },\r
779                                                                 corev1.EnvVar{\r
780                                                                         Name: "POD_NAME",\r
781                                                                         ValueFrom: &corev1.EnvVarSource{\r
782                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
783                                                                                         FieldPath: "metadata.name",\r
784                                                                                 },\r
785                                                                         },\r
786                                                                 },\r
787                                                         },\r
788                                                         EnvFrom: []corev1.EnvFromSource{\r
789 \r
790                                                                 corev1.EnvFromSource{\r
791                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
792                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
793                                                                                         Name: "configmap-ricplt-e2term-env-alpha",\r
794                                                                                 },\r
795                                                                         },\r
796                                                                 },\r
797                                                         },\r
798                                                         Image: "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-e2:3.0.1",\r
799                                                         LivenessProbe: &corev1.Probe{\r
800                                                                 ProbeHandler: corev1.ProbeHandler{\r
801                                                                         Exec: &corev1.ExecAction{\r
802                                                                                 Command: []string{\r
803 \r
804                                                                                         "/bin/sh",\r
805                                                                                         "-c",\r
806                                                                                         "ip=`hostname -i`;export RMR_SRC_ID=$ip;/opt/e2/rmr_probe -h $ip:38000",\r
807                                                                                 },\r
808                                                                         },\r
809                                                                 },\r
810                                                                 InitialDelaySeconds: 10,\r
811                                                                 PeriodSeconds:       10,\r
812                                                         },\r
813                                                         Name:            "container-ricplt-e2term",\r
814                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
815                                                         Ports: []corev1.ContainerPort{\r
816 \r
817                                                                 corev1.ContainerPort{\r
818                                                                         ContainerPort: 4561,\r
819                                                                         Name:          "rmrroute-alpha",\r
820                                                                 },\r
821                                                                 corev1.ContainerPort{\r
822                                                                         ContainerPort: 38000,\r
823                                                                         Name:          "rmrdata-alpha",\r
824                                                                 },\r
825                                                                 corev1.ContainerPort{\r
826                                                                         ContainerPort: 36422,\r
827                                                                         Name:          "sctp-alpha",\r
828                                                                         Protocol:      corev1.Protocol("SCTP"),\r
829                                                                 },\r
830                                                                 corev1.ContainerPort{\r
831                                                                         ContainerPort: 8088,\r
832                                                                         Name:          "prmts-alpha",\r
833                                                                 },\r
834                                                         },\r
835                                                         StdinOnce: false,\r
836                                                         TTY:       true,\r
837                                                         VolumeMounts: []corev1.VolumeMount{\r
838 \r
839                                                                 corev1.VolumeMount{\r
840                                                                         MountPath: "/opt/e2/router.txt",\r
841                                                                         Name:      "local-router-file",\r
842                                                                         ReadOnly:  false,\r
843                                                                         SubPath:   "router.txt",\r
844                                                                 },\r
845                                                                 corev1.VolumeMount{\r
846                                                                         MountPath: "/tmp/rmr_verbose",\r
847                                                                         Name:      "local-router-file",\r
848                                                                         ReadOnly:  false,\r
849                                                                         SubPath:   "rmr_verbose",\r
850                                                                 },\r
851                                                                 corev1.VolumeMount{\r
852                                                                         MountPath: "/etc/config",\r
853                                                                         Name:      "local-loglevel-file",\r
854                                                                         ReadOnly:  false,\r
855                                                                 },\r
856                                                                 corev1.VolumeMount{\r
857                                                                         ReadOnly:  false,\r
858                                                                         MountPath: "/data/outgoing/",\r
859                                                                         Name:      "vol-shared",\r
860                                                                 },\r
861                                                         },\r
862                                                 },\r
863                                         },\r
864                                         DNSPolicy:   corev1.DNSPolicy("ClusterFirstWithHostNet"),\r
865                                         HostIPC:     false,\r
866                                         HostNetwork: false,\r
867                                         HostPID:     false,\r
868                                         Hostname:    "e2term-alpha",\r
869                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
870 \r
871                                                 corev1.LocalObjectReference{\r
872                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
873                                                 },\r
874                                         },\r
875                                         Volumes: []corev1.Volume{\r
876 \r
877                                                 corev1.Volume{\r
878                                                         Name: "local-router-file",\r
879                                                         VolumeSource: corev1.VolumeSource{\r
880                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
881                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
882                                                                                 Name: "configmap-ricplt-e2term-router-configmap",\r
883                                                                         },\r
884                                                                 },\r
885                                                         },\r
886                                                 },\r
887                                                 corev1.Volume{\r
888                                                         Name: "local-loglevel-file",\r
889                                                         VolumeSource: corev1.VolumeSource{\r
890                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
891                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
892                                                                                 Name: "configmap-ricplt-e2term-loglevel-configmap",\r
893                                                                         },\r
894                                                                 },\r
895                                                         },\r
896                                                 },\r
897                                                 corev1.Volume{\r
898                                                         VolumeSource: corev1.VolumeSource{\r
899                                                                 PersistentVolumeClaim: &corev1.PersistentVolumeClaimVolumeSource{\r
900                                                                         ClaimName: "pvc-ricplt-e2term-alpha",\r
901                                                                         ReadOnly:  false,\r
902                                                                 },\r
903                                                         },\r
904                                                         Name: "vol-shared",\r
905                                                 },\r
906                                         },\r
907                                 },\r
908                         },\r
909                 },\r
910                 TypeMeta: metav1.TypeMeta{\r
911                         APIVersion: "apps/v1",\r
912                         Kind:       "Deployment",\r
913                 },\r
914         }\r
915 \r
916 \r
917         deployment6 := &appsv1.Deployment{\r
918                 TypeMeta: metav1.TypeMeta{\r
919                         APIVersion: "apps/v1",\r
920                         Kind:       "Deployment",\r
921                 },\r
922                 ObjectMeta: metav1.ObjectMeta{\r
923                         Labels: map[string]string{\r
924                                 "app.kubernetes.io/component":  "app",\r
925                                 "app.kubernetes.io/instance":   "release-name",\r
926                                 "app.kubernetes.io/managed-by": "Helm",\r
927                                 "app.kubernetes.io/name":       "kong",\r
928                                 "app.kubernetes.io/version":    "1.4",\r
929                                 "helm.sh/chart":                "kong-0.36.6",\r
930                         },\r
931                         Name: "release-name-kong",\r
932                 },\r
933                 Spec: appsv1.DeploymentSpec{\r
934                         Paused:   false,\r
935                         Replicas: int32Ptr(1),\r
936                         Selector: &metav1.LabelSelector{\r
937                                 MatchLabels: map[string]string{\r
938                                         "app.kubernetes.io/component": "app",\r
939                                         "app.kubernetes.io/instance":  "release-name",\r
940                                         "app.kubernetes.io/name":      "kong",\r
941                                 },\r
942                         },\r
943                         Template: corev1.PodTemplateSpec{\r
944                                 ObjectMeta: metav1.ObjectMeta{\r
945                                         Labels: map[string]string{\r
946                                                 "app.kubernetes.io/managed-by": "Helm",\r
947                                                 "app.kubernetes.io/name":       "kong",\r
948                                                 "app.kubernetes.io/version":    "1.4",\r
949                                                 "helm.sh/chart":                "kong-0.36.6",\r
950                                                 "app.kubernetes.io/component":  "app",\r
951                                                 "app.kubernetes.io/instance":   "release-name",\r
952                                         },\r
953                                 },\r
954                                 Spec: corev1.PodSpec{\r
955                                         ServiceAccountName: "release-name-kong",\r
956                                         Volumes: []corev1.Volume{\r
957 \r
958                                                 corev1.Volume{\r
959                                                         Name: "release-name-kong-prefix-dir",\r
960                                                 },\r
961                                                 corev1.Volume{\r
962                                                         Name: "release-name-kong-tmp",\r
963                                                 },\r
964                                                 corev1.Volume{\r
965                                                         VolumeSource: corev1.VolumeSource{\r
966                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
967                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
968                                                                                 Name: "release-name-kong-default-custom-server-blocks",\r
969                                                                         },\r
970                                                                 },\r
971                                                         },\r
972                                                         Name: "custom-nginx-template-volume",\r
973                                                 },\r
974                                         },\r
975                                         Containers: []corev1.Container{\r
976 \r
977                                                 corev1.Container{\r
978                                                         TTY: false,\r
979                                                         Env: []corev1.EnvVar{\r
980 \r
981                                                                 corev1.EnvVar{\r
982                                                                         Name: "POD_NAME",\r
983                                                                         ValueFrom: &corev1.EnvVarSource{\r
984                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
985                                                                                         APIVersion: "v1",\r
986                                                                                         FieldPath:  "metadata.name",\r
987                                                                                 },\r
988                                                                         },\r
989                                                                 },\r
990                                                                 corev1.EnvVar{\r
991                                                                         ValueFrom: &corev1.EnvVarSource{\r
992                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
993                                                                                         APIVersion: "v1",\r
994                                                                                         FieldPath:  "metadata.namespace",\r
995                                                                                 },\r
996                                                                         },\r
997                                                                         Name: "POD_NAMESPACE",\r
998                                                                 },\r
999                                                         },\r
1000                                                         Image: "kong/kubernetes-ingress-controller:0.7.0",\r
1001                                                         LivenessProbe: &corev1.Probe{\r
1002                                                                 FailureThreshold:    3,\r
1003                                                                 InitialDelaySeconds: 5,\r
1004                                                                 PeriodSeconds:       10,\r
1005                                                                 ProbeHandler: corev1.ProbeHandler{\r
1006                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1007                                                                                 Path: "/healthz",\r
1008                                                                                 Port: intstr.IntOrString{\r
1009                                                                                         IntVal: 10254,\r
1010                                                                                 },\r
1011                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1012                                                                         },\r
1013                                                                 },\r
1014                                                                 SuccessThreshold: 1,\r
1015                                                                 TimeoutSeconds:   5,\r
1016                                                         },\r
1017                                                         ReadinessProbe: &corev1.Probe{\r
1018                                                                 FailureThreshold:    3,\r
1019                                                                 InitialDelaySeconds: 5,\r
1020                                                                 PeriodSeconds:       10,\r
1021                                                                 ProbeHandler: corev1.ProbeHandler{\r
1022                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1023                                                                                 Port: intstr.IntOrString{\r
1024                                                                                         IntVal: 10254,\r
1025                                                                                 },\r
1026                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1027                                                                                 Path:   "/healthz",\r
1028                                                                         },\r
1029                                                                 },\r
1030                                                                 SuccessThreshold: 1,\r
1031                                                                 TimeoutSeconds:   5,\r
1032                                                         },\r
1033                                                         Stdin:     false,\r
1034                                                         StdinOnce: false,\r
1035                                                         Args: []string{\r
1036 \r
1037                                                                 "/kong-ingress-controller",\r
1038                                                                 "--publish-service=ricplt/release-name-kong-proxy",\r
1039                                                                 "--ingress-class=kong",\r
1040                                                                 "--election-id=kong-ingress-controller-leader-kong",\r
1041                                                                 "--kong-url=https://localhost:8444",\r
1042                                                                 "--admin-tls-skip-verify",\r
1043                                                         },\r
1044                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1045                                                         Name:            "ingress-controller",\r
1046                                                 },\r
1047                                                 corev1.Container{\r
1048                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1049                                                         Lifecycle: &corev1.Lifecycle{\r
1050                                                                 PreStop: &corev1.LifecycleHandler{\r
1051                                                                         Exec: &corev1.ExecAction{\r
1052                                                                                 Command: []string{\r
1053 \r
1054                                                                                         "/bin/sh",\r
1055                                                                                         "-c",\r
1056                                                                                         "kong quit",\r
1057                                                                                 },\r
1058                                                                         },\r
1059                                                                 },\r
1060                                                         },\r
1061                                                         Name:      "proxy",\r
1062                                                         Stdin:     false,\r
1063                                                         StdinOnce: false,\r
1064                                                         TTY:       false,\r
1065                                                         VolumeMounts: []corev1.VolumeMount{\r
1066 \r
1067                                                                 corev1.VolumeMount{\r
1068                                                                         MountPath: "/kong_prefix/",\r
1069                                                                         Name:      "release-name-kong-prefix-dir",\r
1070                                                                         ReadOnly:  false,\r
1071                                                                 },\r
1072                                                                 corev1.VolumeMount{\r
1073                                                                         ReadOnly:  false,\r
1074                                                                         MountPath: "/tmp",\r
1075                                                                         Name:      "release-name-kong-tmp",\r
1076                                                                 },\r
1077                                                                 corev1.VolumeMount{\r
1078                                                                         MountPath: "/kong",\r
1079                                                                         Name:      "custom-nginx-template-volume",\r
1080                                                                         ReadOnly:  false,\r
1081                                                                 },\r
1082                                                         },\r
1083                                                         Env: []corev1.EnvVar{\r
1084 \r
1085                                                                 corev1.EnvVar{\r
1086                                                                         Name:  "KONG_LUA_PACKAGE_PATH",\r
1087                                                                         Value: "/opt/?.lua;;",\r
1088                                                                 },\r
1089                                                                 corev1.EnvVar{\r
1090                                                                         Name:  "KONG_ADMIN_LISTEN",\r
1091                                                                         Value: "0.0.0.0:8444 ssl",\r
1092                                                                 },\r
1093                                                                 corev1.EnvVar{\r
1094                                                                         Name:  "KONG_PROXY_LISTEN",\r
1095                                                                         Value: "0.0.0.0:32080,0.0.0.0:32443 ssl",\r
1096                                                                 },\r
1097                                                                 corev1.EnvVar{\r
1098                                                                         Name:  "KONG_NGINX_DAEMON",\r
1099                                                                         Value: "off",\r
1100                                                                 },\r
1101                                                                 corev1.EnvVar{\r
1102                                                                         Name:  "KONG_NGINX_HTTP_INCLUDE",\r
1103                                                                         Value: "/kong/servers.conf",\r
1104                                                                 },\r
1105                                                                 corev1.EnvVar{\r
1106                                                                         Name:  "KONG_PLUGINS",\r
1107                                                                         Value: "bundled",\r
1108                                                                 },\r
1109                                                                 corev1.EnvVar{\r
1110                                                                         Name:  "KONG_ADMIN_ACCESS_LOG",\r
1111                                                                         Value: "/dev/stdout",\r
1112                                                                 },\r
1113                                                                 corev1.EnvVar{\r
1114                                                                         Name:  "KONG_ADMIN_ERROR_LOG",\r
1115                                                                         Value: "/dev/stderr",\r
1116                                                                 },\r
1117                                                                 corev1.EnvVar{\r
1118                                                                         Name:  "KONG_ADMIN_GUI_ACCESS_LOG",\r
1119                                                                         Value: "/dev/stdout",\r
1120                                                                 },\r
1121                                                                 corev1.EnvVar{\r
1122                                                                         Name:  "KONG_ADMIN_GUI_ERROR_LOG",\r
1123                                                                         Value: "/dev/stderr",\r
1124                                                                 },\r
1125                                                                 corev1.EnvVar{\r
1126                                                                         Name:  "KONG_DATABASE",\r
1127                                                                         Value: "off",\r
1128                                                                 },\r
1129                                                                 corev1.EnvVar{\r
1130                                                                         Name:  "KONG_NGINX_WORKER_PROCESSES",\r
1131                                                                         Value: "1",\r
1132                                                                 },\r
1133                                                                 corev1.EnvVar{\r
1134                                                                         Name:  "KONG_PORTAL_API_ACCESS_LOG",\r
1135                                                                         Value: "/dev/stdout",\r
1136                                                                 },\r
1137                                                                 corev1.EnvVar{\r
1138                                                                         Name:  "KONG_PORTAL_API_ERROR_LOG",\r
1139                                                                         Value: "/dev/stderr",\r
1140                                                                 },\r
1141                                                                 corev1.EnvVar{\r
1142                                                                         Name:  "KONG_PREFIX",\r
1143                                                                         Value: "/kong_prefix/",\r
1144                                                                 },\r
1145                                                                 corev1.EnvVar{\r
1146                                                                         Name:  "KONG_PROXY_ACCESS_LOG",\r
1147                                                                         Value: "/dev/stdout",\r
1148                                                                 },\r
1149                                                                 corev1.EnvVar{\r
1150                                                                         Name:  "KONG_PROXY_ERROR_LOG",\r
1151                                                                         Value: "/dev/stderr",\r
1152                                                                 },\r
1153                                                         },\r
1154                                                         Image: "kong:1.4",\r
1155                                                         LivenessProbe: &corev1.Probe{\r
1156                                                                 FailureThreshold:    3,\r
1157                                                                 InitialDelaySeconds: 5,\r
1158                                                                 PeriodSeconds:       10,\r
1159                                                                 ProbeHandler: corev1.ProbeHandler{\r
1160                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1161                                                                                 Path: "/status",\r
1162                                                                                 Port: intstr.IntOrString{\r
1163                                                                                         StrVal: "metrics",\r
1164                                                                                         Type:   intstr.Type(1),\r
1165                                                                                 },\r
1166                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1167                                                                         },\r
1168                                                                 },\r
1169                                                                 SuccessThreshold: 1,\r
1170                                                                 TimeoutSeconds:   5,\r
1171                                                         },\r
1172                                                         Ports: []corev1.ContainerPort{\r
1173 \r
1174                                                                 corev1.ContainerPort{\r
1175                                                                         ContainerPort: 8444,\r
1176                                                                         Name:          "admin",\r
1177                                                                         Protocol:      corev1.Protocol("TCP"),\r
1178                                                                 },\r
1179                                                                 corev1.ContainerPort{\r
1180                                                                         Protocol:      corev1.Protocol("TCP"),\r
1181                                                                         ContainerPort: 32080,\r
1182                                                                         Name:          "proxy",\r
1183                                                                 },\r
1184                                                                 corev1.ContainerPort{\r
1185                                                                         ContainerPort: 32443,\r
1186                                                                         Name:          "proxy-tls",\r
1187                                                                         Protocol:      corev1.Protocol("TCP"),\r
1188                                                                 },\r
1189                                                                 corev1.ContainerPort{\r
1190                                                                         ContainerPort: 9542,\r
1191                                                                         Name:          "metrics",\r
1192                                                                         Protocol:      corev1.Protocol("TCP"),\r
1193                                                                 },\r
1194                                                         },\r
1195                                                         ReadinessProbe: &corev1.Probe{\r
1196                                                                 TimeoutSeconds:      5,\r
1197                                                                 FailureThreshold:    3,\r
1198                                                                 InitialDelaySeconds: 5,\r
1199                                                                 PeriodSeconds:       10,\r
1200                                                                 ProbeHandler: corev1.ProbeHandler{\r
1201                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1202                                                                                 Path: "/status",\r
1203                                                                                 Port: intstr.IntOrString{\r
1204                                                                                         StrVal: "metrics",\r
1205                                                                                         Type:   intstr.Type(1),\r
1206                                                                                 },\r
1207                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1208                                                                         },\r
1209                                                                 },\r
1210                                                                 SuccessThreshold: 1,\r
1211                                                         },\r
1212                                                 },\r
1213                                         },\r
1214                                         HostIPC:     false,\r
1215                                         HostNetwork: false,\r
1216                                         HostPID:     false,\r
1217                                         SecurityContext: &corev1.PodSecurityContext{\r
1218                                                 RunAsUser: int64Ptr(1000),\r
1219                                         },\r
1220                                 },\r
1221                         },\r
1222                 },\r
1223         }\r
1224 \r
1225         deployment7 := &appsv1.Deployment{\r
1226                 TypeMeta: metav1.TypeMeta{\r
1227                         APIVersion: "apps/v1",\r
1228                         Kind:       "Deployment",\r
1229                 },\r
1230                 ObjectMeta: metav1.ObjectMeta{\r
1231                         Labels: map[string]string{\r
1232                                 "app":  "helm",\r
1233                                 "name": "tiller",\r
1234                         },\r
1235                         Name:      "deployment-tiller-ricxapp",\r
1236                         Namespace: "ricinfra",\r
1237                 },\r
1238                 Spec: appsv1.DeploymentSpec{\r
1239                         Paused:   false,\r
1240                         Replicas: int32Ptr(1),\r
1241                         Selector: &metav1.LabelSelector{\r
1242                                 MatchLabels: map[string]string{\r
1243                                         "app":  "helm",\r
1244                                         "name": "tiller",\r
1245                                 },\r
1246                         },\r
1247                         Template: corev1.PodTemplateSpec{\r
1248                                 ObjectMeta: metav1.ObjectMeta{\r
1249                                         Labels: map[string]string{\r
1250                                                 "app":  "helm",\r
1251                                                 "name": "tiller",\r
1252                                         },\r
1253                                 },\r
1254                                 Spec: corev1.PodSpec{\r
1255                                         ServiceAccountName: "svcacct-tiller-ricxapp",\r
1256                                         Volumes: []corev1.Volume{\r
1257 \r
1258                                                 corev1.Volume{\r
1259                                                         Name: "tiller-certs",\r
1260                                                         VolumeSource: corev1.VolumeSource{\r
1261                                                                 Secret: &corev1.SecretVolumeSource{\r
1262                                                                         SecretName: "ricxapp-tiller-secret",\r
1263                                                                 },\r
1264                                                         },\r
1265                                                 },\r
1266                                         },\r
1267                                         AutomountServiceAccountToken: boolPtr(true),\r
1268                                         Containers: []corev1.Container{\r
1269 \r
1270                                                 corev1.Container{\r
1271                                                         Env: []corev1.EnvVar{\r
1272 \r
1273                                                                 corev1.EnvVar{\r
1274                                                                         Name:  "TILLER_NAMESPACE",\r
1275                                                                         Value: "ricinfra",\r
1276                                                                 },\r
1277                                                                 corev1.EnvVar{\r
1278                                                                         Name:  "TILLER_HISTORY_MAX",\r
1279                                                                         Value: "0",\r
1280                                                                 },\r
1281                                                                 corev1.EnvVar{\r
1282                                                                         Name:  "TILLER_TLS_VERIFY",\r
1283                                                                         Value: "1",\r
1284                                                                 },\r
1285                                                                 corev1.EnvVar{\r
1286                                                                         Name:  "TILLER_TLS_ENABLE",\r
1287                                                                         Value: "1",\r
1288                                                                 },\r
1289                                                                 corev1.EnvVar{\r
1290                                                                         Name:  "TILLER_TLS_CERTS",\r
1291                                                                         Value: "/etc/certs",\r
1292                                                                 },\r
1293                                                         },\r
1294                                                         Image: "ghcr.io/helm/tiller:v2.16.12",\r
1295                                                         LivenessProbe: &corev1.Probe{\r
1296                                                                 InitialDelaySeconds: 1,\r
1297                                                                 ProbeHandler: corev1.ProbeHandler{\r
1298                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1299                                                                                 Path: "/liveness",\r
1300                                                                                 Port: intstr.IntOrString{\r
1301                                                                                         IntVal: 44135,\r
1302                                                                                 },\r
1303                                                                         },\r
1304                                                                 },\r
1305                                                                 TimeoutSeconds: 1,\r
1306                                                         },\r
1307                                                         Name: "tiller",\r
1308                                                         ReadinessProbe: &corev1.Probe{\r
1309                                                                 InitialDelaySeconds: 1,\r
1310                                                                 ProbeHandler: corev1.ProbeHandler{\r
1311                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1312                                                                                 Path: "/readiness",\r
1313                                                                                 Port: intstr.IntOrString{\r
1314                                                                                         IntVal: 44135,\r
1315                                                                                 },\r
1316                                                                         },\r
1317                                                                 },\r
1318                                                                 TimeoutSeconds: 1,\r
1319                                                         },\r
1320                                                         Stdin: false,\r
1321                                                         VolumeMounts: []corev1.VolumeMount{\r
1322 \r
1323                                                                 corev1.VolumeMount{\r
1324                                                                         ReadOnly:  true,\r
1325                                                                         MountPath: "/etc/certs",\r
1326                                                                         Name:      "tiller-certs",\r
1327                                                                 },\r
1328                                                         },\r
1329                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1330                                                         Ports: []corev1.ContainerPort{\r
1331 \r
1332                                                                 corev1.ContainerPort{\r
1333                                                                         ContainerPort: 44134,\r
1334                                                                         Name:          "tiller",\r
1335                                                                 },\r
1336                                                                 corev1.ContainerPort{\r
1337                                                                         Name:          "http",\r
1338                                                                         ContainerPort: 44135,\r
1339                                                                 },\r
1340                                                         },\r
1341                                                         StdinOnce: false,\r
1342                                                         TTY:       false,\r
1343                                                 },\r
1344                                         },\r
1345                                         HostIPC:     false,\r
1346                                         HostNetwork: false,\r
1347                                         HostPID:     false,\r
1348                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
1349 \r
1350                                                 corev1.LocalObjectReference{\r
1351                                                         Name: "secret-ghcr-io",\r
1352                                                 },\r
1353                                         },\r
1354                                 },\r
1355                         },\r
1356                 },\r
1357         }\r
1358 \r
1359         deployment8 := &appsv1.Deployment{\r
1360                 ObjectMeta: metav1.ObjectMeta{\r
1361                         Labels: map[string]string{\r
1362                                 "app":      "ricplt-jaegeradapter",\r
1363                                 "chart":    "jaegeradapter-3.0.0",\r
1364                                 "heritage": "Helm",\r
1365                                 "release":  "release-name",\r
1366                         },\r
1367                         Name:      "deployment-ricplt-jaegeradapter",\r
1368                         Namespace: "ricplt",\r
1369                 },\r
1370                 Spec: appsv1.DeploymentSpec{\r
1371                         Replicas: int32Ptr(1),\r
1372                         Selector: &metav1.LabelSelector{\r
1373                                 MatchLabels: map[string]string{\r
1374                                         "app":     "ricplt-jaegeradapter",\r
1375                                         "release": "release-name",\r
1376                                 },\r
1377                         },\r
1378                         Template: corev1.PodTemplateSpec{\r
1379                                 Spec: corev1.PodSpec{\r
1380                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
1381 \r
1382                                                 corev1.LocalObjectReference{\r
1383                                                         Name: "secret-docker-io",\r
1384                                                 },\r
1385                                         },\r
1386                                         Containers: []corev1.Container{\r
1387 \r
1388                                                 corev1.Container{\r
1389                                                         EnvFrom: []corev1.EnvFromSource{\r
1390 \r
1391                                                                 corev1.EnvFromSource{\r
1392                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
1393                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
1394                                                                                         Name: "configmap-ricplt-jaegeradapter",\r
1395                                                                                 },\r
1396                                                                         },\r
1397                                                                 },\r
1398                                                         },\r
1399                                                         Image: "docker.io/jaegertracing/all-in-one:1.12",\r
1400                                                         LivenessProbe: &corev1.Probe{\r
1401                                                                 ProbeHandler: corev1.ProbeHandler{\r
1402                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1403                                                                                 Path: "/",\r
1404                                                                                 Port: intstr.IntOrString{\r
1405                                                                                         IntVal: 16686,\r
1406                                                                                 },\r
1407                                                                         },\r
1408                                                                 },\r
1409                                                         },\r
1410                                                         TTY:             false,\r
1411                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1412                                                         Name:            "container-ricplt-jaegeradapter",\r
1413                                                         Ports: []corev1.ContainerPort{\r
1414 \r
1415                                                                 corev1.ContainerPort{\r
1416                                                                         ContainerPort: 5775,\r
1417                                                                         Name:          "zipkincompact",\r
1418                                                                         Protocol:      corev1.Protocol("UDP"),\r
1419                                                                 },\r
1420                                                                 corev1.ContainerPort{\r
1421                                                                         Name:          "jaegercompact",\r
1422                                                                         Protocol:      corev1.Protocol("UDP"),\r
1423                                                                         ContainerPort: 6831,\r
1424                                                                 },\r
1425                                                                 corev1.ContainerPort{\r
1426                                                                         ContainerPort: 6832,\r
1427                                                                         Name:          "jaegerbinary",\r
1428                                                                         Protocol:      corev1.Protocol("UDP"),\r
1429                                                                 },\r
1430                                                                 corev1.ContainerPort{\r
1431                                                                         Protocol:      corev1.Protocol("TCP"),\r
1432                                                                         ContainerPort: 16686,\r
1433                                                                         Name:          "httpquery",\r
1434                                                                 },\r
1435                                                                 corev1.ContainerPort{\r
1436                                                                         ContainerPort: 5778,\r
1437                                                                         Name:          "httpconfig",\r
1438                                                                         Protocol:      corev1.Protocol("TCP"),\r
1439                                                                 },\r
1440                                                                 corev1.ContainerPort{\r
1441                                                                         ContainerPort: 9411,\r
1442                                                                         Name:          "zipkinhttp",\r
1443                                                                         Protocol:      corev1.Protocol("TCP"),\r
1444                                                                 },\r
1445                                                                 corev1.ContainerPort{\r
1446                                                                         Protocol:      corev1.Protocol("TCP"),\r
1447                                                                         ContainerPort: 14268,\r
1448                                                                         Name:          "jaegerhttp",\r
1449                                                                 },\r
1450                                                                 corev1.ContainerPort{\r
1451                                                                         ContainerPort: 14267,\r
1452                                                                         Name:          "jaegerhttpt",\r
1453                                                                         Protocol:      corev1.Protocol("TCP"),\r
1454                                                                 },\r
1455                                                         },\r
1456                                                         ReadinessProbe: &corev1.Probe{\r
1457                                                                 InitialDelaySeconds: 5,\r
1458                                                                 ProbeHandler: corev1.ProbeHandler{\r
1459                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1460                                                                                 Path: "/",\r
1461                                                                                 Port: intstr.IntOrString{\r
1462                                                                                         IntVal: 16686,\r
1463                                                                                 },\r
1464                                                                         },\r
1465                                                                 },\r
1466                                                         },\r
1467                                                         Stdin:     false,\r
1468                                                         StdinOnce: false,\r
1469                                                 },\r
1470                                         },\r
1471                                         HostIPC:     false,\r
1472                                         HostNetwork: false,\r
1473                                         HostPID:     false,\r
1474                                         Hostname:    "jaegeradapter",\r
1475                                 },\r
1476                                 ObjectMeta: metav1.ObjectMeta{\r
1477                                         Labels: map[string]string{\r
1478                                                 "app":     "ricplt-jaegeradapter",\r
1479                                                 "release": "release-name",\r
1480                                         },\r
1481                                 },\r
1482                         },\r
1483                         Paused: false,\r
1484                 },\r
1485                 TypeMeta: metav1.TypeMeta{\r
1486                         APIVersion: "apps/v1",\r
1487                         Kind:       "Deployment",\r
1488                 },\r
1489         }\r
1490 \r
1491         deployment9 := &appsv1.Deployment{\r
1492                 TypeMeta: metav1.TypeMeta{\r
1493                         APIVersion: "apps/v1",\r
1494                         Kind:       "Deployment",\r
1495                 },\r
1496                 ObjectMeta: metav1.ObjectMeta{\r
1497                         Labels: map[string]string{\r
1498                                 "app.kubernetes.io/component":  "app",\r
1499                                 "app.kubernetes.io/instance":   "release-name",\r
1500                                 "app.kubernetes.io/managed-by": "Helm",\r
1501                                 "app.kubernetes.io/name":       "kong",\r
1502                                 "app.kubernetes.io/version":    "1.4",\r
1503                                 "helm.sh/chart":                "kong-0.36.6",\r
1504                         },\r
1505                         Name: "release-name-kong",\r
1506                 },\r
1507                 Spec: appsv1.DeploymentSpec{\r
1508                         Paused:   false,\r
1509                         Replicas: int32Ptr(1),\r
1510                         Selector: &metav1.LabelSelector{\r
1511                                 MatchLabels: map[string]string{\r
1512                                         "app.kubernetes.io/component": "app",\r
1513                                         "app.kubernetes.io/instance":  "release-name",\r
1514                                         "app.kubernetes.io/name":      "kong",\r
1515                                 },\r
1516                         },\r
1517                         Template: corev1.PodTemplateSpec{\r
1518                                 ObjectMeta: metav1.ObjectMeta{\r
1519                                         Labels: map[string]string{\r
1520                                                 "app.kubernetes.io/version":    "1.4",\r
1521                                                 "helm.sh/chart":                "kong-0.36.6",\r
1522                                                 "app.kubernetes.io/component":  "app",\r
1523                                                 "app.kubernetes.io/instance":   "release-name",\r
1524                                                 "app.kubernetes.io/managed-by": "Helm",\r
1525                                                 "app.kubernetes.io/name":       "kong",\r
1526                                         },\r
1527                                 },\r
1528                                 Spec: corev1.PodSpec{\r
1529                                         Volumes: []corev1.Volume{\r
1530 \r
1531                                                 corev1.Volume{\r
1532                                                         Name: "release-name-kong-prefix-dir",\r
1533                                                 },\r
1534                                                 corev1.Volume{\r
1535                                                         Name: "release-name-kong-tmp",\r
1536                                                 },\r
1537                                                 corev1.Volume{\r
1538                                                         Name: "custom-nginx-template-volume",\r
1539                                                         VolumeSource: corev1.VolumeSource{\r
1540                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
1541                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
1542                                                                                 Name: "release-name-kong-default-custom-server-blocks",\r
1543                                                                         },\r
1544                                                                 },\r
1545                                                         },\r
1546                                                 },\r
1547                                         },\r
1548                                         Containers: []corev1.Container{\r
1549 \r
1550                                                 corev1.Container{\r
1551                                                         TTY: false,\r
1552                                                         Args: []string{\r
1553 \r
1554                                                                 "/kong-ingress-controller",\r
1555                                                                 "--publish-service=ricplt/release-name-kong-proxy",\r
1556                                                                 "--ingress-class=kong",\r
1557                                                                 "--election-id=kong-ingress-controller-leader-kong",\r
1558                                                                 "--kong-url=https://localhost:8444",\r
1559                                                                 "--admin-tls-skip-verify",\r
1560                                                         },\r
1561                                                         Image:           "kong/kubernetes-ingress-controller:0.7.0",\r
1562                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1563                                                         Name:            "ingress-controller",\r
1564                                                         ReadinessProbe: &corev1.Probe{\r
1565                                                                 FailureThreshold:    3,\r
1566                                                                 InitialDelaySeconds: 5,\r
1567                                                                 PeriodSeconds:       10,\r
1568                                                                 ProbeHandler: corev1.ProbeHandler{\r
1569                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1570                                                                                 Path: "/healthz",\r
1571                                                                                 Port: intstr.IntOrString{\r
1572                                                                                         IntVal: 10254,\r
1573                                                                                 },\r
1574                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1575                                                                         },\r
1576                                                                 },\r
1577                                                                 SuccessThreshold: 1,\r
1578                                                                 TimeoutSeconds:   5,\r
1579                                                         },\r
1580                                                         StdinOnce: false,\r
1581                                                         Env: []corev1.EnvVar{\r
1582 \r
1583                                                                 corev1.EnvVar{\r
1584                                                                         Name: "POD_NAME",\r
1585                                                                         ValueFrom: &corev1.EnvVarSource{\r
1586                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
1587                                                                                         FieldPath:  "metadata.name",\r
1588                                                                                         APIVersion: "v1",\r
1589                                                                                 },\r
1590                                                                         },\r
1591                                                                 },\r
1592                                                                 corev1.EnvVar{\r
1593                                                                         Name: "POD_NAMESPACE",\r
1594                                                                         ValueFrom: &corev1.EnvVarSource{\r
1595                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
1596                                                                                         APIVersion: "v1",\r
1597                                                                                         FieldPath:  "metadata.namespace",\r
1598                                                                                 },\r
1599                                                                         },\r
1600                                                                 },\r
1601                                                         },\r
1602                                                         LivenessProbe: &corev1.Probe{\r
1603                                                                 SuccessThreshold:    1,\r
1604                                                                 TimeoutSeconds:      5,\r
1605                                                                 FailureThreshold:    3,\r
1606                                                                 InitialDelaySeconds: 5,\r
1607                                                                 PeriodSeconds:       10,\r
1608                                                                 ProbeHandler: corev1.ProbeHandler{\r
1609                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1610                                                                                 Path: "/healthz",\r
1611                                                                                 Port: intstr.IntOrString{\r
1612                                                                                         IntVal: 10254,\r
1613                                                                                 },\r
1614                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1615                                                                         },\r
1616                                                                 },\r
1617                                                         },\r
1618                                                         Stdin: false,\r
1619                                                 },\r
1620                                                 corev1.Container{\r
1621                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1622                                                         Lifecycle: &corev1.Lifecycle{\r
1623                                                                 PreStop: &corev1.LifecycleHandler{\r
1624                                                                         Exec: &corev1.ExecAction{\r
1625                                                                                 Command: []string{\r
1626 \r
1627                                                                                         "/bin/sh",\r
1628                                                                                         "-c",\r
1629                                                                                         "kong quit",\r
1630                                                                                 },\r
1631                                                                         },\r
1632                                                                 },\r
1633                                                         },\r
1634                                                         Stdin:     false,\r
1635                                                         StdinOnce: false,\r
1636                                                         Image:     "kong:1.4",\r
1637                                                         LivenessProbe: &corev1.Probe{\r
1638                                                                 FailureThreshold:    3,\r
1639                                                                 InitialDelaySeconds: 5,\r
1640                                                                 PeriodSeconds:       10,\r
1641                                                                 ProbeHandler: corev1.ProbeHandler{\r
1642                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1643                                                                                 Path: "/status",\r
1644                                                                                 Port: intstr.IntOrString{\r
1645                                                                                         StrVal: "metrics",\r
1646                                                                                         Type:   intstr.Type(1),\r
1647                                                                                 },\r
1648                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1649                                                                         },\r
1650                                                                 },\r
1651                                                                 SuccessThreshold: 1,\r
1652                                                                 TimeoutSeconds:   5,\r
1653                                                         },\r
1654                                                         Name: "proxy",\r
1655                                                         Ports: []corev1.ContainerPort{\r
1656 \r
1657                                                                 corev1.ContainerPort{\r
1658                                                                         ContainerPort: 8444,\r
1659                                                                         Name:          "admin",\r
1660                                                                         Protocol:      corev1.Protocol("TCP"),\r
1661                                                                 },\r
1662                                                                 corev1.ContainerPort{\r
1663                                                                         Protocol:      corev1.Protocol("TCP"),\r
1664                                                                         ContainerPort: 32080,\r
1665                                                                         Name:          "proxy",\r
1666                                                                 },\r
1667                                                                 corev1.ContainerPort{\r
1668                                                                         ContainerPort: 32443,\r
1669                                                                         Name:          "proxy-tls",\r
1670                                                                         Protocol:      corev1.Protocol("TCP"),\r
1671                                                                 },\r
1672                                                                 corev1.ContainerPort{\r
1673                                                                         ContainerPort: 9542,\r
1674                                                                         Name:          "metrics",\r
1675                                                                         Protocol:      corev1.Protocol("TCP"),\r
1676                                                                 },\r
1677                                                         },\r
1678                                                         ReadinessProbe: &corev1.Probe{\r
1679                                                                 SuccessThreshold:    1,\r
1680                                                                 TimeoutSeconds:      5,\r
1681                                                                 FailureThreshold:    3,\r
1682                                                                 InitialDelaySeconds: 5,\r
1683                                                                 PeriodSeconds:       10,\r
1684                                                                 ProbeHandler: corev1.ProbeHandler{\r
1685                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1686                                                                                 Path: "/status",\r
1687                                                                                 Port: intstr.IntOrString{\r
1688                                                                                         StrVal: "metrics",\r
1689                                                                                         Type:   intstr.Type(1),\r
1690                                                                                 },\r
1691                                                                                 Scheme: corev1.URIScheme("HTTP"),\r
1692                                                                         },\r
1693                                                                 },\r
1694                                                         },\r
1695                                                         TTY: false,\r
1696                                                         VolumeMounts: []corev1.VolumeMount{\r
1697 \r
1698                                                                 corev1.VolumeMount{\r
1699                                                                         MountPath: "/kong_prefix/",\r
1700                                                                         Name:      "release-name-kong-prefix-dir",\r
1701                                                                         ReadOnly:  false,\r
1702                                                                 },\r
1703                                                                 corev1.VolumeMount{\r
1704                                                                         MountPath: "/tmp",\r
1705                                                                         Name:      "release-name-kong-tmp",\r
1706                                                                         ReadOnly:  false,\r
1707                                                                 },\r
1708                                                                 corev1.VolumeMount{\r
1709                                                                         MountPath: "/kong",\r
1710                                                                         Name:      "custom-nginx-template-volume",\r
1711                                                                         ReadOnly:  false,\r
1712                                                                 },\r
1713                                                         },\r
1714                                                         Env: []corev1.EnvVar{\r
1715 \r
1716                                                                 corev1.EnvVar{\r
1717                                                                         Name:  "KONG_LUA_PACKAGE_PATH",\r
1718                                                                         Value: "/opt/?.lua;;",\r
1719                                                                 },\r
1720                                                                 corev1.EnvVar{\r
1721                                                                         Name:  "KONG_ADMIN_LISTEN",\r
1722                                                                         Value: "0.0.0.0:8444 ssl",\r
1723                                                                 },\r
1724                                                                 corev1.EnvVar{\r
1725                                                                         Name:  "KONG_PROXY_LISTEN",\r
1726                                                                         Value: "0.0.0.0:32080,0.0.0.0:32443 ssl",\r
1727                                                                 },\r
1728                                                                 corev1.EnvVar{\r
1729                                                                         Name:  "KONG_NGINX_DAEMON",\r
1730                                                                         Value: "off",\r
1731                                                                 },\r
1732                                                                 corev1.EnvVar{\r
1733                                                                         Value: "/kong/servers.conf",\r
1734                                                                         Name:  "KONG_NGINX_HTTP_INCLUDE",\r
1735                                                                 },\r
1736                                                                 corev1.EnvVar{\r
1737                                                                         Name:  "KONG_PLUGINS",\r
1738                                                                         Value: "bundled",\r
1739                                                                 },\r
1740                                                                 corev1.EnvVar{\r
1741                                                                         Name:  "KONG_ADMIN_ACCESS_LOG",\r
1742                                                                         Value: "/dev/stdout",\r
1743                                                                 },\r
1744                                                                 corev1.EnvVar{\r
1745                                                                         Name:  "KONG_ADMIN_ERROR_LOG",\r
1746                                                                         Value: "/dev/stderr",\r
1747                                                                 },\r
1748                                                                 corev1.EnvVar{\r
1749                                                                         Name:  "KONG_ADMIN_GUI_ACCESS_LOG",\r
1750                                                                         Value: "/dev/stdout",\r
1751                                                                 },\r
1752                                                                 corev1.EnvVar{\r
1753                                                                         Name:  "KONG_ADMIN_GUI_ERROR_LOG",\r
1754                                                                         Value: "/dev/stderr",\r
1755                                                                 },\r
1756                                                                 corev1.EnvVar{\r
1757                                                                         Name:  "KONG_DATABASE",\r
1758                                                                         Value: "off",\r
1759                                                                 },\r
1760                                                                 corev1.EnvVar{\r
1761                                                                         Name:  "KONG_NGINX_WORKER_PROCESSES",\r
1762                                                                         Value: "1",\r
1763                                                                 },\r
1764                                                                 corev1.EnvVar{\r
1765                                                                         Name:  "KONG_PORTAL_API_ACCESS_LOG",\r
1766                                                                         Value: "/dev/stdout",\r
1767                                                                 },\r
1768                                                                 corev1.EnvVar{\r
1769                                                                         Name:  "KONG_PORTAL_API_ERROR_LOG",\r
1770                                                                         Value: "/dev/stderr",\r
1771                                                                 },\r
1772                                                                 corev1.EnvVar{\r
1773                                                                         Name:  "KONG_PREFIX",\r
1774                                                                         Value: "/kong_prefix/",\r
1775                                                                 },\r
1776                                                                 corev1.EnvVar{\r
1777                                                                         Value: "/dev/stdout",\r
1778                                                                         Name:  "KONG_PROXY_ACCESS_LOG",\r
1779                                                                 },\r
1780                                                                 corev1.EnvVar{\r
1781                                                                         Name:  "KONG_PROXY_ERROR_LOG",\r
1782                                                                         Value: "/dev/stderr",\r
1783                                                                 },\r
1784                                                         },\r
1785                                                 },\r
1786                                         },\r
1787                                         HostIPC:     false,\r
1788                                         HostNetwork: false,\r
1789                                         HostPID:     false,\r
1790                                         SecurityContext: &corev1.PodSecurityContext{\r
1791                                                 RunAsUser: int64Ptr(1000),\r
1792                                         },\r
1793                                         ServiceAccountName: "release-name-kong",\r
1794                                 },\r
1795                         },\r
1796                 },\r
1797         }\r
1798 \r
1799         deployment10 := &appsv1.Deployment{\r
1800                 TypeMeta: metav1.TypeMeta{\r
1801                         APIVersion: "apps/v1",\r
1802                         Kind:       "Deployment",\r
1803                 },\r
1804                 ObjectMeta: metav1.ObjectMeta{\r
1805                         Labels: map[string]string{\r
1806                                 "chart":    "o1mediator-3.0.0",\r
1807                                 "heritage": "Helm",\r
1808                                 "release":  "release-name",\r
1809                                 "app":      "ricplt-o1mediator",\r
1810                         },\r
1811                         Name:      "deployment-ricplt-o1mediator",\r
1812                         Namespace: "ricplt",\r
1813                 },\r
1814                 Spec: appsv1.DeploymentSpec{\r
1815                         Paused:   false,\r
1816                         Replicas: int32Ptr(1),\r
1817                         Selector: &metav1.LabelSelector{\r
1818                                 MatchLabels: map[string]string{\r
1819                                         "app":     "ricplt-o1mediator",\r
1820                                         "release": "release-name",\r
1821                                 },\r
1822                         },\r
1823                         Template: corev1.PodTemplateSpec{\r
1824                                 ObjectMeta: metav1.ObjectMeta{\r
1825                                         Labels: map[string]string{\r
1826                                                 "app":     "ricplt-o1mediator",\r
1827                                                 "release": "release-name",\r
1828                                         },\r
1829                                 },\r
1830                                 Spec: corev1.PodSpec{\r
1831                                         Volumes: []corev1.Volume{\r
1832 \r
1833                                                 corev1.Volume{\r
1834                                                         Name: "appconfig-file",\r
1835                                                         VolumeSource: corev1.VolumeSource{\r
1836                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
1837                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
1838                                                                                 Name: "configmap-ricplt-o1mediator-appconfig-configmap",\r
1839                                                                         },\r
1840                                                                 },\r
1841                                                         },\r
1842                                                 },\r
1843                                         },\r
1844                                         Containers: []corev1.Container{\r
1845 \r
1846                                                 corev1.Container{\r
1847                                                         Ports: []corev1.ContainerPort{\r
1848 \r
1849                                                                 corev1.ContainerPort{\r
1850                                                                         ContainerPort: 9001,\r
1851                                                                         Name:          "http-supervise",\r
1852                                                                         Protocol:      corev1.Protocol("TCP"),\r
1853                                                                 },\r
1854                                                                 corev1.ContainerPort{\r
1855                                                                         ContainerPort: 8080,\r
1856                                                                         Name:          "http-mediation",\r
1857                                                                         Protocol:      corev1.Protocol("TCP"),\r
1858                                                                 },\r
1859                                                                 corev1.ContainerPort{\r
1860                                                                         ContainerPort: 3000,\r
1861                                                                         Name:          "http-event",\r
1862                                                                         Protocol:      corev1.Protocol("TCP"),\r
1863                                                                 },\r
1864                                                         },\r
1865                                                         EnvFrom: []corev1.EnvFromSource{\r
1866 \r
1867                                                                 corev1.EnvFromSource{\r
1868                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
1869                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
1870                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
1871                                                                                 },\r
1872                                                                         },\r
1873                                                                 },\r
1874                                                                 corev1.EnvFromSource{\r
1875                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
1876                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
1877                                                                                         Name: "configmap-ricplt-o1mediator-env",\r
1878                                                                                 },\r
1879                                                                         },\r
1880                                                                 },\r
1881                                                         },\r
1882                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1883                                                         Stdin:           false,\r
1884                                                         StdinOnce:       false,\r
1885                                                         TTY:             false,\r
1886                                                         VolumeMounts: []corev1.VolumeMount{\r
1887 \r
1888                                                                 corev1.VolumeMount{\r
1889                                                                         Name:      "appconfig-file",\r
1890                                                                         ReadOnly:  false,\r
1891                                                                         MountPath: "/etc/o1agent",\r
1892                                                                 },\r
1893                                                         },\r
1894                                                         Image: "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-o1:0.3.1",\r
1895                                                         Name:  "container-ricplt-o1mediator",\r
1896                                                 },\r
1897                                         },\r
1898                                         HostIPC:     false,\r
1899                                         HostNetwork: false,\r
1900                                         HostPID:     false,\r
1901                                         Hostname:    "o1mediator",\r
1902                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
1903 \r
1904                                                 corev1.LocalObjectReference{\r
1905                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
1906                                                 },\r
1907                                         },\r
1908                                         ServiceAccountName: "svcacct-ricplt-o1mediator",\r
1909                                 },\r
1910                         },\r
1911                 },\r
1912         }\r
1913 \r
1914         deployment11 := &appsv1.Deployment{\r
1915                 Spec: appsv1.DeploymentSpec{\r
1916                         Paused:   false,\r
1917                         Replicas: int32Ptr(1),\r
1918                         Selector: &metav1.LabelSelector{\r
1919                                 MatchLabels: map[string]string{\r
1920                                         "app":       "prometheus",\r
1921                                         "component": "alertmanager",\r
1922                                         "release":   "release-name",\r
1923                                 },\r
1924                         },\r
1925                         Template: corev1.PodTemplateSpec{\r
1926                                 Spec: corev1.PodSpec{\r
1927                                         Volumes: []corev1.Volume{\r
1928 \r
1929                                                 corev1.Volume{\r
1930                                                         Name: "config-volume",\r
1931                                                         VolumeSource: corev1.VolumeSource{\r
1932                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
1933                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
1934                                                                                 Name: "release-name-prometheus-alertmanager",\r
1935                                                                         },\r
1936                                                                 },\r
1937                                                         },\r
1938                                                 },\r
1939                                                 corev1.Volume{\r
1940                                                         Name: "storage-volume",\r
1941                                                 },\r
1942                                         },\r
1943                                         Containers: []corev1.Container{\r
1944 \r
1945                                                 corev1.Container{\r
1946                                                         Args: []string{\r
1947 \r
1948                                                                 "--config.file=/etc/config/alertmanager.yml",\r
1949                                                                 "--storage.path=/data",\r
1950                                                                 "--cluster.advertise-address=$(POD_IP):6783",\r
1951                                                                 "--web.external-url=http://localhost:9093",\r
1952                                                         },\r
1953                                                         Image: "prom/alertmanager:v0.20.0",\r
1954                                                         Name:  "prometheus-alertmanager",\r
1955                                                         Stdin: false,\r
1956                                                         VolumeMounts: []corev1.VolumeMount{\r
1957 \r
1958                                                                 corev1.VolumeMount{\r
1959                                                                         MountPath: "/etc/config",\r
1960                                                                         Name:      "config-volume",\r
1961                                                                         ReadOnly:  false,\r
1962                                                                 },\r
1963                                                                 corev1.VolumeMount{\r
1964                                                                         MountPath: "/data",\r
1965                                                                         Name:      "storage-volume",\r
1966                                                                         ReadOnly:  false,\r
1967                                                                 },\r
1968                                                         },\r
1969                                                         Env: []corev1.EnvVar{\r
1970 \r
1971                                                                 corev1.EnvVar{\r
1972                                                                         Name: "POD_IP",\r
1973                                                                         ValueFrom: &corev1.EnvVarSource{\r
1974                                                                                 FieldRef: &corev1.ObjectFieldSelector{\r
1975                                                                                         APIVersion: "v1",\r
1976                                                                                         FieldPath:  "status.podIP",\r
1977                                                                                 },\r
1978                                                                         },\r
1979                                                                 },\r
1980                                                         },\r
1981                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
1982                                                         Ports: []corev1.ContainerPort{\r
1983 \r
1984                                                                 corev1.ContainerPort{\r
1985                                                                         ContainerPort: 9093,\r
1986                                                                 },\r
1987                                                         },\r
1988                                                         ReadinessProbe: &corev1.Probe{\r
1989                                                                 InitialDelaySeconds: 30,\r
1990                                                                 ProbeHandler: corev1.ProbeHandler{\r
1991                                                                         HTTPGet: &corev1.HTTPGetAction{\r
1992                                                                                 Path: "/-/ready",\r
1993                                                                                 Port: intstr.IntOrString{\r
1994                                                                                         IntVal: 9093,\r
1995                                                                                 },\r
1996                                                                         },\r
1997                                                                 },\r
1998                                                                 TimeoutSeconds: 30,\r
1999                                                         },\r
2000                                                         StdinOnce: false,\r
2001                                                         TTY:       false,\r
2002                                                 },\r
2003                                                 corev1.Container{\r
2004                                                         Name:      "prometheus-alertmanager-configmap-reload",\r
2005                                                         Stdin:     false,\r
2006                                                         StdinOnce: false,\r
2007                                                         TTY:       false,\r
2008                                                         VolumeMounts: []corev1.VolumeMount{\r
2009 \r
2010                                                                 corev1.VolumeMount{\r
2011                                                                         Name:      "config-volume",\r
2012                                                                         ReadOnly:  true,\r
2013                                                                         MountPath: "/etc/config",\r
2014                                                                 },\r
2015                                                         },\r
2016                                                         Args: []string{\r
2017 \r
2018                                                                 "--volume-dir=/etc/config",\r
2019                                                                 "--webhook-url=http://127.0.0.1:9093/-/reload",\r
2020                                                         },\r
2021                                                         Image:           "jimmidyson/configmap-reload:v0.3.0",\r
2022                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2023                                                 },\r
2024                                         },\r
2025                                         HostIPC:     false,\r
2026                                         HostNetwork: false,\r
2027                                         HostPID:     false,\r
2028                                         SecurityContext: &corev1.PodSecurityContext{\r
2029                                                 FSGroup:      int64Ptr(65534),\r
2030                                                 RunAsGroup:   int64Ptr(65534),\r
2031                                                 RunAsNonRoot: boolPtr(true),\r
2032                                                 RunAsUser:    int64Ptr(65534),\r
2033                                         },\r
2034                                         ServiceAccountName: "release-name-prometheus-alertmanager",\r
2035                                 },\r
2036                                 ObjectMeta: metav1.ObjectMeta{\r
2037                                         Labels: map[string]string{\r
2038                                                 "app":       "prometheus",\r
2039                                                 "chart":     "prometheus-11.3.0",\r
2040                                                 "component": "alertmanager",\r
2041                                                 "heritage":  "Helm",\r
2042                                                 "release":   "release-name",\r
2043                                         },\r
2044                                 },\r
2045                         },\r
2046                 },\r
2047                 TypeMeta: metav1.TypeMeta{\r
2048                         APIVersion: "apps/v1",\r
2049                         Kind:       "Deployment",\r
2050                 },\r
2051                 ObjectMeta: metav1.ObjectMeta{\r
2052                         Labels: map[string]string{\r
2053                                 "app":       "prometheus",\r
2054                                 "chart":     "prometheus-11.3.0",\r
2055                                 "component": "alertmanager",\r
2056                                 "heritage":  "Helm",\r
2057                                 "release":   "release-name",\r
2058                         },\r
2059                         Name:      "release-name-prometheus-alertmanager",\r
2060                         Namespace: "ricplt",\r
2061                 },\r
2062         }\r
2063 \r
2064         deployment12 := &appsv1.Deployment{\r
2065                 ObjectMeta: metav1.ObjectMeta{\r
2066                         Name:      "release-name-prometheus-server",\r
2067                         Namespace: "ricplt",\r
2068                         Labels: map[string]string{\r
2069                                 "app":       "prometheus",\r
2070                                 "chart":     "prometheus-11.3.0",\r
2071                                 "component": "server",\r
2072                                 "heritage":  "Helm",\r
2073                                 "release":   "release-name",\r
2074                         },\r
2075                 },\r
2076                 Spec: appsv1.DeploymentSpec{\r
2077                         Paused:   false,\r
2078                         Replicas: int32Ptr(1),\r
2079                         Selector: &metav1.LabelSelector{\r
2080                                 MatchLabels: map[string]string{\r
2081                                         "app":       "prometheus",\r
2082                                         "component": "server",\r
2083                                         "release":   "release-name",\r
2084                                 },\r
2085                         },\r
2086                         Template: corev1.PodTemplateSpec{\r
2087                                 ObjectMeta: metav1.ObjectMeta{\r
2088                                         Labels: map[string]string{\r
2089                                                 "release":   "release-name",\r
2090                                                 "app":       "prometheus",\r
2091                                                 "chart":     "prometheus-11.3.0",\r
2092                                                 "component": "server",\r
2093                                                 "heritage":  "Helm",\r
2094                                         },\r
2095                                 },\r
2096                                 Spec: corev1.PodSpec{\r
2097                                         HostNetwork: false,\r
2098                                         HostPID:     false,\r
2099                                         SecurityContext: &corev1.PodSecurityContext{\r
2100                                                 FSGroup:      int64Ptr(65534),\r
2101                                                 RunAsGroup:   int64Ptr(65534),\r
2102                                                 RunAsNonRoot: boolPtr(true),\r
2103                                                 RunAsUser:    int64Ptr(65534),\r
2104                                         },\r
2105                                         ServiceAccountName:            "release-name-prometheus-server",\r
2106                                         TerminationGracePeriodSeconds: int64Ptr(300),\r
2107                                         Volumes: []corev1.Volume{\r
2108 \r
2109                                                 corev1.Volume{\r
2110                                                         Name: "config-volume",\r
2111                                                         VolumeSource: corev1.VolumeSource{\r
2112                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
2113                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
2114                                                                                 Name: "release-name-prometheus-server",\r
2115                                                                         },\r
2116                                                                 },\r
2117                                                         },\r
2118                                                 },\r
2119                                                 corev1.Volume{\r
2120                                                         Name: "storage-volume",\r
2121                                                 },\r
2122                                         },\r
2123                                         Containers: []corev1.Container{\r
2124 \r
2125                                                 corev1.Container{\r
2126                                                         StdinOnce: false,\r
2127                                                         TTY:       false,\r
2128                                                         Image:     "prom/prometheus:v2.18.1",\r
2129                                                         LivenessProbe: &corev1.Probe{\r
2130                                                                 SuccessThreshold:    1,\r
2131                                                                 TimeoutSeconds:      30,\r
2132                                                                 FailureThreshold:    3,\r
2133                                                                 InitialDelaySeconds: 30,\r
2134                                                                 ProbeHandler: corev1.ProbeHandler{\r
2135                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2136                                                                                 Path: "/-/healthy",\r
2137                                                                                 Port: intstr.IntOrString{\r
2138                                                                                         IntVal: 9090,\r
2139                                                                                 },\r
2140                                                                         },\r
2141                                                                 },\r
2142                                                         },\r
2143                                                         Stdin: false,\r
2144                                                         Ports: []corev1.ContainerPort{\r
2145 \r
2146                                                                 corev1.ContainerPort{\r
2147                                                                         ContainerPort: 9090,\r
2148                                                                 },\r
2149                                                         },\r
2150                                                         ReadinessProbe: &corev1.Probe{\r
2151                                                                 FailureThreshold:    3,\r
2152                                                                 InitialDelaySeconds: 30,\r
2153                                                                 ProbeHandler: corev1.ProbeHandler{\r
2154                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2155                                                                                 Path: "/-/ready",\r
2156                                                                                 Port: intstr.IntOrString{\r
2157                                                                                         IntVal: 9090,\r
2158                                                                                 },\r
2159                                                                         },\r
2160                                                                 },\r
2161                                                                 SuccessThreshold: 1,\r
2162                                                                 TimeoutSeconds:   30,\r
2163                                                         },\r
2164                                                         VolumeMounts: []corev1.VolumeMount{\r
2165 \r
2166                                                                 corev1.VolumeMount{\r
2167                                                                         MountPath: "/etc/config",\r
2168                                                                         Name:      "config-volume",\r
2169                                                                         ReadOnly:  false,\r
2170                                                                 },\r
2171                                                                 corev1.VolumeMount{\r
2172                                                                         MountPath: "/data",\r
2173                                                                         Name:      "storage-volume",\r
2174                                                                         ReadOnly:  false,\r
2175                                                                 },\r
2176                                                         },\r
2177                                                         Args: []string{\r
2178 \r
2179                                                                 "--storage.tsdb.retention.time=15d",\r
2180                                                                 "--config.file=/etc/config/prometheus.yml",\r
2181                                                                 "--storage.tsdb.path=/data",\r
2182                                                                 "--web.console.libraries=/etc/prometheus/console_libraries",\r
2183                                                                 "--web.console.templates=/etc/prometheus/consoles",\r
2184                                                                 "--web.enable-lifecycle",\r
2185                                                         },\r
2186                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2187                                                         Name:            "prometheus-server",\r
2188                                                 },\r
2189                                         },\r
2190                                         HostIPC: false,\r
2191                                 },\r
2192                         },\r
2193                 },\r
2194                 TypeMeta: metav1.TypeMeta{\r
2195                         APIVersion: "apps/v1",\r
2196                         Kind:       "Deployment",\r
2197                 },\r
2198         }\r
2199 \r
2200         deployment13 := &appsv1.Deployment{\r
2201                 ObjectMeta: metav1.ObjectMeta{\r
2202                         Labels: map[string]string{\r
2203                                 "chart":   "redis-cluster-0.1.0",\r
2204                                 "release": "release-name",\r
2205                         },\r
2206                         Name:      "assigner-dep",\r
2207                         Namespace: "ricplt",\r
2208                 },\r
2209                 Spec: appsv1.DeploymentSpec{\r
2210                         Template: corev1.PodTemplateSpec{\r
2211                                 ObjectMeta: metav1.ObjectMeta{\r
2212                                         Labels: map[string]string{\r
2213                                                 "app":     "assigner",\r
2214                                                 "release": "release-name",\r
2215                                         },\r
2216                                 },\r
2217                                 Spec: corev1.PodSpec{\r
2218                                         Containers: []corev1.Container{\r
2219 \r
2220                                                 corev1.Container{\r
2221                                                         Image:     "bitnami/kubectl:1.18",\r
2222                                                         Name:      "kubectl",\r
2223                                                         StdinOnce: false,\r
2224                                                         TTY:       false,\r
2225                                                         VolumeMounts: []corev1.VolumeMount{\r
2226 \r
2227                                                                 corev1.VolumeMount{\r
2228                                                                         MountPath: "/conf",\r
2229                                                                         Name:      "conf",\r
2230                                                                         ReadOnly:  false,\r
2231                                                                 },\r
2232                                                         },\r
2233                                                         Args: []string{\r
2234 \r
2235                                                                 "-c",\r
2236                                                                 "sleep 3000",\r
2237                                                         },\r
2238                                                         Env: []corev1.EnvVar{\r
2239 \r
2240                                                                 corev1.EnvVar{\r
2241                                                                         Name:  "POD_LABEL",\r
2242                                                                         Value: "app.kubernetes.io/instance=release-name",\r
2243                                                                 },\r
2244                                                         },\r
2245                                                         Stdin: false,\r
2246                                                         Command: []string{\r
2247 \r
2248                                                                 "/bin/sh",\r
2249                                                         },\r
2250                                                 },\r
2251                                         },\r
2252                                         HostIPC:            false,\r
2253                                         HostNetwork:        false,\r
2254                                         HostPID:            false,\r
2255                                         ServiceAccountName: "assigner-sa",\r
2256                                         Volumes: []corev1.Volume{\r
2257 \r
2258                                                 corev1.Volume{\r
2259                                                         Name: "conf",\r
2260                                                         VolumeSource: corev1.VolumeSource{\r
2261                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
2262                                                                         DefaultMode: int32Ptr(493),\r
2263                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
2264                                                                                 Name: "assigner-cm",\r
2265                                                                         },\r
2266                                                                 },\r
2267                                                         },\r
2268                                                 },\r
2269                                         },\r
2270                                 },\r
2271                         },\r
2272                         Paused:   false,\r
2273                         Replicas: int32Ptr(1),\r
2274                         Selector: &metav1.LabelSelector{\r
2275                                 MatchLabels: map[string]string{\r
2276                                         "app":     "assigner",\r
2277                                         "release": "release-name",\r
2278                                 },\r
2279                         },\r
2280                 },\r
2281                 TypeMeta: metav1.TypeMeta{\r
2282                         APIVersion: "apps/v1",\r
2283                         Kind:       "Deployment",\r
2284                 },\r
2285         }\r
2286 \r
2287         deployment14 := &appsv1.Deployment{\r
2288                 Spec: appsv1.DeploymentSpec{\r
2289                         Paused:   false,\r
2290                         Replicas: int32Ptr(1),\r
2291                         Selector: &metav1.LabelSelector{\r
2292                                 MatchLabels: map[string]string{\r
2293                                         "app":     "ricplt-rsm",\r
2294                                         "release": "release-name",\r
2295                                 },\r
2296                         },\r
2297                         Template: corev1.PodTemplateSpec{\r
2298                                 ObjectMeta: metav1.ObjectMeta{\r
2299                                         Labels: map[string]string{\r
2300                                                 "app":     "ricplt-rsm",\r
2301                                                 "release": "release-name",\r
2302                                         },\r
2303                                 },\r
2304                                 Spec: corev1.PodSpec{\r
2305                                         Hostname: "rsm",\r
2306                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
2307 \r
2308                                                 corev1.LocalObjectReference{\r
2309                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
2310                                                 },\r
2311                                         },\r
2312                                         InitContainers: []corev1.Container{\r
2313 \r
2314                                                 corev1.Container{\r
2315                                                         Command: []string{\r
2316 \r
2317                                                                 "sh",\r
2318                                                                 "-c",\r
2319                                                                 "redis-cli -h service-ricplt-dbaas-tcp -p 6379 set \"{rsm},CFG:GENERAL:v1.0.0\"  \"{\\\"enableResourceStatus\\\":true,\\\"partialSuccessAllowed\\\":true,\\\"prbPeriodic\\\":true,\\\"tnlLoadIndPeriodic\\\":true,\\\"wwLoadIndPeriodic\\\":true,\\\"absStatusPeriodic\\\":true,\\\"rsrpMeasurementPeriodic\\\":true,\\\"csiPeriodic\\\":true,\\\"periodicityMs\\\":1,\\\"periodicityRsrpMeasurementMs\\\":3,\\\"periodicityCsiMs\\\":4}\" nx",\r
2320                                                         },\r
2321                                                         Image:           "docker.io/redis:latest",\r
2322                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2323                                                         Name:            "redis-init",\r
2324                                                         Stdin:           false,\r
2325                                                         StdinOnce:       false,\r
2326                                                         TTY:             false,\r
2327                                                 },\r
2328                                         },\r
2329                                         Volumes: []corev1.Volume{\r
2330 \r
2331                                                 corev1.Volume{\r
2332                                                         Name: "local-router-file",\r
2333                                                         VolumeSource: corev1.VolumeSource{\r
2334                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
2335                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
2336                                                                                 Name: "configmap-ricplt-rsm-router-configmap",\r
2337                                                                         },\r
2338                                                                 },\r
2339                                                         },\r
2340                                                 },\r
2341                                                 corev1.Volume{\r
2342                                                         Name: "local-configuration-file",\r
2343                                                         VolumeSource: corev1.VolumeSource{\r
2344                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
2345                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
2346                                                                                 Name: "configmap-ricplt-rsm",\r
2347                                                                         },\r
2348                                                                 },\r
2349                                                         },\r
2350                                                 },\r
2351                                         },\r
2352                                         Containers: []corev1.Container{\r
2353 \r
2354                                                 corev1.Container{\r
2355                                                         Name: "container-ricplt-rsm",\r
2356                                                         Ports: []corev1.ContainerPort{\r
2357 \r
2358                                                                 corev1.ContainerPort{\r
2359                                                                         ContainerPort: 4800,\r
2360                                                                         Name:          "http",\r
2361                                                                 },\r
2362                                                                 corev1.ContainerPort{\r
2363                                                                         ContainerPort: 4561,\r
2364                                                                         Name:          "rmrroute",\r
2365                                                                 },\r
2366                                                                 corev1.ContainerPort{\r
2367                                                                         ContainerPort: 4801,\r
2368                                                                         Name:          "rmrdata",\r
2369                                                                 },\r
2370                                                         },\r
2371                                                         Stdin: true,\r
2372                                                         VolumeMounts: []corev1.VolumeMount{\r
2373 \r
2374                                                                 corev1.VolumeMount{\r
2375                                                                         MountPath: "/opt/RSM/router.txt",\r
2376                                                                         Name:      "local-router-file",\r
2377                                                                         ReadOnly:  false,\r
2378                                                                         SubPath:   "router.txt",\r
2379                                                                 },\r
2380                                                                 corev1.VolumeMount{\r
2381                                                                         MountPath: "/opt/RSM/resources/configuration.yaml",\r
2382                                                                         Name:      "local-configuration-file",\r
2383                                                                         ReadOnly:  false,\r
2384                                                                         SubPath:   "configuration.yaml",\r
2385                                                                 },\r
2386                                                         },\r
2387                                                         Image:           "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-resource-status-manager:3.0.1",\r
2388                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2389                                                         StdinOnce:       false,\r
2390                                                         TTY:             true,\r
2391                                                         EnvFrom: []corev1.EnvFromSource{\r
2392 \r
2393                                                                 corev1.EnvFromSource{\r
2394                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2395                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2396                                                                                         Name: "configmap-ricplt-rsm-env",\r
2397                                                                                 },\r
2398                                                                         },\r
2399                                                                 },\r
2400                                                                 corev1.EnvFromSource{\r
2401                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2402                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2403                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
2404                                                                                 },\r
2405                                                                         },\r
2406                                                                 },\r
2407                                                         },\r
2408                                                         SecurityContext: &corev1.SecurityContext{\r
2409                                                                 Privileged: boolPtr(false),\r
2410                                                         },\r
2411                                                 },\r
2412                                         },\r
2413                                         HostIPC:     false,\r
2414                                         HostNetwork: false,\r
2415                                         HostPID:     false,\r
2416                                 },\r
2417                         },\r
2418                 },\r
2419                 TypeMeta: metav1.TypeMeta{\r
2420                         APIVersion: "apps/v1",\r
2421                         Kind:       "Deployment",\r
2422                 },\r
2423                 ObjectMeta: metav1.ObjectMeta{\r
2424                         Labels: map[string]string{\r
2425                                 "app":      "ricplt-rsm",\r
2426                                 "chart":    "rsm-3.0.0",\r
2427                                 "heritage": "Helm",\r
2428                                 "release":  "release-name",\r
2429                         },\r
2430                         Name:      "deployment-ricplt-rsm",\r
2431                         Namespace: "ricplt",\r
2432                 },\r
2433         }\r
2434 \r
2435         deployment15 := &appsv1.Deployment{\r
2436                 ObjectMeta: metav1.ObjectMeta{\r
2437                         Labels: map[string]string{\r
2438                                 "app":      "ricplt-rtmgr",\r
2439                                 "chart":    "rtmgr-3.0.0",\r
2440                                 "heritage": "Helm",\r
2441                                 "release":  "release-name",\r
2442                         },\r
2443                         Name:      "deployment-ricplt-rtmgr",\r
2444                         Namespace: "ricplt",\r
2445                 },\r
2446                 Spec: appsv1.DeploymentSpec{\r
2447                         Paused: false,\r
2448                         Selector: &metav1.LabelSelector{\r
2449                                 MatchLabels: map[string]string{\r
2450                                         "app":     "ricplt-rtmgr",\r
2451                                         "release": "release-name",\r
2452                                 },\r
2453                         },\r
2454                         Template: corev1.PodTemplateSpec{\r
2455                                 ObjectMeta: metav1.ObjectMeta{\r
2456                                         Labels: map[string]string{\r
2457                                                 "release": "release-name",\r
2458                                                 "app":     "ricplt-rtmgr",\r
2459                                         },\r
2460                                 },\r
2461                                 Spec: corev1.PodSpec{\r
2462                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
2463 \r
2464                                                 corev1.LocalObjectReference{\r
2465                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
2466                                                 },\r
2467                                         },\r
2468                                         Volumes: []corev1.Volume{\r
2469 \r
2470                                                 corev1.Volume{\r
2471                                                         Name: "rtmgrcfg",\r
2472                                                         VolumeSource: corev1.VolumeSource{\r
2473                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
2474                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
2475                                                                                 Name: "configmap-ricplt-rtmgr-rtmgrcfg",\r
2476                                                                         },\r
2477                                                                         Items: []corev1.KeyToPath{\r
2478 \r
2479                                                                                 corev1.KeyToPath{\r
2480                                                                                         Key:  "rtmgrcfg",\r
2481                                                                                         Mode: int32Ptr(420),\r
2482                                                                                         Path: "rtmgr-config.yaml",\r
2483                                                                                 },\r
2484                                                                         },\r
2485                                                                 },\r
2486                                                         },\r
2487                                                 },\r
2488                                         },\r
2489                                         Containers: []corev1.Container{\r
2490 \r
2491                                                 corev1.Container{\r
2492                                                         Ports: []corev1.ContainerPort{\r
2493 \r
2494                                                                 corev1.ContainerPort{\r
2495                                                                         ContainerPort: 3800,\r
2496                                                                         Name:          "http",\r
2497                                                                 },\r
2498                                                                 corev1.ContainerPort{\r
2499                                                                         ContainerPort: 4561,\r
2500                                                                         Name:          "rmrroute",\r
2501                                                                 },\r
2502                                                                 corev1.ContainerPort{\r
2503                                                                         ContainerPort: 4560,\r
2504                                                                         Name:          "rmrdata",\r
2505                                                                 },\r
2506                                                         },\r
2507                                                         ReadinessProbe: &corev1.Probe{\r
2508                                                                 InitialDelaySeconds: 5,\r
2509                                                                 PeriodSeconds:       15,\r
2510                                                                 ProbeHandler: corev1.ProbeHandler{\r
2511                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2512                                                                                 Path: "ric/v1/health/ready",\r
2513                                                                                 Port: intstr.IntOrString{\r
2514                                                                                         IntVal: 8080,\r
2515                                                                                 },\r
2516                                                                         },\r
2517                                                                 },\r
2518                                                         },\r
2519                                                         Stdin: false,\r
2520                                                         TTY:   false,\r
2521                                                         Command: []string{\r
2522 \r
2523                                                                 "/run_rtmgr.sh",\r
2524                                                         },\r
2525                                                         EnvFrom: []corev1.EnvFromSource{\r
2526 \r
2527                                                                 corev1.EnvFromSource{\r
2528                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2529                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2530                                                                                         Name: "configmap-ricplt-rtmgr-env",\r
2531                                                                                 },\r
2532                                                                         },\r
2533                                                                 },\r
2534                                                                 corev1.EnvFromSource{\r
2535                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2536                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2537                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
2538                                                                                 },\r
2539                                                                         },\r
2540                                                                 },\r
2541                                                         },\r
2542                                                         LivenessProbe: &corev1.Probe{\r
2543                                                                 PeriodSeconds: 15,\r
2544                                                                 ProbeHandler: corev1.ProbeHandler{\r
2545                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2546                                                                                 Port: intstr.IntOrString{\r
2547                                                                                         IntVal: 8080,\r
2548                                                                                 },\r
2549                                                                                 Path: "ric/v1/health/alive",\r
2550                                                                         },\r
2551                                                                 },\r
2552                                                                 InitialDelaySeconds: 5,\r
2553                                                         },\r
2554                                                         Name: "container-ricplt-rtmgr",\r
2555                                                         VolumeMounts: []corev1.VolumeMount{\r
2556 \r
2557                                                                 corev1.VolumeMount{\r
2558                                                                         ReadOnly:  true,\r
2559                                                                         MountPath: "/cfg",\r
2560                                                                         Name:      "rtmgrcfg",\r
2561                                                                 },\r
2562                                                         },\r
2563                                                         Image:           "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-rtmgr:0.3.8",\r
2564                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2565                                                         StdinOnce:       false,\r
2566                                                 },\r
2567                                         },\r
2568                                         HostIPC:     false,\r
2569                                         HostNetwork: false,\r
2570                                         HostPID:     false,\r
2571                                         Hostname:    "rtmgr",\r
2572                                 },\r
2573                         },\r
2574                 },\r
2575                 TypeMeta: metav1.TypeMeta{\r
2576                         APIVersion: "apps/v1",\r
2577                         Kind:       "Deployment",\r
2578                 },\r
2579         }\r
2580 \r
2581         deployment16 := &appsv1.Deployment{\r
2582                 ObjectMeta: metav1.ObjectMeta{\r
2583                         Labels: map[string]string{\r
2584                                 "heritage": "Helm",\r
2585                                 "release":  "release-name",\r
2586                                 "app":      "ricplt-submgr",\r
2587                                 "chart":    "submgr-3.0.0",\r
2588                         },\r
2589                         Name:      "deployment-ricplt-submgr",\r
2590                         Namespace: "ricplt",\r
2591                 },\r
2592                 Spec: appsv1.DeploymentSpec{\r
2593                         Template: corev1.PodTemplateSpec{\r
2594                                 ObjectMeta: metav1.ObjectMeta{\r
2595                                         Labels: map[string]string{\r
2596                                                 "app":     "ricplt-submgr",\r
2597                                                 "release": "release-name",\r
2598                                         },\r
2599                                 },\r
2600                                 Spec: corev1.PodSpec{\r
2601                                         Hostname: "submgr",\r
2602                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
2603 \r
2604                                                 corev1.LocalObjectReference{\r
2605                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
2606                                                 },\r
2607                                         },\r
2608                                         Volumes: []corev1.Volume{\r
2609 \r
2610                                                 corev1.Volume{\r
2611                                                         Name: "config-volume",\r
2612                                                         VolumeSource: corev1.VolumeSource{\r
2613                                                                 ConfigMap: &corev1.ConfigMapVolumeSource{\r
2614                                                                         Items: []corev1.KeyToPath{\r
2615 \r
2616                                                                                 corev1.KeyToPath{\r
2617                                                                                         Key:  "submgrcfg",\r
2618                                                                                         Mode: int32Ptr(420),\r
2619                                                                                         Path: "submgr-config.yaml",\r
2620                                                                                 },\r
2621                                                                                 corev1.KeyToPath{\r
2622                                                                                         Key:  "submgrutartg",\r
2623                                                                                         Mode: int32Ptr(420),\r
2624                                                                                         Path: "submgr-uta-rtg.rt",\r
2625                                                                                 },\r
2626                                                                         },\r
2627                                                                         LocalObjectReference: corev1.LocalObjectReference{\r
2628                                                                                 Name: "submgrcfg",\r
2629                                                                         },\r
2630                                                                 },\r
2631                                                         },\r
2632                                                 },\r
2633                                         },\r
2634                                         Containers: []corev1.Container{\r
2635 \r
2636                                                 corev1.Container{\r
2637                                                         TTY: false,\r
2638                                                         VolumeMounts: []corev1.VolumeMount{\r
2639 \r
2640                                                                 corev1.VolumeMount{\r
2641                                                                         ReadOnly:  false,\r
2642                                                                         MountPath: "/cfg",\r
2643                                                                         Name:      "config-volume",\r
2644                                                                 },\r
2645                                                         },\r
2646                                                         Args: []string{\r
2647 \r
2648                                                                 "-f",\r
2649                                                                 "/cfg/submgr-config.yaml",\r
2650                                                         },\r
2651                                                         Command: []string{\r
2652 \r
2653                                                                 "/submgr",\r
2654                                                         },\r
2655                                                         Image: "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-submgr:0.10.7",\r
2656                                                         Name:  "container-ricplt-submgr",\r
2657                                                         Ports: []corev1.ContainerPort{\r
2658 \r
2659                                                                 corev1.ContainerPort{\r
2660                                                                         ContainerPort: 3800,\r
2661                                                                         Name:          "http",\r
2662                                                                         Protocol:      corev1.Protocol("TCP"),\r
2663                                                                 },\r
2664                                                                 corev1.ContainerPort{\r
2665                                                                         ContainerPort: 4561,\r
2666                                                                         Name:          "rmrroute",\r
2667                                                                         Protocol:      corev1.Protocol("TCP"),\r
2668                                                                 },\r
2669                                                                 corev1.ContainerPort{\r
2670                                                                         ContainerPort: 4560,\r
2671                                                                         Name:          "rmrdata",\r
2672                                                                         Protocol:      corev1.Protocol("TCP"),\r
2673                                                                 },\r
2674                                                         },\r
2675                                                         Stdin: false,\r
2676                                                         EnvFrom: []corev1.EnvFromSource{\r
2677 \r
2678                                                                 corev1.EnvFromSource{\r
2679                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2680                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2681                                                                                         Name: "configmap-ricplt-submgr-env",\r
2682                                                                                 },\r
2683                                                                         },\r
2684                                                                 },\r
2685                                                                 corev1.EnvFromSource{\r
2686                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2687                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2688                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
2689                                                                                 },\r
2690                                                                         },\r
2691                                                                 },\r
2692                                                         },\r
2693                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2694                                                         LivenessProbe: &corev1.Probe{\r
2695                                                                 PeriodSeconds: 15,\r
2696                                                                 ProbeHandler: corev1.ProbeHandler{\r
2697                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2698                                                                                 Path: "ric/v1/health/alive",\r
2699                                                                                 Port: intstr.IntOrString{\r
2700                                                                                         IntVal: 8080,\r
2701                                                                                 },\r
2702                                                                         },\r
2703                                                                 },\r
2704                                                                 InitialDelaySeconds: 5,\r
2705                                                         },\r
2706                                                         ReadinessProbe: &corev1.Probe{\r
2707                                                                 InitialDelaySeconds: 5,\r
2708                                                                 PeriodSeconds:       15,\r
2709                                                                 ProbeHandler: corev1.ProbeHandler{\r
2710                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2711                                                                                 Path: "ric/v1/health/ready",\r
2712                                                                                 Port: intstr.IntOrString{\r
2713                                                                                         IntVal: 8080,\r
2714                                                                                 },\r
2715                                                                         },\r
2716                                                                 },\r
2717                                                         },\r
2718                                                         StdinOnce: false,\r
2719                                                 },\r
2720                                         },\r
2721                                         HostIPC:     false,\r
2722                                         HostNetwork: false,\r
2723                                         HostPID:     false,\r
2724                                 },\r
2725                         },\r
2726                         Paused:   false,\r
2727                         Replicas: int32Ptr(1),\r
2728                         Selector: &metav1.LabelSelector{\r
2729                                 MatchLabels: map[string]string{\r
2730                                         "app":     "ricplt-submgr",\r
2731                                         "release": "release-name",\r
2732                                 },\r
2733                         },\r
2734                 },\r
2735                 TypeMeta: metav1.TypeMeta{\r
2736                         Kind:       "Deployment",\r
2737                         APIVersion: "apps/v1",\r
2738                 },\r
2739         }\r
2740 \r
2741         deployment17 := &appsv1.Deployment{\r
2742                 ObjectMeta: metav1.ObjectMeta{\r
2743                         Labels: map[string]string{\r
2744                                 "heritage": "Helm",\r
2745                                 "release":  "release-name",\r
2746                                 "app":      "ricplt-vespamgr",\r
2747                                 "chart":    "vespamgr-3.0.0",\r
2748                         },\r
2749                         Name:      "deployment-ricplt-vespamgr",\r
2750                         Namespace: "ricplt",\r
2751                 },\r
2752                 Spec: appsv1.DeploymentSpec{\r
2753                         Paused:   false,\r
2754                         Replicas: int32Ptr(1),\r
2755                         Selector: &metav1.LabelSelector{\r
2756                                 MatchLabels: map[string]string{\r
2757                                         "app":     "ricplt-vespamgr",\r
2758                                         "release": "release-name",\r
2759                                 },\r
2760                         },\r
2761                         Template: corev1.PodTemplateSpec{\r
2762                                 ObjectMeta: metav1.ObjectMeta{\r
2763                                         Labels: map[string]string{\r
2764                                                 "app":     "ricplt-vespamgr",\r
2765                                                 "release": "release-name",\r
2766                                         },\r
2767                                 },\r
2768                                 Spec: corev1.PodSpec{\r
2769                                         Hostname: "vespamgr",\r
2770                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
2771 \r
2772                                                 corev1.LocalObjectReference{\r
2773                                                         Name: "secret-nexus3-o-ran-sc-org-10002-o-ran-sc",\r
2774                                                 },\r
2775                                         },\r
2776                                         Containers: []corev1.Container{\r
2777 \r
2778                                                 corev1.Container{\r
2779                                                         EnvFrom: []corev1.EnvFromSource{\r
2780 \r
2781                                                                 corev1.EnvFromSource{\r
2782                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2783                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2784                                                                                         Name: "configmap-ricplt-vespamgr",\r
2785                                                                                 },\r
2786                                                                         },\r
2787                                                                 },\r
2788                                                                 corev1.EnvFromSource{\r
2789                                                                         SecretRef: &corev1.SecretEnvSource{\r
2790                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2791                                                                                         Name: "vespa-secrets",\r
2792                                                                                 },\r
2793                                                                         },\r
2794                                                                 },\r
2795                                                         },\r
2796                                                         LivenessProbe: &corev1.Probe{\r
2797                                                                 InitialDelaySeconds: 30,\r
2798                                                                 PeriodSeconds:       60,\r
2799                                                                 ProbeHandler: corev1.ProbeHandler{\r
2800                                                                         HTTPGet: &corev1.HTTPGetAction{\r
2801                                                                                 Path: "/supervision",\r
2802                                                                                 Port: intstr.IntOrString{\r
2803                                                                                         IntVal: 8080,\r
2804                                                                                 },\r
2805                                                                         },\r
2806                                                                 },\r
2807                                                                 TimeoutSeconds: 20,\r
2808                                                         },\r
2809                                                         Name:      "container-ricplt-vespamgr",\r
2810                                                         Stdin:     false,\r
2811                                                         StdinOnce: false,\r
2812                                                         TTY:       false,\r
2813                                                         Env: []corev1.EnvVar{\r
2814 \r
2815                                                                 corev1.EnvVar{\r
2816                                                                         Name:  "VESMGR_APPMGRDOMAN",\r
2817                                                                         Value: "service-ricplt-appmgr-http",\r
2818                                                                 },\r
2819                                                         },\r
2820                                                         Image:           "nexus3.o-ran-sc.org:10002/o-ran-sc/ric-plt-vespamgr:0.4.0",\r
2821                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2822                                                         Ports: []corev1.ContainerPort{\r
2823 \r
2824                                                                 corev1.ContainerPort{\r
2825                                                                         ContainerPort: 8080,\r
2826                                                                         Name:          "http",\r
2827                                                                         Protocol:      corev1.Protocol("TCP"),\r
2828                                                                 },\r
2829                                                                 corev1.ContainerPort{\r
2830                                                                         Name:          "alert",\r
2831                                                                         Protocol:      corev1.Protocol("TCP"),\r
2832                                                                         ContainerPort: 9095,\r
2833                                                                 },\r
2834                                                         },\r
2835                                                 },\r
2836                                         },\r
2837                                         HostIPC:     false,\r
2838                                         HostNetwork: false,\r
2839                                         HostPID:     false,\r
2840                                 },\r
2841                         },\r
2842                 },\r
2843                 TypeMeta: metav1.TypeMeta{\r
2844                         APIVersion: "apps/v1",\r
2845                         Kind:       "Deployment",\r
2846                 },\r
2847         }\r
2848 \r
2849         deployment18 := &appsv1.Deployment{\r
2850                 ObjectMeta: metav1.ObjectMeta{\r
2851                         Namespace: "ricplt",\r
2852                         Labels: map[string]string{\r
2853                                 "release":  "release-name",\r
2854                                 "app":      "ricplt-xapp-onboarder",\r
2855                                 "chart":    "xapp-onboarder-3.0.0",\r
2856                                 "heritage": "Helm",\r
2857                         },\r
2858                         Name: "deployment-ricplt-xapp-onboarder",\r
2859                 },\r
2860                 Spec: appsv1.DeploymentSpec{\r
2861                         Paused:   false,\r
2862                         Replicas: int32Ptr(1),\r
2863                         Selector: &metav1.LabelSelector{\r
2864                                 MatchLabels: map[string]string{\r
2865                                         "app":     "ricplt-xapp-onboarder",\r
2866                                         "release": "release-name",\r
2867                                 },\r
2868                         },\r
2869                         Template: corev1.PodTemplateSpec{\r
2870                                 ObjectMeta: metav1.ObjectMeta{\r
2871                                         Labels: map[string]string{\r
2872                                                 "app":     "ricplt-xapp-onboarder",\r
2873                                                 "release": "release-name",\r
2874                                         },\r
2875                                 },\r
2876                                 Spec: corev1.PodSpec{\r
2877                                         HostIPC:     false,\r
2878                                         HostNetwork: false,\r
2879                                         HostPID:     false,\r
2880                                         Hostname:    "xapp-onboarder",\r
2881                                         ImagePullSecrets: []corev1.LocalObjectReference{\r
2882 \r
2883                                                 corev1.LocalObjectReference{\r
2884                                                         Name: "secret-nexus3-o-ran-sc-org-10004-o-ran-sc",\r
2885                                                 },\r
2886                                         },\r
2887                                         RestartPolicy: corev1.RestartPolicy("Always"),\r
2888                                         Containers: []corev1.Container{\r
2889 \r
2890                                                 corev1.Container{\r
2891                                                         EnvFrom: []corev1.EnvFromSource{\r
2892 \r
2893                                                                 corev1.EnvFromSource{\r
2894                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2895                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2896                                                                                         Name: "configmap-ricplt-xapp-onboarder-chartmuseum-env",\r
2897                                                                                 },\r
2898                                                                         },\r
2899                                                                 },\r
2900                                                         },\r
2901                                                         Image:           "docker.io/chartmuseum/chartmuseum:v0.8.2",\r
2902                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2903                                                         Name:            "container-ricplt-xapp-onboarder-chartmuseum",\r
2904                                                         Ports: []corev1.ContainerPort{\r
2905 \r
2906                                                                 corev1.ContainerPort{\r
2907                                                                         ContainerPort: 8080,\r
2908                                                                         Name:          "chartmuseum",\r
2909                                                                         Protocol:      corev1.Protocol("TCP"),\r
2910                                                                 },\r
2911                                                         },\r
2912                                                         Stdin:     false,\r
2913                                                         StdinOnce: false,\r
2914                                                         TTY:       false,\r
2915                                                 },\r
2916                                                 corev1.Container{\r
2917                                                         StdinOnce: false,\r
2918                                                         TTY:       false,\r
2919                                                         EnvFrom: []corev1.EnvFromSource{\r
2920 \r
2921                                                                 corev1.EnvFromSource{\r
2922                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2923                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2924                                                                                         Name: "configmap-ricplt-xapp-onboarder-env",\r
2925                                                                                 },\r
2926                                                                         },\r
2927                                                                 },\r
2928                                                                 corev1.EnvFromSource{\r
2929                                                                         ConfigMapRef: &corev1.ConfigMapEnvSource{\r
2930                                                                                 LocalObjectReference: corev1.LocalObjectReference{\r
2931                                                                                         Name: "configmap-ricplt-dbaas-appconfig",\r
2932                                                                                 },\r
2933                                                                         },\r
2934                                                                 },\r
2935                                                         },\r
2936                                                         Image:           "nexus3.o-ran-sc.org:10004/o-ran-sc/xapp-onboarder:1.0.0",\r
2937                                                         ImagePullPolicy: corev1.PullPolicy("IfNotPresent"),\r
2938                                                         Name:            "container-ricplt-xapp-onboarder",\r
2939                                                         Ports: []corev1.ContainerPort{\r
2940 \r
2941                                                                 corev1.ContainerPort{\r
2942                                                                         ContainerPort: 8888,\r
2943                                                                         Name:          "server",\r
2944                                                                         Protocol:      corev1.Protocol("TCP"),\r
2945                                                                 },\r
2946                                                         },\r
2947                                                         Stdin: false,\r
2948                                                 },\r
2949                                         },\r
2950                                 },\r
2951                         },\r
2952                 },\r
2953                 TypeMeta: metav1.TypeMeta{\r
2954                         APIVersion: "apps/v1",\r
2955                         Kind:       "Deployment",\r
2956                 },\r
2957         }\r
2958 \r
2959         return []*appsv1.Deployment{deployment1, deployment2, deployment3, deployment4, deployment5, deployment6, deployment7, deployment8, deployment9, deployment10, deployment11, deployment12, deployment13, deployment14, deployment15, deployment16, deployment17, deployment18}\r
2960 }\r