1 ################################################################################
2 # Copyright (c) 2020 AT&T Intellectual Property. #
4 # Licensed under the Apache License, Version 2.0 (the "License"); #
5 # you may not use this file except in compliance with the License. #
6 # You may obtain a copy of the License at #
8 # http://www.apache.org/licenses/LICENSE-2.0 #
10 # Unless required by applicable law or agreed to in writing, software #
11 # distributed under the License is distributed on an "AS IS" BASIS, #
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
13 # See the License for the specific language governing permissions and #
14 # limitations under the License. #
15 ################################################################################
18 "$schema": "http://json-schema.org/draft-07/schema#",
19 "$id": "http://o-ran-sc.org/xapp_root.json",
21 "title": "The xApp Root Schema",
24 "$id": "#/properties/name",
26 "title": "The xApp Name",
33 "$id": "#/properties/version",
35 "title": "The xApp version",
40 "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-]+)*))?$"
43 "$id": "#/properties/annotation",
45 "title": "The k8s pod annotation",
46 "additionalProperties": {
59 "$id": "#/properties/containers",
61 "title": "The Container Schema",
63 "$id": "#/properties/containers/items",
65 "title": "The Container Items Schema",
72 "$id": "#/properties/containers/items/properties/name",
74 "title": "The xApp Container Name",
81 "$id": "#/properties/containers/items/properties/image",
83 "title": "The Container Image",
91 "$id": "#/properties/containers/items/properties/image/properties/registry",
93 "title": "The xApp Image Registry",
94 "default": "nexus3.o-ran-sc.org:10002",
96 "nexus3.o-ran-sc.org:10002"
98 "pattern": "^[A-Za-z0-9\\.-]{1,}\\.[A-Za-z]{1,}(?:\\:\\d+)?$"
101 "$id": "#/properties/containers/items/properties/image/properties/name",
103 "title": "The xApp Image Name",
110 "$id": "#/properties/containers/items/properties/image/properties/tag",
112 "title": "The xApp Image Tag",
121 "$id": "#/properties/containers/items/properties/command",
125 "$id": "#/properties/containers/items/properties/command/item",
127 "title": "The Command Item",
128 "default": "/bin/sh",
136 "$id": "#/properties/containers/items/properties/args",
140 "$id": "#/properties/containers/items/properties/args/item",
142 "title": "The Command Arguement Item",
154 "$id": "#/properties/livenessprobe",
156 "title": "The Liveness Probe Definition",
159 "$id": "#/properties/livenessprobe/exec",
161 "title": "Script of Liveness Probe",
164 "$id": "#/properties/livenessprobe/exec/command",
168 "$id": "#/properties/livenessprobe/exec/command/item",
170 "title": "The Command Item",
171 "default": "/bin/sh",
184 "$id": "#/properties/livenessprobe/httpget",
186 "title": "Http of Liveness Probe",
189 "$id": "#/properties/livenessprobe/httpget/path",
191 "title": "The Path of Http Liveness Probe",
192 "default": "/health",
198 "$id": "#/properties/livenessprobe/httpget/port",
200 "title": "The Port of Http Liveness Probe",
212 "initialDelaySeconds": {
213 "$id": "#/properties/livenessprobe/initialdelayseconds",
215 "title": "Initial Delay of Liveness Probe",
222 "$id": "#/properties/livenessprobe/periodseconds",
224 "title": "Period of Liveness Probe",
233 "$id": "#/properties/livenessprobe/oneof/exec",
234 "required": ["exec", "initialDelaySeconds", "periodSeconds"]
237 "$id": "#/properties/livenessprobe/oneof/httpget",
238 "required": ["httpGet", "initialDelaySeconds", "periodSeconds"]
243 "$id": "#/properties/readinessprobe",
245 "title": "The Readiness Probe Definition",
248 "$id": "#/properties/readinessprobe/exec",
250 "title": "Script of Readiness Probe",
253 "$id": "#/properties/readinessprobe/exec/command",
267 "$id": "#/properties/readinessprobe/httpget",
269 "title": "Http of Readiness Probe",
272 "$id": "#/properties/readinessprobe/httpget/path",
274 "title": "The Path of Http Readiness Probe",
275 "default": "/health",
281 "$id": "#/properties/readinessprobe/httpget/port",
283 "title": "The Port of Http Readiness Probe",
295 "initialDelaySeconds": {
296 "$id": "#/properties/readinessprobe/initialdelayseconds",
298 "title": "Initial Delay of Readiness Probe",
305 "$id": "#/properties/readinessprobe/periodseconds",
307 "title": "Period of Readiness Probe",
316 "$id": "#/properties/readinessprobe/oneof/exec",
317 "required": ["exec", "initialDelaySeconds", "periodSeconds"]
320 "$id": "#/properties/readinessprobe/oneof/httpget",
321 "required": ["httpGet", "initialDelaySeconds", "periodSeconds"]
327 "$id": "#/properties/messaging",
328 "title": "The Messaging Schema",
331 "$id": "#/properties/messaging/ports",
333 "title": "The Ports for Messaging",
335 "$id": "#/properties/messaging/ports/items",
337 "title": "The Item of Port",
338 "required": ["name", "container", "port"],
340 "txMessages": ["rxMessages", "policies"],
341 "rxMessages": ["txMessages", "policies"],
342 "policies": ["rxMessages", "txMessages"]
346 "$id": "#/properties/messaging/ports/items/name",
348 "title": "The Name of the Port",
355 "$id": "#/properties/messaging/ports/items/container",
357 "title": "The Container of the Port",
364 "$id": "#/properties/messaging/ports/items/port",
366 "title": "The Port Number",
373 "$id": "#/properties/messaging/ports/items/description",
375 "title": "The description for the port",
376 "default": "port description",
382 "$id": "#/properties/messaging/ports/items/txmessages",
384 "title": "The txMessage Types",
386 "$id": "#/properties/messaging/ports/items//txmessages/item",
388 "title": "The txMessage Types Item",
389 "default": "RIC_SUB",
396 "$id": "#/properties/messaging/ports/items/rxmessages",
398 "title": "The rxMessage Types",
400 "$id": "#/properties/messaging/ports/items/rxmessages/item",
402 "title": "The rxMessage Types Item",
403 "default": "RIC_SUB",
410 "$id": "#/properties/messaging/ports/items/policies",
412 "title": "The Policies Types",
414 "$id": "#/properties/messaging/ports/items/policies/item",
416 "title": "The Policy Types Item",
434 "$id": "#/properties/metrics",
435 "title": "The Metrics Schema",
437 "$id": "#/properties/metrics/items",
439 "title": "The Metrics Items Schema",
449 "$id": "#/properties/metrics/items/objectname",
451 "title": "The Object Name"
454 "$id": "#/properties/metrics/items/objectinstance",
456 "title": "The Object Instance"
459 "$id": "#/properties/metrics/items/name",
461 "title": "The Object Name"
464 "$id": "#/properties/metrics/items/type",
466 "title": "The Object Type"
469 "$id": "#/properties/metrics/items/description",
471 "title": "The Object Description"
478 "__empty_control_section__"