Merge "Release 5.0.5"
[clamp.git] / src / test / resources / tosca / operational-policy-cds-payload-with-list.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                                       "template-prefix": {
284                                         "title": "template-prefix",
285                                         "type": "array"
286                                       },
287                                       "template-prefix-with-complex-type": {
288                                         "title": "template-prefix-with-complex-type",
289                                         "type": "array",
290                                         "items": {
291                                           "properties": {
292                                             "prefix-id": {
293                                               "title": "prefix-id",
294                                               "type": "string"
295                                             }
296                                           }
297                                         }
298                                       },
299                                       "private1-prefix-id": {
300                                         "title": "private1-prefix-id",
301                                         "type": "string"
302                                       }
303                                     }
304                                   }
305                                 }
306                               }
307                             }
308                           }
309                         ]
310                       }
311                     }
312                   }
313                 ]
314               },
315               "success": {
316                 "default": "final_success",
317                 "title": "When Success",
318                 "type": "string"
319               },
320               "failure": {
321                 "default": "final_failure",
322                 "title": "When Failure",
323                 "type": "string"
324               },
325               "failure_timeout": {
326                 "default": "final_failure_timeout",
327                 "title": "When Failure Timeout",
328                 "type": "string"
329               },
330               "failure_retries": {
331                 "default": "final_failure_retries",
332                 "title": "When Failure Retries",
333                 "type": "string"
334               },
335               "failure_exception": {
336                 "default": "final_failure_exception",
337                 "title": "When Failure Exception",
338                 "type": "string"
339               },
340               "failure_guard": {
341                 "default": "final_failure_guard",
342                 "title": "When Failure Guard",
343                 "type": "string"
344               },
345               "target": {
346                 "type": "object",
347                 "required": [
348                   "type",
349                   "resourceID"
350                 ],
351                 "anyOf": [
352                   {
353                     "title": "User Defined",
354                     "additionalProperties": "True",
355                     "properties": {
356                       "type": {
357                         "title": "Target type",
358                         "type": "string",
359                         "default": "",
360                         "enum": [
361                           "VNF",
362                           "VFMODULE",
363                           "VM"
364                         ]
365                       },
366                       "resourceID": {
367                         "title": "Target type",
368                         "type": "string",
369                         "default": ""
370                       }
371                     }
372                   },
373                   {
374                     "title": "User defined",
375                     "properties": {}
376                   },
377                   {
378                     "title": "VNF-vLoadBalancerMS 0",
379                     "properties": {
380                       "type": {
381                         "title": "Type",
382                         "type": "string",
383                         "default": "VNF",
384                         "readOnly": "True"
385                       },
386                       "resourceID": {
387                         "title": "Resource ID",
388                         "type": "string",
389                         "default": "vLoadBalancerMS",
390                         "readOnly": "True"
391                       }
392                     }
393                   },
394                   {
395                     "title": "VFMODULE-Vloadbalancerms..vpkg..module-1",
396                     "properties": {
397                       "type": {
398                         "title": "Type",
399                         "type": "string",
400                         "default": "VFMODULE",
401                         "readOnly": "True"
402                       },
403                       "resourceID": {
404                         "title": "Resource ID",
405                         "type": "string",
406                         "default": "Vloadbalancerms..vpkg..module-1",
407                         "readOnly": "True"
408                       },
409                       "modelInvariantId": {
410                         "title": "Model Invariant Id (ModelInvariantUUID)",
411                         "type": "string",
412                         "default": "ca052563-eb92-4b5b-ad41-9111768ce043",
413                         "readOnly": "True"
414                       },
415                       "modelVersionId": {
416                         "title": "Model Version Id (ModelUUID)",
417                         "type": "string",
418                         "default": "1e725ccc-b823-4f67-82b9-4f4367070dbc",
419                         "readOnly": "True"
420                       },
421                       "modelName": {
422                         "title": "Model Name",
423                         "type": "string",
424                         "default": "Vloadbalancerms..vpkg..module-1",
425                         "readOnly": "True"
426                       },
427                       "modelVersion": {
428                         "title": "Model Version",
429                         "type": "string",
430                         "default": "1",
431                         "readOnly": "True"
432                       },
433                       "modelCustomizationId": {
434                         "title": "Customization ID",
435                         "type": "string",
436                         "default": "1bffdc31-a37d-4dee-b65c-dde623a76e52",
437                         "readOnly": "True"
438                       }
439                     }
440                   },
441                   {
442                     "title": "VFMODULE-Vloadbalancerms..vdns..module-3",
443                     "properties": {
444                       "type": {
445                         "title": "Type",
446                         "type": "string",
447                         "default": "VFMODULE",
448                         "readOnly": "True"
449                       },
450                       "resourceID": {
451                         "title": "Resource ID",
452                         "type": "string",
453                         "default": "Vloadbalancerms..vdns..module-3",
454                         "readOnly": "True"
455                       },
456                       "modelInvariantId": {
457                         "title": "Model Invariant Id (ModelInvariantUUID)",
458                         "type": "string",
459                         "default": "4c10ba9b-f88f-415e-9de3-5d33336047fa",
460                         "readOnly": "True"
461                       },
462                       "modelVersionId": {
463                         "title": "Model Version Id (ModelUUID)",
464                         "type": "string",
465                         "default": "4fa73b49-8a6c-493e-816b-eb401567b720",
466                         "readOnly": "True"
467                       },
468                       "modelName": {
469                         "title": "Model Name",
470                         "type": "string",
471                         "default": "Vloadbalancerms..vdns..module-3",
472                         "readOnly": "True"
473                       },
474                       "modelVersion": {
475                         "title": "Model Version",
476                         "type": "string",
477                         "default": "1",
478                         "readOnly": "True"
479                       },
480                       "modelCustomizationId": {
481                         "title": "Customization ID",
482                         "type": "string",
483                         "default": "bafcdab0-801d-4d81-9ead-f464640a38b1",
484                         "readOnly": "True"
485                       }
486                     }
487                   },
488                   {
489                     "title": "VFMODULE-Vloadbalancerms..base_template..module-0",
490                     "properties": {
491                       "type": {
492                         "title": "Type",
493                         "type": "string",
494                         "default": "VFMODULE",
495                         "readOnly": "True"
496                       },
497                       "resourceID": {
498                         "title": "Resource ID",
499                         "type": "string",
500                         "default": "Vloadbalancerms..base_template..module-0",
501                         "readOnly": "True"
502                       },
503                       "modelInvariantId": {
504                         "title": "Model Invariant Id (ModelInvariantUUID)",
505                         "type": "string",
506                         "default": "921f7c96-ebdd-42e6-81b9-1cfc0c9796f3",
507                         "readOnly": "True"
508                       },
509                       "modelVersionId": {
510                         "title": "Model Version Id (ModelUUID)",
511                         "type": "string",
512                         "default": "63734409-f745-4e4d-a38b-131638a0edce",
513                         "readOnly": "True"
514                       },
515                       "modelName": {
516                         "title": "Model Name",
517                         "type": "string",
518                         "default": "Vloadbalancerms..base_template..module-0",
519                         "readOnly": "True"
520                       },
521                       "modelVersion": {
522                         "title": "Model Version",
523                         "type": "string",
524                         "default": "1",
525                         "readOnly": "True"
526                       },
527                       "modelCustomizationId": {
528                         "title": "Customization ID",
529                         "type": "string",
530                         "default": "86baddea-c730-4fb8-9410-cd2e17fd7f27",
531                         "readOnly": "True"
532                       }
533                     }
534                   },
535                   {
536                     "title": "VFMODULE-Vloadbalancerms..vlb..module-2",
537                     "properties": {
538                       "type": {
539                         "title": "Type",
540                         "type": "string",
541                         "default": "VFMODULE",
542                         "readOnly": "True"
543                       },
544                       "resourceID": {
545                         "title": "Resource ID",
546                         "type": "string",
547                         "default": "Vloadbalancerms..vlb..module-2",
548                         "readOnly": "True"
549                       },
550                       "modelInvariantId": {
551                         "title": "Model Invariant Id (ModelInvariantUUID)",
552                         "type": "string",
553                         "default": "a772a1f4-0064-412c-833d-4749b15828dd",
554                         "readOnly": "True"
555                       },
556                       "modelVersionId": {
557                         "title": "Model Version Id (ModelUUID)",
558                         "type": "string",
559                         "default": "0f5c3f6a-650a-4303-abb6-fff3e573a07a",
560                         "readOnly": "True"
561                       },
562                       "modelName": {
563                         "title": "Model Name",
564                         "type": "string",
565                         "default": "Vloadbalancerms..vlb..module-2",
566                         "readOnly": "True"
567                       },
568                       "modelVersion": {
569                         "title": "Model Version",
570                         "type": "string",
571                         "default": "1",
572                         "readOnly": "True"
573                       },
574                       "modelCustomizationId": {
575                         "title": "Customization ID",
576                         "type": "string",
577                         "default": "96a78aad-4ffb-4ef0-9c4f-deb03bf1d806",
578                         "readOnly": "True"
579                       }
580                     }
581                   }
582                 ]
583               }
584             }
585           }
586         }
587       }
588     }
589   }
590 }