4 corev1 "k8s.io/api/core/v1"
\r
5 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
\r
8 func GetConfigMap() []*corev1.ConfigMap {
\r
10 configMap1 := &corev1.ConfigMap{
\r
11 TypeMeta: metav1.TypeMeta{
\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
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
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
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
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
48 " \"type\": \"string\"\n" +
\r
51 " \"type\": \"array\",\n" +
\r
53 " \"type\": \"object\"\n" +
\r
59 " \"containers\": {\n" +
\r
60 " \"$id\": \"#/properties/containers\",\n" +
\r
61 " \"type\": \"array\",\n" +
\r
62 " \"title\": \"The Container Schema\",\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
71 " \"properties\": {\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
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
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
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
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
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
121 " \"command\": {\n" +
\r
122 " \"$id\": \"#/properties/containers/items/properties/command\",\n" +
\r
123 " \"type\": \"array\",\n" +
\r
124 " \"items\": [\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
137 " \"$id\": \"#/properties/containers/items/properties/args\",\n" +
\r
138 " \"type\": \"array\",\n" +
\r
139 " \"items\": [\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
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
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
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
180 " \"required\": [\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
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
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
208 " \"required\": [\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
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
232 " \"oneOf\": [\n" +
\r
234 " \"$id\": \"#/properties/livenessprobe/oneof/exec\",\n" +
\r
235 " \"required\": [\n" +
\r
237 " \"initialDelaySeconds\",\n" +
\r
238 " \"periodSeconds\"\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
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
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
266 " \"type\": \"string\"\n" +
\r
271 " \"required\": [\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
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
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
299 " \"required\": [\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
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
323 " \"oneOf\": [\n" +
\r
325 " \"$id\": \"#/properties/readinessprobe/oneof/exec\",\n" +
\r
326 " \"required\": [\n" +
\r
328 " \"initialDelaySeconds\",\n" +
\r
329 " \"periodSeconds\"\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
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
357 " \"container\",\n" +
\r
360 " \"dependencies\": {\n" +
\r
361 " \"txMessages\": [\n" +
\r
362 " \"rxMessages\",\n" +
\r
363 " \"policies\"\n" +
\r
365 " \"rxMessages\": [\n" +
\r
366 " \"txMessages\",\n" +
\r
367 " \"policies\"\n" +
\r
369 " \"policies\": [\n" +
\r
370 " \"rxMessages\",\n" +
\r
371 " \"txMessages\"\n" +
\r
374 " \"properties\": {\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
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
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
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
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
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
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
457 " \"required\": [\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
474 " \"description\"\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
482 " \"objectInstance\": {\n" +
\r
483 " \"$id\": \"#/properties/metrics/items/objectinstance\",\n" +
\r
484 " \"type\": \"string\",\n" +
\r
485 " \"title\": \"The Object Instance\"\n" +
\r
488 " \"$id\": \"#/properties/metrics/items/name\",\n" +
\r
489 " \"type\": \"string\",\n" +
\r
490 " \"title\": \"The Object Name\"\n" +
\r
493 " \"$id\": \"#/properties/metrics/items/type\",\n" +
\r
494 " \"type\": \"string\",\n" +
\r
495 " \"title\": \"The Object Type\"\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
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
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
525 " \"initialDelaySeconds\": 5,\n" +
\r
526 " \"periodSeconds\": 15\n" +
\r
528 " \"readinessProbe\": {\n" +
\r
529 " \"httpGet\": {\n" +
\r
530 " \"path\": \"ric/v1/health/ready\",\n" +
\r
531 " \"port\": 8080\n" +
\r
533 " \"initialDelaySeconds\": 5,\n" +
\r
534 " \"periodSeconds\": 15\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
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
547 " \"controls\": {\n" +
\r
548 " \"fileStrorage\": false,\n" +
\r
549 " \"logger\": {\n" +
\r
550 " \"level\": 3\n" +
\r
554 " \"waitForSdl\": false\n" +
\r
559 ObjectMeta: metav1.ObjectMeta{
\r
560 Name: "configmap-ricplt-hw-go-appconfig",
\r
564 configMap2 := &corev1.ConfigMap{
\r
565 ObjectMeta: metav1.ObjectMeta{
\r
566 Name: "configmap-ricplt-hw-go-appenv",
\r
568 TypeMeta: metav1.TypeMeta{
\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
585 return []*corev1.ConfigMap{configMap1, configMap2}
\r