Creation of all the resources of the xapp.
[ric-plt/ricdms.git] / xappKubernetesOperator / internal / controller / getConfigmap.go
1 package controller\r
2 \r
3 import (\r
4         corev1 "k8s.io/api/core/v1"\r
5         metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"\r
6 )\r
7 \r
8 func GetConfigMap() []*corev1.ConfigMap {\r
9 \r
10         configMap1 := &corev1.ConfigMap{\r
11                 TypeMeta: metav1.TypeMeta{\r
12                         APIVersion: "v1",\r
13                         Kind:       "ConfigMap",\r
14                 },\r
15                 Data: map[string]string{\r
16                         "schema.json": "{\n" +\r
17                                 "    \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n" +\r
18                                 "    \"$id\": \"http://o-ran-sc.org/xapp_root.json\",\n" +\r
19                                 "    \"type\": \"object\",\n" +\r
20                                 "    \"title\": \"The xApp Root Schema\",\n" +\r
21                                 "    \"properties\": {\n" +\r
22                                 "        \"name\": {\n" +\r
23                                 "            \"$id\": \"#/properties/name\",\n" +\r
24                                 "            \"type\": \"string\",\n" +\r
25                                 "            \"title\": \"The xApp Name\",\n" +\r
26                                 "            \"default\": \"xapp\",\n" +\r
27                                 "            \"examples\": [\n" +\r
28                                 "                \"example_xapp\"\n" +\r
29                                 "            ]\n" +\r
30                                 "        },\n" +\r
31                                 "        \"version\": {\n" +\r
32                                 "            \"$id\": \"#/properties/version\",\n" +\r
33                                 "            \"type\": \"string\",\n" +\r
34                                 "            \"title\": \"The xApp version\",\n" +\r
35                                 "            \"default\": \"1.0.0\",\n" +\r
36                                 "            \"examples\": [\n" +\r
37                                 "                \"1.0.0\"\n" +\r
38                                 "            ],\n" +\r
39                                 "            \"pattern\": \"^(0|[1-9]\\\\d*)\\\\.(0|[1-9]\\\\d*)\\\\.(0|[1-9]\\\\d*)(?:-((?:0|[1-9]\\\\d*|\\\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\\\.(?:0|[1-9]\\\\d*|\\\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\\\+([0-9a-zA-Z-]+(?:\\\\.[0-9a-zA-Z-]+)*))?$\"\n" +\r
40                                 "        },\n" +\r
41                                 "        \"annotations\": {\n" +\r
42                                 "            \"$id\": \"#/properties/annotation\",\n" +\r
43                                 "            \"type\": \"object\",\n" +\r
44                                 "            \"title\": \"The k8s pod annotation\",\n" +\r
45                                 "            \"additionalProperties\": {\n" +\r
46                                 "                \"anyOf\": [\n" +\r
47                                 "                    {\n" +\r
48                                 "                        \"type\": \"string\"\n" +\r
49                                 "                    },\n" +\r
50                                 "                    {\n" +\r
51                                 "                        \"type\": \"array\",\n" +\r
52                                 "                        \"items\": {\n" +\r
53                                 "                            \"type\": \"object\"\n" +\r
54                                 "                        }\n" +\r
55                                 "                    }\n" +\r
56                                 "                ]\n" +\r
57                                 "            }\n" +\r
58                                 "        },\n" +\r
59                                 "        \"containers\": {\n" +\r
60                                 "            \"$id\": \"#/properties/containers\",\n" +\r
61                                 "            \"type\": \"array\",\n" +\r
62                                 "            \"title\": \"The Container Schema\",\n" +\r
63                                 "            \"items\": {\n" +\r
64                                 "                \"$id\": \"#/properties/containers/items\",\n" +\r
65                                 "                \"type\": \"object\",\n" +\r
66                                 "                \"title\": \"The Container Items Schema\",\n" +\r
67                                 "                \"required\": [\n" +\r
68                                 "                    \"name\",\n" +\r
69                                 "                    \"image\"\n" +\r
70                                 "                ],\n" +\r
71                                 "                \"properties\": {\n" +\r
72                                 "                    \"name\": {\n" +\r
73                                 "                        \"$id\": \"#/properties/containers/items/properties/name\",\n" +\r
74                                 "                        \"type\": \"string\",\n" +\r
75                                 "                        \"title\": \"The xApp Container Name\",\n" +\r
76                                 "                        \"default\": \"xapp\",\n" +\r
77                                 "                        \"examples\": [\n" +\r
78                                 "                            \"xapp\"\n" +\r
79                                 "                        ]\n" +\r
80                                 "                    },\n" +\r
81                                 "                    \"image\": {\n" +\r
82                                 "                        \"$id\": \"#/properties/containers/items/properties/image\",\n" +\r
83                                 "                        \"type\": \"object\",\n" +\r
84                                 "                        \"title\": \"The Container Image\",\n" +\r
85                                 "                        \"required\": [\n" +\r
86                                 "                            \"registry\",\n" +\r
87                                 "                            \"name\",\n" +\r
88                                 "                            \"tag\"\n" +\r
89                                 "                        ],\n" +\r
90                                 "                        \"properties\": {\n" +\r
91                                 "                            \"registry\": {\n" +\r
92                                 "                                \"$id\": \"#/properties/containers/items/properties/image/properties/registry\",\n" +\r
93                                 "                                \"type\": \"string\",\n" +\r
94                                 "                                \"title\": \"The xApp Image Registry\",\n" +\r
95                                 "                                \"default\": \"nexus3.o-ran-sc.org:10002\",\n" +\r
96                                 "                                \"examples\": [\n" +\r
97                                 "                                    \"nexus3.o-ran-sc.org:10002\"\n" +\r
98                                 "                                ],\n" +\r
99                                 "                                \"pattern\": \"^([A-Za-z0-9\\\\.-]{1,}\\\\.[A-Za-z]{1,}|((?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)))(?:\\\\:\\\\d+)?$\"\n" +\r
100                                 "                            },\n" +\r
101                                 "                            \"name\": {\n" +\r
102                                 "                                \"$id\": \"#/properties/containers/items/properties/image/properties/name\",\n" +\r
103                                 "                                \"type\": \"string\",\n" +\r
104                                 "                                \"title\": \"The xApp Image Name\",\n" +\r
105                                 "                                \"default\": \"xapp\",\n" +\r
106                                 "                                \"examples\": [\n" +\r
107                                 "                                    \"xapp\"\n" +\r
108                                 "                                ]\n" +\r
109                                 "                            },\n" +\r
110                                 "                            \"tag\": {\n" +\r
111                                 "                                \"$id\": \"#/properties/containers/items/properties/image/properties/tag\",\n" +\r
112                                 "                                \"type\": \"string\",\n" +\r
113                                 "                                \"title\": \"The xApp Image Tag\",\n" +\r
114                                 "                                \"default\": \"latest\",\n" +\r
115                                 "                                \"examples\": [\n" +\r
116                                 "                                    \"latest\"\n" +\r
117                                 "                                ]\n" +\r
118                                 "                            }\n" +\r
119                                 "                        }\n" +\r
120                                 "                    },\n" +\r
121                                 "                    \"command\": {\n" +\r
122                                 "                        \"$id\": \"#/properties/containers/items/properties/command\",\n" +\r
123                                 "                        \"type\": \"array\",\n" +\r
124                                 "                        \"items\": [\n" +\r
125                                 "                            {\n" +\r
126                                 "                                \"$id\": \"#/properties/containers/items/properties/command/item\",\n" +\r
127                                 "                                \"type\": \"string\",\n" +\r
128                                 "                                \"title\": \"The Command Item\",\n" +\r
129                                 "                                \"default\": \"/bin/sh\",\n" +\r
130                                 "                                \"examples\": [\n" +\r
131                                 "                                    \"/bin/sh\"\n" +\r
132                                 "                                ]\n" +\r
133                                 "                            }\n" +\r
134                                 "                        ]\n" +\r
135                                 "                    },\n" +\r
136                                 "                    \"args\": {\n" +\r
137                                 "                        \"$id\": \"#/properties/containers/items/properties/args\",\n" +\r
138                                 "                        \"type\": \"array\",\n" +\r
139                                 "                        \"items\": [\n" +\r
140                                 "                            {\n" +\r
141                                 "                                \"$id\": \"#/properties/containers/items/properties/args/item\",\n" +\r
142                                 "                                \"type\": \"string\",\n" +\r
143                                 "                                \"title\": \"The Command Arguement Item\",\n" +\r
144                                 "                                \"default\": \"-c\",\n" +\r
145                                 "                                \"examples\": [\n" +\r
146                                 "                                    \"-c\"\n" +\r
147                                 "                                ]\n" +\r
148                                 "                            }\n" +\r
149                                 "                        ]\n" +\r
150                                 "                    }\n" +\r
151                                 "                }\n" +\r
152                                 "            }\n" +\r
153                                 "        },\n" +\r
154                                 "        \"livenessProbe\": {\n" +\r
155                                 "            \"$id\": \"#/properties/livenessprobe\",\n" +\r
156                                 "            \"type\": \"object\",\n" +\r
157                                 "            \"title\": \"The Liveness Probe Definition\",\n" +\r
158                                 "            \"properties\": {\n" +\r
159                                 "                \"exec\": {\n" +\r
160                                 "                    \"$id\": \"#/properties/livenessprobe/exec\",\n" +\r
161                                 "                    \"type\": \"object\",\n" +\r
162                                 "                    \"title\": \"Script of Liveness Probe\",\n" +\r
163                                 "                    \"properties\": {\n" +\r
164                                 "                        \"command\": {\n" +\r
165                                 "                            \"$id\": \"#/properties/livenessprobe/exec/command\",\n" +\r
166                                 "                            \"type\": \"array\",\n" +\r
167                                 "                            \"items\": [\n" +\r
168                                 "                                {\n" +\r
169                                 "                                    \"$id\": \"#/properties/livenessprobe/exec/command/item\",\n" +\r
170                                 "                                    \"type\": \"string\",\n" +\r
171                                 "                                    \"title\": \"The Command Item\",\n" +\r
172                                 "                                    \"default\": \"/bin/sh\",\n" +\r
173                                 "                                    \"examples\": [\n" +\r
174                                 "                                        \"/bin/sh\"\n" +\r
175                                 "                                    ]\n" +\r
176                                 "                                }\n" +\r
177                                 "                            ]\n" +\r
178                                 "                        }\n" +\r
179                                 "                    },\n" +\r
180                                 "                    \"required\": [\n" +\r
181                                 "                        \"command\"\n" +\r
182                                 "                    ]\n" +\r
183                                 "                },\n" +\r
184                                 "                \"httpGet\": {\n" +\r
185                                 "                    \"$id\": \"#/properties/livenessprobe/httpget\",\n" +\r
186                                 "                    \"type\": \"object\",\n" +\r
187                                 "                    \"title\": \"Http of Liveness Probe\",\n" +\r
188                                 "                    \"properties\": {\n" +\r
189                                 "                        \"path\": {\n" +\r
190                                 "                            \"$id\": \"#/properties/livenessprobe/httpget/path\",\n" +\r
191                                 "                            \"type\": \"string\",\n" +\r
192                                 "                            \"title\": \"The Path of Http Liveness Probe\",\n" +\r
193                                 "                            \"default\": \"/health\",\n" +\r
194                                 "                            \"examples\": [\n" +\r
195                                 "                                \"/health\"\n" +\r
196                                 "                            ]\n" +\r
197                                 "                        },\n" +\r
198                                 "                        \"port\": {\n" +\r
199                                 "                            \"$id\": \"#/properties/livenessprobe/httpget/port\",\n" +\r
200                                 "                            \"type\": \"integer\",\n" +\r
201                                 "                            \"title\": \"The Port of Http Liveness Probe\",\n" +\r
202                                 "                            \"default\": 80,\n" +\r
203                                 "                            \"examples\": [\n" +\r
204                                 "                                80\n" +\r
205                                 "                            ]\n" +\r
206                                 "                        }\n" +\r
207                                 "                    },\n" +\r
208                                 "                    \"required\": [\n" +\r
209                                 "                        \"path\",\n" +\r
210                                 "                        \"port\"\n" +\r
211                                 "                    ]\n" +\r
212                                 "                },\n" +\r
213                                 "                \"initialDelaySeconds\": {\n" +\r
214                                 "                    \"$id\": \"#/properties/livenessprobe/initialdelayseconds\",\n" +\r
215                                 "                    \"type\": \"integer\",\n" +\r
216                                 "                    \"title\": \"Initial Delay of Liveness Probe\",\n" +\r
217                                 "                    \"default\": 5,\n" +\r
218                                 "                    \"examples\": [\n" +\r
219                                 "                        5\n" +\r
220                                 "                    ]\n" +\r
221                                 "                },\n" +\r
222                                 "                \"periodSeconds\": {\n" +\r
223                                 "                    \"$id\": \"#/properties/livenessprobe/periodseconds\",\n" +\r
224                                 "                    \"type\": \"integer\",\n" +\r
225                                 "                    \"title\": \"Period of Liveness Probe\",\n" +\r
226                                 "                    \"default\": 15,\n" +\r
227                                 "                    \"examples\": [\n" +\r
228                                 "                        15\n" +\r
229                                 "                    ]\n" +\r
230                                 "                }\n" +\r
231                                 "            },\n" +\r
232                                 "            \"oneOf\": [\n" +\r
233                                 "                {\n" +\r
234                                 "                    \"$id\": \"#/properties/livenessprobe/oneof/exec\",\n" +\r
235                                 "                    \"required\": [\n" +\r
236                                 "                        \"exec\",\n" +\r
237                                 "                        \"initialDelaySeconds\",\n" +\r
238                                 "                        \"periodSeconds\"\n" +\r
239                                 "                    ]\n" +\r
240                                 "                },\n" +\r
241                                 "                {\n" +\r
242                                 "                    \"$id\": \"#/properties/livenessprobe/oneof/httpget\",\n" +\r
243                                 "                    \"required\": [\n" +\r
244                                 "                        \"httpGet\",\n" +\r
245                                 "                        \"initialDelaySeconds\",\n" +\r
246                                 "                        \"periodSeconds\"\n" +\r
247                                 "                    ]\n" +\r
248                                 "                }\n" +\r
249                                 "            ]\n" +\r
250                                 "        },\n" +\r
251                                 "        \"readinessProbe\": {\n" +\r
252                                 "            \"$id\": \"#/properties/readinessprobe\",\n" +\r
253                                 "            \"type\": \"object\",\n" +\r
254                                 "            \"title\": \"The Readiness Probe Definition\",\n" +\r
255                                 "            \"properties\": {\n" +\r
256                                 "                \"exec\": {\n" +\r
257                                 "                    \"$id\": \"#/properties/readinessprobe/exec\",\n" +\r
258                                 "                    \"type\": \"object\",\n" +\r
259                                 "                    \"title\": \"Script of Readiness Probe\",\n" +\r
260                                 "                    \"properties\": {\n" +\r
261                                 "                        \"command\": {\n" +\r
262                                 "                            \"$id\": \"#/properties/readinessprobe/exec/command\",\n" +\r
263                                 "                            \"type\": \"array\",\n" +\r
264                                 "                            \"items\": [\n" +\r
265                                 "                                {\n" +\r
266                                 "                                    \"type\": \"string\"\n" +\r
267                                 "                                }\n" +\r
268                                 "                            ]\n" +\r
269                                 "                        }\n" +\r
270                                 "                    },\n" +\r
271                                 "                    \"required\": [\n" +\r
272                                 "                        \"command\"\n" +\r
273                                 "                    ]\n" +\r
274                                 "                },\n" +\r
275                                 "                \"httpGet\": {\n" +\r
276                                 "                    \"$id\": \"#/properties/readinessprobe/httpget\",\n" +\r
277                                 "                    \"type\": \"object\",\n" +\r
278                                 "                    \"title\": \"Http of Readiness Probe\",\n" +\r
279                                 "                    \"properties\": {\n" +\r
280                                 "                        \"path\": {\n" +\r
281                                 "                            \"$id\": \"#/properties/readinessprobe/httpget/path\",\n" +\r
282                                 "                            \"type\": \"string\",\n" +\r
283                                 "                            \"title\": \"The Path of Http Readiness Probe\",\n" +\r
284                                 "                            \"default\": \"/health\",\n" +\r
285                                 "                            \"examples\": [\n" +\r
286                                 "                                \"/health\"\n" +\r
287                                 "                            ]\n" +\r
288                                 "                        },\n" +\r
289                                 "                        \"port\": {\n" +\r
290                                 "                            \"$id\": \"#/properties/readinessprobe/httpget/port\",\n" +\r
291                                 "                            \"type\": \"integer\",\n" +\r
292                                 "                            \"title\": \"The Port of Http Readiness Probe\",\n" +\r
293                                 "                            \"default\": 80,\n" +\r
294                                 "                            \"examples\": [\n" +\r
295                                 "                                80\n" +\r
296                                 "                            ]\n" +\r
297                                 "                        }\n" +\r
298                                 "                    },\n" +\r
299                                 "                    \"required\": [\n" +\r
300                                 "                        \"path\",\n" +\r
301                                 "                        \"port\"\n" +\r
302                                 "                    ]\n" +\r
303                                 "                },\n" +\r
304                                 "                \"initialDelaySeconds\": {\n" +\r
305                                 "                    \"$id\": \"#/properties/readinessprobe/initialdelayseconds\",\n" +\r
306                                 "                    \"type\": \"integer\",\n" +\r
307                                 "                    \"title\": \"Initial Delay of Readiness Probe\",\n" +\r
308                                 "                    \"default\": 5,\n" +\r
309                                 "                    \"examples\": [\n" +\r
310                                 "                        5\n" +\r
311                                 "                    ]\n" +\r
312                                 "                },\n" +\r
313                                 "                \"periodSeconds\": {\n" +\r
314                                 "                    \"$id\": \"#/properties/readinessprobe/periodseconds\",\n" +\r
315                                 "                    \"type\": \"integer\",\n" +\r
316                                 "                    \"title\": \"Period of Readiness Probe\",\n" +\r
317                                 "                    \"default\": 15,\n" +\r
318                                 "                    \"examples\": [\n" +\r
319                                 "                        15\n" +\r
320                                 "                    ]\n" +\r
321                                 "                }\n" +\r
322                                 "            },\n" +\r
323                                 "            \"oneOf\": [\n" +\r
324                                 "                {\n" +\r
325                                 "                    \"$id\": \"#/properties/readinessprobe/oneof/exec\",\n" +\r
326                                 "                    \"required\": [\n" +\r
327                                 "                        \"exec\",\n" +\r
328                                 "                        \"initialDelaySeconds\",\n" +\r
329                                 "                        \"periodSeconds\"\n" +\r
330                                 "                    ]\n" +\r
331                                 "                },\n" +\r
332                                 "                {\n" +\r
333                                 "                    \"$id\": \"#/properties/readinessprobe/oneof/httpget\",\n" +\r
334                                 "                    \"required\": [\n" +\r
335                                 "                        \"httpGet\",\n" +\r
336                                 "                        \"initialDelaySeconds\",\n" +\r
337                                 "                        \"periodSeconds\"\n" +\r
338                                 "                    ]\n" +\r
339                                 "                }\n" +\r
340                                 "            ]\n" +\r
341                                 "        },\n" +\r
342                                 "        \"messaging\": {\n" +\r
343                                 "            \"type\": \"object\",\n" +\r
344                                 "            \"$id\": \"#/properties/messaging\",\n" +\r
345                                 "            \"title\": \"The Messaging Schema\",\n" +\r
346                                 "            \"properties\": {\n" +\r
347                                 "                \"ports\": {\n" +\r
348                                 "                    \"$id\": \"#/properties/messaging/ports\",\n" +\r
349                                 "                    \"type\": \"array\",\n" +\r
350                                 "                    \"title\": \"The Ports for Messaging\",\n" +\r
351                                 "                    \"items\": {\n" +\r
352                                 "                        \"$id\": \"#/properties/messaging/ports/items\",\n" +\r
353                                 "                        \"type\": \"object\",\n" +\r
354                                 "                        \"title\": \"The Item of Port\",\n" +\r
355                                 "                        \"required\": [\n" +\r
356                                 "                            \"name\",\n" +\r
357                                 "                            \"container\",\n" +\r
358                                 "                            \"port\"\n" +\r
359                                 "                        ],\n" +\r
360                                 "                        \"dependencies\": {\n" +\r
361                                 "                            \"txMessages\": [\n" +\r
362                                 "                                \"rxMessages\",\n" +\r
363                                 "                                \"policies\"\n" +\r
364                                 "                            ],\n" +\r
365                                 "                            \"rxMessages\": [\n" +\r
366                                 "                                \"txMessages\",\n" +\r
367                                 "                                \"policies\"\n" +\r
368                                 "                            ],\n" +\r
369                                 "                            \"policies\": [\n" +\r
370                                 "                                \"rxMessages\",\n" +\r
371                                 "                                \"txMessages\"\n" +\r
372                                 "                            ]\n" +\r
373                                 "                        },\n" +\r
374                                 "                        \"properties\": {\n" +\r
375                                 "                            \"name\": {\n" +\r
376                                 "                                \"$id\": \"#/properties/messaging/ports/items/name\",\n" +\r
377                                 "                                \"type\": \"string\",\n" +\r
378                                 "                                \"title\": \"The Name of the Port\",\n" +\r
379                                 "                                \"default\": \"App\",\n" +\r
380                                 "                                \"examples\": [\n" +\r
381                                 "                                    \"App\"\n" +\r
382                                 "                                ]\n" +\r
383                                 "                            },\n" +\r
384                                 "                            \"container\": {\n" +\r
385                                 "                                \"$id\": \"#/properties/messaging/ports/items/container\",\n" +\r
386                                 "                                \"type\": \"string\",\n" +\r
387                                 "                                \"title\": \"The Container of the Port\",\n" +\r
388                                 "                                \"default\": \"xapp\",\n" +\r
389                                 "                                \"examples\": [\n" +\r
390                                 "                                    \"xapp\"\n" +\r
391                                 "                                ]\n" +\r
392                                 "                            },\n" +\r
393                                 "                            \"port\": {\n" +\r
394                                 "                                \"$id\": \"#/properties/messaging/ports/items/port\",\n" +\r
395                                 "                                \"type\": \"integer\",\n" +\r
396                                 "                                \"title\": \"The Port Number\",\n" +\r
397                                 "                                \"default\": 8080,\n" +\r
398                                 "                                \"examples\": [\n" +\r
399                                 "                                    8080\n" +\r
400                                 "                                ]\n" +\r
401                                 "                            },\n" +\r
402                                 "                            \"description\": {\n" +\r
403                                 "                                \"$id\": \"#/properties/messaging/ports/items/description\",\n" +\r
404                                 "                                \"type\": \"string\",\n" +\r
405                                 "                                \"title\": \"The description for the port\",\n" +\r
406                                 "                                \"default\": \"port description\",\n" +\r
407                                 "                                \"examples\": [\n" +\r
408                                 "                                    \"port description\"\n" +\r
409                                 "                                ]\n" +\r
410                                 "                            },\n" +\r
411                                 "                            \"txMessages\": {\n" +\r
412                                 "                                \"$id\": \"#/properties/messaging/ports/items/txmessages\",\n" +\r
413                                 "                                \"type\": \"array\",\n" +\r
414                                 "                                \"title\": \"The txMessage Types\",\n" +\r
415                                 "                                \"items\": {\n" +\r
416                                 "                                    \"$id\": \"#/properties/messaging/ports/items//txmessages/item\",\n" +\r
417                                 "                                    \"type\": \"string\",\n" +\r
418                                 "                                    \"title\": \"The txMessage Types Item\",\n" +\r
419                                 "                                    \"default\": \"RIC_SUB\",\n" +\r
420                                 "                                    \"examples\": [\n" +\r
421                                 "                                        \"RIC_SUB\"\n" +\r
422                                 "                                    ]\n" +\r
423                                 "                                }\n" +\r
424                                 "                            },\n" +\r
425                                 "                            \"rxMessages\": {\n" +\r
426                                 "                                \"$id\": \"#/properties/messaging/ports/items/rxmessages\",\n" +\r
427                                 "                                \"type\": \"array\",\n" +\r
428                                 "                                \"title\": \"The rxMessage Types\",\n" +\r
429                                 "                                \"items\": {\n" +\r
430                                 "                                    \"$id\": \"#/properties/messaging/ports/items/rxmessages/item\",\n" +\r
431                                 "                                    \"type\": \"string\",\n" +\r
432                                 "                                    \"title\": \"The rxMessage Types Item\",\n" +\r
433                                 "                                    \"default\": \"RIC_SUB\",\n" +\r
434                                 "                                    \"examples\": [\n" +\r
435                                 "                                        \"RIC_SUB\"\n" +\r
436                                 "                                    ]\n" +\r
437                                 "                                }\n" +\r
438                                 "                            },\n" +\r
439                                 "                            \"policies\": {\n" +\r
440                                 "                                \"$id\": \"#/properties/messaging/ports/items/policies\",\n" +\r
441                                 "                                \"type\": \"array\",\n" +\r
442                                 "                                \"title\": \"The Policies Types\",\n" +\r
443                                 "                                \"items\": {\n" +\r
444                                 "                                    \"$id\": \"#/properties/messaging/ports/items/policies/item\",\n" +\r
445                                 "                                    \"type\": \"integer\",\n" +\r
446                                 "                                    \"title\": \"The Policy Types Item\",\n" +\r
447                                 "                                    \"default\": 1,\n" +\r
448                                 "                                    \"examples\": [\n" +\r
449                                 "                                        1\n" +\r
450                                 "                                    ]\n" +\r
451                                 "                                }\n" +\r
452                                 "                            }\n" +\r
453                                 "                        }\n" +\r
454                                 "                    }\n" +\r
455                                 "                }\n" +\r
456                                 "            },\n" +\r
457                                 "            \"required\": [\n" +\r
458                                 "                \"ports\"\n" +\r
459                                 "            ]\n" +\r
460                                 "        },\n" +\r
461                                 "        \"metrics\": {\n" +\r
462                                 "            \"type\": \"object\",\n" +\r
463                                 "            \"$id\": \"#/properties/metrics\",\n" +\r
464                                 "            \"title\": \"The Metrics Schema\",\n" +\r
465                                 "            \"items\": {\n" +\r
466                                 "                \"$id\": \"#/properties/metrics/items\",\n" +\r
467                                 "                \"type\": \"object\",\n" +\r
468                                 "                \"title\": \"The Metrics Items Schema\",\n" +\r
469                                 "                \"required\": [\n" +\r
470                                 "                    \"objectName\",\n" +\r
471                                 "                    \"objectInstance\",\n" +\r
472                                 "                    \"name\",\n" +\r
473                                 "                    \"type\",\n" +\r
474                                 "                    \"description\"\n" +\r
475                                 "                ],\n" +\r
476                                 "                \"properties\": {\n" +\r
477                                 "                    \"objectName\": {\n" +\r
478                                 "                        \"$id\": \"#/properties/metrics/items/objectname\",\n" +\r
479                                 "                        \"type\": \"string\",\n" +\r
480                                 "                        \"title\": \"The Object Name\"\n" +\r
481                                 "                    },\n" +\r
482                                 "                    \"objectInstance\": {\n" +\r
483                                 "                        \"$id\": \"#/properties/metrics/items/objectinstance\",\n" +\r
484                                 "                        \"type\": \"string\",\n" +\r
485                                 "                        \"title\": \"The Object Instance\"\n" +\r
486                                 "                    },\n" +\r
487                                 "                    \"name\": {\n" +\r
488                                 "                        \"$id\": \"#/properties/metrics/items/name\",\n" +\r
489                                 "                        \"type\": \"string\",\n" +\r
490                                 "                        \"title\": \"The Object Name\"\n" +\r
491                                 "                    },\n" +\r
492                                 "                    \"type\": {\n" +\r
493                                 "                        \"$id\": \"#/properties/metrics/items/type\",\n" +\r
494                                 "                        \"type\": \"string\",\n" +\r
495                                 "                        \"title\": \"The Object Type\"\n" +\r
496                                 "                    },\n" +\r
497                                 "                    \"description\": {\n" +\r
498                                 "                        \"$id\": \"#/properties/metrics/items/description\",\n" +\r
499                                 "                        \"type\": \"string\",\n" +\r
500                                 "                        \"title\": \"The Object Description\"\n" +\r
501                                 "                    }\n" +\r
502                                 "                }\n" +\r
503                                 "            }\n" +\r
504                                 "        },\n" +\r
505                                 "        \"controls\": {\n" +\r
506                                 "            \"$schema\": \"http://json-schema.org/draft-07/schema#\",\n" +\r
507                                 "            \"$id\": \"#/controls\",\n" +\r
508                                 "            \"type\": \"object\",\n" +\r
509                                 "            \"title\": \"Controls Section Schema\",\n" +\r
510                                 "            \"required\": [],\n" +\r
511                                 "            \"properties\": {}\n" +\r
512                                 "        }\n" +\r
513                                 "    }\n" +\r
514                                 "}\n" +\r
515                                 "",\r
516                         "config-file.json": "{\n" +\r
517                                 "    \"name\": \"hw-go\",\n" +\r
518                                 "    \"version\": \"1.0.0\",\n" +\r
519                                 "    \"containers\": [{\"image\":{\"name\":\"o-ran-sc/ric-app-hw-go\",\"registry\":\"nexus3.o-ran-sc.org:10004\",\"tag\":\"1.1.1\"},\"name\":\"hw-go\"}],\n" +\r
520                                 "    \"livenessProbe\": {\n" +\r
521                                 "        \"httpGet\": {\n" +\r
522                                 "            \"path\": \"ric/v1/health/alive\",\n" +\r
523                                 "            \"port\": 8080\n" +\r
524                                 "        },\n" +\r
525                                 "        \"initialDelaySeconds\": 5,\n" +\r
526                                 "        \"periodSeconds\": 15\n" +\r
527                                 "    },\n" +\r
528                                 "    \"readinessProbe\": {\n" +\r
529                                 "        \"httpGet\": {\n" +\r
530                                 "            \"path\": \"ric/v1/health/ready\",\n" +\r
531                                 "            \"port\": 8080\n" +\r
532                                 "        },\n" +\r
533                                 "        \"initialDelaySeconds\": 5,\n" +\r
534                                 "        \"periodSeconds\": 15\n" +\r
535                                 "    },\n" +\r
536                                 "    \"messaging\": {\n" +\r
537                                 "        \"ports\": [{\"container\":\"hw-go\",\"description\":\"http service\",\"name\":\"http\",\"port\":8080},{\"container\":\"hw-go\",\"description\":\"rmr route port for hw-go xapp\",\"name\":\"rmrroute\",\"port\":4561},{\"container\":\"hw-go\",\"description\":\"rmr data port for hw-go\",\"mtypes\":[{\"id\":55555,\"name\":\"TESTNAME1\"},{\"id\":55556,\"name\":\"TESTNAME2\"}],\"name\":\"rmrdata\",\"policies\":[1],\"port\":4560,\"rxMessages\":[\"RIC_SUB_RESP\",\"RIC_SUB_FAILURE\",\"RIC_SUB_DEL_RESP\",\"RIC_INDICATION\"],\"txMessages\":[\"RIC_SUB_REQ\",\"RIC_SUB_DEL_REQ\",\"RIC_SGNB_ADDITION_REQ\",\"RIC_SGNB_ADDITION_ACK\"]}]\n" +\r
538                                 "    },\n" +\r
539                                 "    \"rmr\": {\n" +\r
540                                 "        \"protPort\": \"tcp:4560\",\n" +\r
541                                 "        \"maxSize\": 2072,\n" +\r
542                                 "        \"numWorkers\": 1,\n" +\r
543                                 "        \"txMessages\": [\"RIC_SUB_REQ\",\"A1_POLICY_RESP\",\"A1_POLICY_QUERY\",\"RIC_HEALTH_CHECK_RESP\"],\n" +\r
544                                 "        \"rxMessages\": [\"RIC_SUB_RESP\",\"A1_POLICY_REQ\",\"RIC_HEALTH_CHECK_REQ\"],\n" +\r
545                                 "        \"policies\": [1]\n" +\r
546                                 "    },\n" +\r
547                                 "    \"controls\": {\n" +\r
548                                 "        \"fileStrorage\": false,\n" +\r
549                                 "        \"logger\": {\n" +\r
550                                 "            \"level\": 3\n" +\r
551                                 "        }\n" +\r
552                                 "    },\n" +\r
553                                 "    \"db\": {\n" +\r
554                                 "        \"waitForSdl\": false\n" +\r
555                                 "    }\n" +\r
556                                 "}\n" +\r
557                                 "",\r
558                 },\r
559                 ObjectMeta: metav1.ObjectMeta{\r
560                         Name: "configmap-ricplt-hw-go-appconfig",\r
561                 },\r
562         }\r
563 \r
564         configMap2 := &corev1.ConfigMap{\r
565                 ObjectMeta: metav1.ObjectMeta{\r
566                         Name: "configmap-ricplt-hw-go-appenv",\r
567                 },\r
568                 TypeMeta: metav1.TypeMeta{\r
569                         Kind:       "ConfigMap",\r
570                         APIVersion: "v1",\r
571                 },\r
572                 Data: map[string]string{\r
573                         "XAPP_DESCRIPTOR_PATH":     "/opt/ric/config",\r
574                         "DBAAS_PORT_6379_TCP_ADDR": "service-ricplt-dbaas-tcp.ricplt.svc.cluster.local",\r
575                         "RMR_SRC_ID":               "service-ricplt-hw-go-rmr.ricplt",\r
576                         "DBAAS_SERVICE_PORT":       "6379",\r
577                         "RMR_RTG_SVC":              "4561",\r
578                         "SERVICE_METRICSDB_HOST":   "service-metricsdb.ricplt.svc.cluster.local",\r
579                         "SERVICE_METRICSDB_PORT":   "8086",\r
580                         "DBAAS_PORT_6379_TCP_PORT": "6379",\r
581                         "DBAAS_SERVICE_HOST":       "service-ricplt-dbaas-tcp.ricplt.svc.cluster.local",\r
582                 },\r
583         }\r
584 \r
585         return []*corev1.ConfigMap{configMap1, configMap2}\r
586 }\r