CLAMP should not display all CDS workflow properties
[clamp.git] / src / test / resources / tosca / operational-policy-json-schema.json
1 {
2   "type": "object",
3   "title": "Configuration",
4   "required": [
5     "operational_policy"
6   ],
7   "properties": {
8     "operational_policy": {
9       "type": "object",
10       "title": "Related Parameters",
11       "required": [
12         "controlLoop",
13         "policies"
14       ],
15       "properties": {
16         "controlLoop": {
17           "type": "object",
18           "title": "Control Loop details",
19           "required": [
20             "timeout",
21             "abatement",
22             "trigger_policy",
23             "controlLoopName"
24           ],
25           "properties": {
26             "timeout": {
27               "type": "string",
28               "title": "Overall Time Limit",
29               "default": "0",
30               "format": "number"
31             },
32             "abatement": {
33               "type": "string",
34               "title": "Abatement",
35               "enum": [
36                 "True",
37                 "False"
38               ]
39             },
40             "trigger_policy": {
41               "type": "string",
42               "title": "Policy Decision Entry"
43             },
44             "controlLoopName": {
45               "type": "string",
46               "title": "Control loop name",
47               "readOnly": "True"
48             }
49           }
50         },
51         "policies": {
52           "uniqueItems": "true",
53           "id": "policies_array",
54           "type": "array",
55           "title": "Policy Decision Tree",
56           "format": "tabs-top",
57           "items": {
58             "title": "Policy Decision",
59             "type": "object",
60             "id": "policy_item",
61             "headerTemplate": "{{self.id}} - {{self.recipe}}",
62             "format": "categories",
63             "basicCategoryTitle": "recipe",
64             "required": [
65               "id",
66               "retry",
67               "timeout",
68               "actor",
69               "success",
70               "failure",
71               "failure_timeout",
72               "failure_retries",
73               "failure_exception",
74               "failure_guard",
75               "target"
76             ],
77             "properties": {
78               "id": {
79                 "default": "Policy 1",
80                 "title": "Policy ID",
81                 "type": "string"
82               },
83               "retry": {
84                 "default": "0",
85                 "title": "Number of Retry",
86                 "type": "string",
87                 "format": "number"
88               },
89               "timeout": {
90                 "default": "0",
91                 "title": "Timeout",
92                 "type": "string",
93                 "format": "number"
94               },
95               "actor": {
96                 "type": "object",
97                 "title": "Actor",
98                 "anyOf": [
99                   {
100                     "title": "APPC",
101                     "type": "object",
102                     "properties": {
103                       "actor": {
104                         "title": "actor",
105                         "type": "string",
106                         "default": "APPC",
107                         "options": {
108                           "hidden": true
109                         }
110                       },
111                       "recipe": {
112                         "title": "recipe",
113                         "type": "string",
114                         "default": "",
115                         "enum": [
116                           "Restart",
117                           "Rebuild",
118                           "Migrate",
119                           "Health-Check",
120                           "ModifyConfig"
121                         ]
122                       },
123                       "payload": {
124                         "title": "Payload (YAML)",
125                         "type": "string",
126                         "format": "textarea"
127                       }
128                     }
129                   },
130                   {
131                     "title": "SO",
132                     "type": "object",
133                     "properties": {
134                       "actor": {
135                         "title": "actor",
136                         "type": "string",
137                         "default": "SO",
138                         "options": {
139                           "hidden": true
140                         }
141                       },
142                       "recipe": {
143                         "title": "recipe",
144                         "type": "string",
145                         "default": "",
146                         "enum": [
147                           "VF Module Create",
148                           "VF Module Delete"
149                         ]
150                       },
151                       "payload": {
152                         "title": "Payload (YAML)",
153                         "type": "string",
154                         "format": "textarea"
155                       }
156                     }
157                   },
158                   {
159                     "title": "SDNC",
160                     "type": "object",
161                     "properties": {
162                       "actor": {
163                         "title": "actor",
164                         "type": "string",
165                         "default": "SDNC",
166                         "options": {
167                           "hidden": true
168                         }
169                       },
170                       "recipe": {
171                         "title": "recipe",
172                         "type": "string",
173                         "default": "",
174                         "enum": [
175                           "Reroute",
176                           "BandwidthOnDemand"
177                         ]
178                       },
179                       "payload": {
180                         "title": "Payload (YAML)",
181                         "type": "string",
182                         "format": "textarea"
183                       }
184                     }
185                   },
186                   {
187                     "title": "VFC",
188                     "type": "object",
189                     "properties": {
190                       "actor": {
191                         "title": "actor",
192                         "type": "string",
193                         "default": "VFC",
194                         "options": {
195                           "hidden": true
196                         }
197                       },
198                       "recipe": {
199                         "title": "recipe",
200                         "type": "string",
201                         "default": "",
202                         "enum": [
203                           "ModifyConfig"
204                         ]
205                       },
206                       "payload": {
207                         "title": "Payload (YAML)",
208                         "type": "string",
209                         "format": "textarea"
210                       }
211                     }
212                   },
213                   {
214                     "title": "CDS",
215                     "type": "object",
216                     "properties": {
217                       "actor": {
218                         "title": "actor",
219                         "type": "string",
220                         "default": "CDS",
221                         "options": {
222                           "hidden": true
223                         }
224                       },
225                       "recipe": {
226                         "title": "recipe",
227                         "type": "object",
228                         "anyOf": [
229                           {
230                             "title": "user-defined",
231                             "type": "object",
232                             "properties": {
233                               "recipe": {
234                                 "title": "recipe",
235                                 "type": "string",
236                                 "default": "user-defined",
237                                 "format": "textarea"
238                               },
239                               "payload": {
240                                 "title": "Payload (YAML)",
241                                 "type": "string",
242                                 "default": "",
243                                 "format": "textarea"
244                               }
245                             }
246                           },
247                           {
248                             "title": "resource-assignment",
249                             "type": "object",
250                             "properties": {
251                               "recipe": {
252                                 "title": "recipe",
253                                 "type": "string",
254                                 "default": "resource-assignment",
255                                 "options": {
256                                   "hidden": true
257                                 }
258                               },
259                               "payload": {
260                                 "title": "Payload",
261                                 "type": "object",
262                                 "properties": {
263                                   "artifact_name": {
264                                     "title": "artifact name",
265                                     "type": "string",
266                                     "default": "baseconfiguration",
267                                     "readOnly": "True"
268                                   },
269                                   "artifact_version": {
270                                     "title": "artifact version",
271                                     "type": "string",
272                                     "default": "1.0.0",
273                                     "readOnly": "True"
274                                   },
275                                   "mode": {
276                                     "title": "mode",
277                                     "type": "string",
278                                     "default": "async"
279                                   },
280                                   "data": {
281                                     "title": "data",
282                                     "properties": {
283                                       "request-id": {
284                                         "title": "request-id",
285                                         "type": "string"
286                                       },
287                                       "service-instance-id": {
288                                         "title": "service-instance-id",
289                                         "type": "string"
290                                       },
291                                       "hostname": {
292                                         "title": "hostname",
293                                         "type": "string"
294                                       },
295                                       "request-info": {
296                                         "title": "request-info",
297                                         "type": "object",
298                                         "properties": {
299                                           "prop1": {
300                                             "title": "prop1",
301                                             "type": "string"
302                                           },
303                                           "prop2": {
304                                             "title": "prop2",
305                                             "type": "string"
306                                           }
307                                         }
308                                       }
309                                     }
310                                   }
311                                 }
312                               }
313                             }
314                           },
315                           {
316                             "title": "activate",
317                             "type": "object",
318                             "properties": {
319                               "recipe": {
320                                 "title": "recipe",
321                                 "type": "string",
322                                 "default": "activate",
323                                 "options": {
324                                   "hidden": true
325                                 }
326                               },
327                               "payload": {
328                                 "title": "Payload",
329                                 "type": "object",
330                                 "properties": {
331                                   "artifact_name": {
332                                     "title": "artifact name",
333                                     "type": "string",
334                                     "default": "baseconfiguration",
335                                     "readOnly": "True"
336                                   },
337                                   "artifact_version": {
338                                     "title": "artifact version",
339                                     "type": "string",
340                                     "default": "1.0.0",
341                                     "readOnly": "True"
342                                   },
343                                   "mode": {
344                                     "title": "mode",
345                                     "type": "string",
346                                     "default": "async"
347                                   },
348                                   "data": {
349                                     "title": "data",
350                                     "properties": {
351                                       "request-id": {
352                                         "title": "request-id",
353                                         "type": "string"
354                                       },
355                                       "service-instance-id": {
356                                         "title": "service-instance-id",
357                                         "type": "string"
358                                       },
359                                       "hostname": {
360                                         "title": "hostname",
361                                         "type": "string"
362                                       },
363                                       "request-info": {
364                                         "title": "request-info",
365                                         "type": "object",
366                                         "properties": {
367                                           "prop1": {
368                                             "title": "prop1",
369                                             "type": "string"
370                                           },
371                                           "prop2": {
372                                             "title": "prop2",
373                                             "type": "string"
374                                           }
375                                         }
376                                       }
377                                     }
378                                   }
379                                 }
380                               }
381                             }
382                           },
383                           {
384                             "title": "activate-restconf",
385                             "type": "object",
386                             "properties": {
387                               "recipe": {
388                                 "title": "recipe",
389                                 "type": "string",
390                                 "default": "activate-restconf",
391                                 "options": {
392                                   "hidden": true
393                                 }
394                               },
395                               "payload": {
396                                 "title": "Payload",
397                                 "type": "object",
398                                 "properties": {
399                                   "artifact_name": {
400                                     "title": "artifact name",
401                                     "type": "string",
402                                     "default": "baseconfiguration",
403                                     "readOnly": "True"
404                                   },
405                                   "artifact_version": {
406                                     "title": "artifact version",
407                                     "type": "string",
408                                     "default": "1.0.0",
409                                     "readOnly": "True"
410                                   },
411                                   "mode": {
412                                     "title": "mode",
413                                     "type": "string",
414                                     "default": "async"
415                                   },
416                                   "data": {
417                                     "title": "data",
418                                     "properties": {
419                                       "request-id": {
420                                         "title": "request-id",
421                                         "type": "string"
422                                       },
423                                       "service-instance-id": {
424                                         "title": "service-instance-id",
425                                         "type": "string"
426                                       },
427                                       "hostname": {
428                                         "title": "hostname",
429                                         "type": "string"
430                                       },
431                                       "request-info": {
432                                         "title": "request-info",
433                                         "type": "object",
434                                         "properties": {
435                                           "prop1": {
436                                             "title": "prop1",
437                                             "type": "string"
438                                           },
439                                           "prop2": {
440                                             "title": "prop2",
441                                             "type": "string"
442                                           }
443                                         }
444                                       }
445                                     }
446                                   }
447                                 }
448                               }
449                             }
450                           },
451                           {
452                             "title": "activate-cli",
453                             "type": "object",
454                             "properties": {
455                               "recipe": {
456                                 "title": "recipe",
457                                 "type": "string",
458                                 "default": "activate-cli",
459                                 "options": {
460                                   "hidden": true
461                                 }
462                               },
463                               "payload": {
464                                 "title": "Payload",
465                                 "type": "object",
466                                 "properties": {
467                                   "artifact_name": {
468                                     "title": "artifact name",
469                                     "type": "string",
470                                     "default": "baseconfiguration",
471                                     "readOnly": "True"
472                                   },
473                                   "artifact_version": {
474                                     "title": "artifact version",
475                                     "type": "string",
476                                     "default": "1.0.0",
477                                     "readOnly": "True"
478                                   },
479                                   "mode": {
480                                     "title": "mode",
481                                     "type": "string",
482                                     "default": "async"
483                                   },
484                                   "data": {
485                                     "title": "data",
486                                     "properties": {
487                                       "request-id": {
488                                         "title": "request-id",
489                                         "type": "string"
490                                       },
491                                       "service-instance-id": {
492                                         "title": "service-instance-id",
493                                         "type": "string"
494                                       },
495                                       "hostname": {
496                                         "title": "hostname",
497                                         "type": "string"
498                                       },
499                                       "request-info": {
500                                         "title": "request-info",
501                                         "type": "object",
502                                         "properties": {
503                                           "prop1": {
504                                             "title": "prop1",
505                                             "type": "string"
506                                           },
507                                           "prop2": {
508                                             "title": "prop2",
509                                             "type": "string"
510                                           }
511                                         }
512                                       }
513                                     }
514                                   }
515                                 }
516                               }
517                             }
518                           },
519                           {
520                             "title": "assign-activate",
521                             "type": "object",
522                             "properties": {
523                               "recipe": {
524                                 "title": "recipe",
525                                 "type": "string",
526                                 "default": "assign-activate",
527                                 "options": {
528                                   "hidden": true
529                                 }
530                               },
531                               "payload": {
532                                 "title": "Payload",
533                                 "type": "object",
534                                 "properties": {
535                                   "artifact_name": {
536                                     "title": "artifact name",
537                                     "type": "string",
538                                     "default": "baseconfiguration",
539                                     "readOnly": "True"
540                                   },
541                                   "artifact_version": {
542                                     "title": "artifact version",
543                                     "type": "string",
544                                     "default": "1.0.0",
545                                     "readOnly": "True"
546                                   },
547                                   "mode": {
548                                     "title": "mode",
549                                     "type": "string",
550                                     "default": "async"
551                                   },
552                                   "data": {
553                                     "title": "data",
554                                     "properties": {
555                                       "request-id": {
556                                         "title": "request-id",
557                                         "type": "string"
558                                       },
559                                       "service-instance-id": {
560                                         "title": "service-instance-id",
561                                         "type": "string"
562                                       },
563                                       "hostname": {
564                                         "title": "hostname",
565                                         "type": "string"
566                                       },
567                                       "request-info": {
568                                         "title": "request-info",
569                                         "type": "object",
570                                         "properties": {
571                                           "prop1": {
572                                             "title": "prop1",
573                                             "type": "string"
574                                           },
575                                           "prop2": {
576                                             "title": "prop2",
577                                             "type": "string"
578                                           }
579                                         }
580                                       }
581                                     }
582                                   }
583                                 }
584                               }
585                             }
586                           },
587                           {
588                             "title": "imperative-test-wf",
589                             "type": "object",
590                             "properties": {
591                               "recipe": {
592                                 "title": "recipe",
593                                 "type": "string",
594                                 "default": "imperative-test-wf",
595                                 "options": {
596                                   "hidden": true
597                                 }
598                               },
599                               "payload": {
600                                 "title": "Payload",
601                                 "type": "object",
602                                 "properties": {
603                                   "artifact_name": {
604                                     "title": "artifact name",
605                                     "type": "string",
606                                     "default": "baseconfiguration",
607                                     "readOnly": "True"
608                                   },
609                                   "artifact_version": {
610                                     "title": "artifact version",
611                                     "type": "string",
612                                     "default": "1.0.0",
613                                     "readOnly": "True"
614                                   },
615                                   "mode": {
616                                     "title": "mode",
617                                     "type": "string",
618                                     "default": "async"
619                                   },
620                                   "data": {
621                                     "title": "data",
622                                     "properties": {
623                                       "request-id": {
624                                         "title": "request-id",
625                                         "type": "string"
626                                       },
627                                       "service-instance-id": {
628                                         "title": "service-instance-id",
629                                         "type": "string"
630                                       },
631                                       "hostname": {
632                                         "title": "hostname",
633                                         "type": "string"
634                                       },
635                                       "request-info": {
636                                         "title": "request-info",
637                                         "type": "object",
638                                         "properties": {
639                                           "prop1": {
640                                             "title": "prop1",
641                                             "type": "string"
642                                           },
643                                           "prop2": {
644                                             "title": "prop2",
645                                             "type": "string"
646                                           }
647                                         }
648                                       }
649                                     }
650                                   }
651                                 }
652                               }
653                             }
654                           }
655                         ]
656                       }
657                     }
658                   }
659                 ]
660               },
661               "success": {
662                 "default": "final_success",
663                 "title": "When Success",
664                 "type": "string"
665               },
666               "failure": {
667                 "default": "final_failure",
668                 "title": "When Failure",
669                 "type": "string"
670               },
671               "failure_timeout": {
672                 "default": "final_failure_timeout",
673                 "title": "When Failure Timeout",
674                 "type": "string"
675               },
676               "failure_retries": {
677                 "default": "final_failure_retries",
678                 "title": "When Failure Retries",
679                 "type": "string"
680               },
681               "failure_exception": {
682                 "default": "final_failure_exception",
683                 "title": "When Failure Exception",
684                 "type": "string"
685               },
686               "failure_guard": {
687                 "default": "final_failure_guard",
688                 "title": "When Failure Guard",
689                 "type": "string"
690               },
691               "target": {
692                 "type": "object",
693                 "required": [
694                   "type",
695                   "resourceID"
696                 ],
697                 "anyOf": [
698                   {
699                     "title": "User Defined",
700                     "additionalProperties": "True",
701                     "properties": {
702                       "type": {
703                         "title": "Target type",
704                         "type": "string",
705                         "default": "",
706                         "enum": [
707                           "VNF",
708                           "VFMODULE",
709                           "VM"
710                         ]
711                       },
712                       "resourceID": {
713                         "title": "Target type",
714                         "type": "string",
715                         "default": ""
716                       }
717                     }
718                   },
719                   {
720                     "title": "User defined",
721                     "properties": {}
722                   },
723                   {
724                     "title": "VNF-vLoadBalancerMS 0",
725                     "properties": {
726                       "type": {
727                         "title": "Type",
728                         "type": "string",
729                         "default": "VNF",
730                         "readOnly": "True"
731                       },
732                       "resourceID": {
733                         "title": "Resource ID",
734                         "type": "string",
735                         "default": "1a31b9f2-e50d-43b7-89b3-a040250cf506",
736                         "readOnly": "True"
737                       }
738                     }
739                   },
740                   {
741                     "title": "VFMODULE-Vloadbalancerms..vpkg..module-1",
742                     "properties": {
743                       "type": {
744                         "title": "Type",
745                         "type": "string",
746                         "default": "VFMODULE",
747                         "readOnly": "True"
748                       },
749                       "resourceID": {
750                         "title": "Resource ID",
751                         "type": "string",
752                         "default": "Vloadbalancerms..vpkg..module-1",
753                         "readOnly": "True"
754                       },
755                       "modelInvariantId": {
756                         "title": "Model Invariant Id (ModelInvariantUUID)",
757                         "type": "string",
758                         "default": "ca052563-eb92-4b5b-ad41-9111768ce043",
759                         "readOnly": "True"
760                       },
761                       "modelVersionId": {
762                         "title": "Model Version Id (ModelUUID)",
763                         "type": "string",
764                         "default": "1e725ccc-b823-4f67-82b9-4f4367070dbc",
765                         "readOnly": "True"
766                       },
767                       "modelName": {
768                         "title": "Model Name",
769                         "type": "string",
770                         "default": "Vloadbalancerms..vpkg..module-1",
771                         "readOnly": "True"
772                       },
773                       "modelVersion": {
774                         "title": "Model Version",
775                         "type": "string",
776                         "default": "1",
777                         "readOnly": "True"
778                       },
779                       "modelCustomizationId": {
780                         "title": "Customization ID",
781                         "type": "string",
782                         "default": "1bffdc31-a37d-4dee-b65c-dde623a76e52",
783                         "readOnly": "True"
784                       }
785                     }
786                   },
787                   {
788                     "title": "VFMODULE-Vloadbalancerms..vdns..module-3",
789                     "properties": {
790                       "type": {
791                         "title": "Type",
792                         "type": "string",
793                         "default": "VFMODULE",
794                         "readOnly": "True"
795                       },
796                       "resourceID": {
797                         "title": "Resource ID",
798                         "type": "string",
799                         "default": "Vloadbalancerms..vdns..module-3",
800                         "readOnly": "True"
801                       },
802                       "modelInvariantId": {
803                         "title": "Model Invariant Id (ModelInvariantUUID)",
804                         "type": "string",
805                         "default": "4c10ba9b-f88f-415e-9de3-5d33336047fa",
806                         "readOnly": "True"
807                       },
808                       "modelVersionId": {
809                         "title": "Model Version Id (ModelUUID)",
810                         "type": "string",
811                         "default": "4fa73b49-8a6c-493e-816b-eb401567b720",
812                         "readOnly": "True"
813                       },
814                       "modelName": {
815                         "title": "Model Name",
816                         "type": "string",
817                         "default": "Vloadbalancerms..vdns..module-3",
818                         "readOnly": "True"
819                       },
820                       "modelVersion": {
821                         "title": "Model Version",
822                         "type": "string",
823                         "default": "1",
824                         "readOnly": "True"
825                       },
826                       "modelCustomizationId": {
827                         "title": "Customization ID",
828                         "type": "string",
829                         "default": "bafcdab0-801d-4d81-9ead-f464640a38b1",
830                         "readOnly": "True"
831                       }
832                     }
833                   },
834                   {
835                     "title": "VFMODULE-Vloadbalancerms..base_template..module-0",
836                     "properties": {
837                       "type": {
838                         "title": "Type",
839                         "type": "string",
840                         "default": "VFMODULE",
841                         "readOnly": "True"
842                       },
843                       "resourceID": {
844                         "title": "Resource ID",
845                         "type": "string",
846                         "default": "Vloadbalancerms..base_template..module-0",
847                         "readOnly": "True"
848                       },
849                       "modelInvariantId": {
850                         "title": "Model Invariant Id (ModelInvariantUUID)",
851                         "type": "string",
852                         "default": "921f7c96-ebdd-42e6-81b9-1cfc0c9796f3",
853                         "readOnly": "True"
854                       },
855                       "modelVersionId": {
856                         "title": "Model Version Id (ModelUUID)",
857                         "type": "string",
858                         "default": "63734409-f745-4e4d-a38b-131638a0edce",
859                         "readOnly": "True"
860                       },
861                       "modelName": {
862                         "title": "Model Name",
863                         "type": "string",
864                         "default": "Vloadbalancerms..base_template..module-0",
865                         "readOnly": "True"
866                       },
867                       "modelVersion": {
868                         "title": "Model Version",
869                         "type": "string",
870                         "default": "1",
871                         "readOnly": "True"
872                       },
873                       "modelCustomizationId": {
874                         "title": "Customization ID",
875                         "type": "string",
876                         "default": "86baddea-c730-4fb8-9410-cd2e17fd7f27",
877                         "readOnly": "True"
878                       }
879                     }
880                   },
881                   {
882                     "title": "VFMODULE-Vloadbalancerms..vlb..module-2",
883                     "properties": {
884                       "type": {
885                         "title": "Type",
886                         "type": "string",
887                         "default": "VFMODULE",
888                         "readOnly": "True"
889                       },
890                       "resourceID": {
891                         "title": "Resource ID",
892                         "type": "string",
893                         "default": "Vloadbalancerms..vlb..module-2",
894                         "readOnly": "True"
895                       },
896                       "modelInvariantId": {
897                         "title": "Model Invariant Id (ModelInvariantUUID)",
898                         "type": "string",
899                         "default": "a772a1f4-0064-412c-833d-4749b15828dd",
900                         "readOnly": "True"
901                       },
902                       "modelVersionId": {
903                         "title": "Model Version Id (ModelUUID)",
904                         "type": "string",
905                         "default": "0f5c3f6a-650a-4303-abb6-fff3e573a07a",
906                         "readOnly": "True"
907                       },
908                       "modelName": {
909                         "title": "Model Name",
910                         "type": "string",
911                         "default": "Vloadbalancerms..vlb..module-2",
912                         "readOnly": "True"
913                       },
914                       "modelVersion": {
915                         "title": "Model Version",
916                         "type": "string",
917                         "default": "1",
918                         "readOnly": "True"
919                       },
920                       "modelCustomizationId": {
921                         "title": "Customization ID",
922                         "type": "string",
923                         "default": "96a78aad-4ffb-4ef0-9c4f-deb03bf1d806",
924                         "readOnly": "True"
925                       }
926                     }
927                   }
928                 ]
929               }
930             }
931           }
932         }
933       }
934     }
935   }
936 }