Add controlloop components to SDC design
[sdc.git] / catalog-be / src / main / resources / import / tosca / models / init / controlloop / imports / controlloop.yaml
1 tosca_definitions_version: tosca_simple_yaml_1_3
2 description: ControlLoop types definitions version 1.0.0
3
4 data_types:
5   onap.datatypes.ToscaConceptIdentifier:
6     derived_from: tosca.datatypes.Root
7     properties:
8       name:
9         type: string
10         required: true
11       version:
12         type: string
13         required: true
14   onap.datatype.controlloop.Target:
15     derived_from: tosca.datatypes.Root
16     description: Definition for a entity in A&AI to perform a control loop operation on
17     properties:
18       targetType:
19         type: string
20         description: Category for the target type
21         required: true
22         constraints:
23           - valid_values:
24               - VNF
25               - VM
26               - VFMODULE
27               - PNF
28       entityIds:
29         type: map
30         description: Map of values that identify the resource. If none are provided, it is
31           assumed that the entity that generated the ONSET event will be the target.
32         required: false
33         metadata:
34           clamp_possible_values: 'ClampExecution:CSAR_RESOURCES'
35         entry_schema:
36           type: string
37   onap.datatype.controlloop.Actor:
38     derived_from: tosca.datatypes.Root
39     description: An actor/operation/target definition
40     properties:
41       actor:
42         type: string
43         description: The actor performing the operation.
44         required: true
45         metadata:
46           clamp_possible_values: 'Dictionary:DefaultActors,ClampExecution:CDS/actor'
47       operation:
48         type: string
49         description: The operation the actor is performing.
50         metadata:
51           clamp_possible_values: 'Dictionary:DefaultOperations,ClampExecution:CDS/operation'
52         required: true
53       target:
54         type: onap.datatype.controlloop.Target
55         description: The resource the operation should be performed on.
56         required: true
57       payload:
58         type: map
59         description: Name/value pairs of payload information passed by Policy to the actor
60         required: false
61         metadata:
62           clamp_possible_values: 'ClampExecution:CDS/payload'
63         entry_schema:
64           type: string
65   onap.datatype.controlloop.Operation:
66     derived_from: tosca.datatypes.Root
67     description: An operation supported by an actor
68     properties:
69       id:
70         type: string
71         description: Unique identifier for the operation
72         required: true
73       description:
74         type: string
75         description: A user-friendly description of the intent for the operation
76         required: false
77       operation:
78         type: onap.datatype.controlloop.Actor
79         description: The definition of the operation to be performed.
80         required: true
81       timeout:
82         type: integer
83         description: The amount of time for the actor to perform the operation.
84         required: true
85       retries:
86         type: integer
87         description: The number of retries the actor should attempt to perform the
88           operation.
89         required: true
90         default: 0
91       success:
92         type: string
93         description: Points to the operation to invoke on success. A value of
94           "final_success" indicates and end to the operation.
95         required: false
96         default: final_success
97       failure:
98         type: string
99         description: Points to the operation to invoke on Actor operation failure.
100         required: false
101         default: final_failure
102       failure_timeout:
103         type: string
104         description: Points to the operation to invoke when the time out for the operation
105           occurs.
106         required: false
107         default: final_failure_timeout
108       failure_retries:
109         type: string
110         description: Points to the operation to invoke when the current operation has
111           exceeded its max retries.
112         required: false
113         default: final_failure_retries
114       failure_exception:
115         type: string
116         description: Points to the operation to invoke when the current operation causes an
117           exception.
118         required: false
119         default: final_failure_exception
120       failure_guard:
121         type: string
122         description: Points to the operation to invoke when the current operation is
123           blocked due to guard policy enforcement.
124         required: false
125         default: final_failure_guard
126   onap.datatypes.monitoring.managedObjectDNsBasic:
127     constraints: []
128     properties:
129       DN:
130         name: DN
131         type: string
132         typeVersion: 0.0.0
133         description: Managed object distinguished name
134         required: true
135         constraints: []
136         metadata: {}
137     name: onap.datatypes.monitoring.managedObjectDNsBasic
138     version: 0.0.0
139     derived_from: tosca.datatypes.Root
140     metadata: {}
141   onap.datatypes.monitoring.managedObjectDNsBasics:
142     constraints: []
143     properties:
144       managedObjectDNsBasic:
145         name: managedObjectDNsBasic
146         type: map
147         typeVersion: 0.0.0
148         description: Managed object distinguished name object
149         required: true
150         constraints: []
151         entry_schema:
152           type: onap.datatypes.monitoring.managedObjectDNsBasic
153           typeVersion: 0.0.0
154           constraints: []
155         metadata: {}
156     name: onap.datatypes.monitoring.managedObjectDNsBasics
157     version: 0.0.0
158     derived_from: tosca.datatypes.Root
159     metadata: {}
160   onap.datatypes.monitoring.measurementGroup:
161     constraints: []
162     properties:
163       measurementTypes:
164         name: measurementTypes
165         type: list
166         typeVersion: 0.0.0
167         description: List of measurement types
168         required: true
169         constraints: []
170         entry_schema:
171           type: onap.datatypes.monitoring.measurementTypes
172           typeVersion: 0.0.0
173           constraints: []
174         metadata: {}
175       managedObjectDNsBasic:
176         name: managedObjectDNsBasic
177         type: list
178         typeVersion: 0.0.0
179         description: List of managed object distinguished names
180         required: true
181         constraints: []
182         entry_schema:
183           type: onap.datatypes.monitoring.managedObjectDNsBasics
184           typeVersion: 0.0.0
185           constraints: []
186         metadata: {}
187     name: onap.datatypes.monitoring.measurementGroup
188     version: 0.0.0
189     derived_from: tosca.datatypes.Root
190     metadata: {}
191   onap.datatypes.monitoring.measurementGroups:
192     constraints: []
193     properties:
194       measurementGroup:
195         name: measurementGroup
196         type: map
197         typeVersion: 0.0.0
198         description: Measurement Group
199         required: true
200         constraints: []
201         entry_schema:
202           type: onap.datatypes.monitoring.measurementGroup
203           typeVersion: 0.0.0
204           constraints: []
205         metadata: {}
206     name: onap.datatypes.monitoring.measurementGroups
207     version: 0.0.0
208     derived_from: tosca.datatypes.Root
209     metadata: {}
210   onap.datatypes.monitoring.measurementType:
211     constraints: []
212     properties:
213       measurementType:
214         name: measurementType
215         type: string
216         typeVersion: 0.0.0
217         description: Measurement type
218         required: true
219         constraints: []
220         metadata: {}
221     name: onap.datatypes.monitoring.measurementType
222     version: 0.0.0
223     derived_from: tosca.datatypes.Root
224     metadata: {}
225   onap.datatypes.monitoring.measurementTypes:
226     constraints: []
227     properties:
228       measurementType:
229         name: measurementType
230         type: map
231         typeVersion: 0.0.0
232         description: Measurement type object
233         required: true
234         constraints: []
235         entry_schema:
236           type: onap.datatypes.monitoring.measurementType
237           typeVersion: 0.0.0
238           constraints: []
239         metadata: {}
240     name: onap.datatypes.monitoring.measurementTypes
241     version: 0.0.0
242     derived_from: tosca.datatypes.Root
243     metadata: {}
244   onap.datatypes.monitoring.nfFilter:
245     constraints: []
246     properties:
247       modelNames:
248         name: modelNames
249         type: list
250         typeVersion: 0.0.0
251         description: List of model names
252         required: true
253         constraints: []
254         entry_schema:
255           type: string
256           typeVersion: 0.0.0
257           constraints: []
258         metadata: {}
259       modelInvariantIDs:
260         name: modelInvariantIDs
261         type: list
262         typeVersion: 0.0.0
263         description: List of model invariant IDs
264         required: true
265         constraints: []
266         entry_schema:
267           type: string
268           typeVersion: 0.0.0
269           constraints: []
270         metadata: {}
271       modelVersionIDs:
272         name: modelVersionIDs
273         type: list
274         typeVersion: 0.0.0
275         description: List of model version IDs
276         required: true
277         constraints: []
278         entry_schema:
279           type: string
280           typeVersion: 0.0.0
281           constraints: []
282         metadata: {}
283       nfNames:
284         name: nfNames
285         type: list
286         typeVersion: 0.0.0
287         description: List of network functions
288         required: true
289         constraints: []
290         entry_schema:
291           type: string
292           typeVersion: 0.0.0
293           constraints: []
294         metadata: {}
295     name: onap.datatypes.monitoring.nfFilter
296     version: 0.0.0
297     derived_from: tosca.datatypes.Root
298     metadata: {}
299   onap.datatypes.monitoring.subscription:
300     constraints: []
301     properties:
302       measurementGroups:
303         name: measurementGroups
304         type: list
305         typeVersion: 0.0.0
306         description: Measurement Groups
307         required: true
308         constraints: []
309         entry_schema:
310           type: onap.datatypes.monitoring.measurementGroups
311           typeVersion: 0.0.0
312           constraints: []
313         metadata: {}
314       fileBasedGP:
315         name: fileBasedGP
316         type: integer
317         typeVersion: 0.0.0
318         description: File based granularity period
319         required: true
320         constraints: []
321         metadata: {}
322       fileLocation:
323         name: fileLocation
324         type: string
325         typeVersion: 0.0.0
326         description: ROP file location
327         required: true
328         constraints: []
329         metadata: {}
330       subscriptionName:
331         name: subscriptionName
332         type: string
333         typeVersion: 0.0.0
334         description: Name of the subscription
335         required: true
336         constraints: []
337         metadata: {}
338       administrativeState:
339         name: administrativeState
340         type: string
341         typeVersion: 0.0.0
342         description: State of the subscription
343         required: true
344         constraints:
345           - valid_values:
346               - LOCKED
347               - UNLOCKED
348         metadata: {}
349       nfFilter:
350         name: nfFilter
351         type: map
352         typeVersion: 0.0.0
353         description: Network function filter
354         required: true
355         constraints: []
356         entry_schema:
357           type: onap.datatypes.monitoring.nfFilter
358           typeVersion: 0.0.0
359           constraints: []
360         metadata: {}
361     name: onap.datatypes.monitoring.subscription
362     version: 0.0.0
363     derived_from: tosca.datatypes.Root
364     metadata: {}
365   org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest:
366     version: 1.0.0
367     derived_from: tosca.datatypes.Root
368     properties:
369       restRequestId:
370         type: onap.datatypes.ToscaConceptIdentifier
371         typeVersion: 1.0.0
372         required: true
373         description: The name and version of a REST request to be sent to a REST endpoint
374       httpMethod:
375         type: string
376         required: true
377         constraints:
378           - valid_values:
379               - POST
380               - PUT
381               - GET
382               - DELETE
383         description: The REST method to use
384       path:
385         type: string
386         required: true
387         description: The path of the REST request relative to the base URL
388       body:
389         type: string
390         required: false
391         description: The body of the REST request for PUT and POST requests
392       expectedResponse:
393         type: integer
394         required: true
395         constraints: []
396         description: THe expected HTTP status code for the REST request
397     org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity:
398       version: 1.0.0
399       derived_from: tosca.datatypes.Root
400       properties:
401         configurationEntityId:
402           type: onap.datatypes.ToscaConceptIdentifier
403           typeVersion: 1.0.0
404           required: true
405           description: The name and version of a Configuration Entity to be handled by the
406             HTTP Control Loop Element
407         restSequence:
408           type: list
409           entry_schema:
410             type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest
411             typeVersion: 1.0.0
412           description: A sequence of REST commands to send to the REST endpoint
413 policy_types:
414   onap.policies.Monitoring:
415     derived_from: tosca.policies.Root
416     description: a base policy type for all policies that govern monitoring provisioning
417     version: 1.0.0
418     name: onap.policies.Monitoring
419   onap.policies.monitoring.dcae-pm-subscription-handler:
420     properties:
421       pmsh_policy:
422         name: pmsh_policy
423         type: onap.datatypes.monitoring.subscription
424         typeVersion: 0.0.0
425         description: PMSH Policy JSON
426         required: false
427         constraints: []
428         metadata: {}
429     name: onap.policies.monitoring.dcae-pm-subscription-handler
430     version: 1.0.0
431     derived_from: onap.policies.Monitoring
432     metadata: {}
433   onap.policies.controlloop.operational.Common:
434     derived_from: tosca.policies.Root
435     version: 1.0.0
436     name: onap.policies.controlloop.operational.Common
437     description: Operational Policy for Control Loop execution. Originated in Frankfurt to
438       support TOSCA Compliant Policy Types. This does NOT support the legacy Policy YAML policy type.
439     properties:
440       id:
441         type: string
442         description: The unique control loop id.
443         required: true
444       timeout:
445         type: integer
446         description: Overall timeout for executing all the operations. This timeout should
447           equal or exceed the total timeout for each operation listed.
448         required: true
449       abatement:
450         type: boolean
451         description: Whether an abatement event message will be expected for the control
452           loop from DCAE.
453         required: true
454         default: false
455       trigger:
456         type: string
457         description: Initial operation to execute upon receiving an Onset event message for
458           the Control Loop.
459         required: true
460       operations:
461         type: list
462         description: List of operations to be performed when Control Loop is triggered.
463         required: true
464         entry_schema:
465           type: onap.datatype.controlloop.Operation
466   onap.policies.controlloop.operational.common.Apex:
467     derived_from: onap.policies.controlloop.operational.Common
468     type_version: 1.0.0
469     version: 1.0.0
470     name: onap.policies.controlloop.operational.common.Apex
471     description: Operational policies for Apex PDP
472     properties:
473       engineServiceParameters:
474         type: string
475         description: The engine parameters like name, instanceCount, policy implementation,
476           parameters etc.
477         required: true
478       eventInputParameters:
479         type: string
480         description: The event input parameters.
481         required: true
482       eventOutputParameters:
483         type: string
484         description: The event output parameters.
485         required: true
486       javaProperties:
487         type: string
488         description: Name/value pairs of properties to be set for APEX if needed.
489         required: false
490 node_types:
491   org.onap.policy.clamp.controlloop.Participant:
492     version: 1.0.1
493     derived_from: tosca.nodetypes.Root
494     properties:
495       provider:
496         type: string
497         required: false
498   org.onap.policy.clamp.controlloop.ControlLoopElement:
499     version: 1.0.1
500     derived_from: tosca.nodetypes.Root
501     properties:
502       provider:
503         type: string
504         required: false
505         metadata:
506           common: true
507         description: Specifies the organization that provides the control loop element
508       participant_id:
509         type: onap.datatypes.ToscaConceptIdentifier
510         required: true
511         metadata:
512           common: true
513       participantType:
514         type: onap.datatypes.ToscaConceptIdentifier
515         required: true
516         metadata:
517           common: true
518         description: The identity of the participant type that hosts this type of Control
519           Loop Element
520       startPhase:
521         type: integer
522         required: false
523         constraints:
524           - greater_or_equal: 0
525         metadata:
526           common: true
527         description: A value indicating the start phase in which this control loop element
528           will be started, the first start phase is zero. Control Loop Elements
529           are started in their start_phase order and stopped in reverse start
530           phase order. Control Loop Elements with the same start phase are
531           started and stopped simultaneously
532       uninitializedToPassiveTimeout:
533         type: integer
534         required: false
535         constraints:
536           - greater_or_equal: 0
537         default: 60
538         metadata:
539           common: true
540         description: The maximum time in seconds to wait for a state chage from
541           uninitialized to passive
542       passiveToRunningTimeout:
543         type: integer
544         required: false
545         constraints:
546           - greater_or_equal: 0
547         default: 60
548         metadata:
549           common: true
550         description: The maximum time in seconds to wait for a state chage from passive to
551           running
552       runningToPassiveTimeout:
553         type: integer
554         required: false
555         constraints:
556           - greater_or_equal: 0
557         default: 60
558         metadata:
559           common: true
560         description: The maximum time in seconds to wait for a state chage from running to
561           passive
562       passiveToUninitializedTimeout:
563         type: integer
564         required: false
565         constraints:
566           - greater_or_equal: 0
567         default: 60
568         metadata:
569           common: true
570         description: The maximum time in seconds to wait for a state chage from passive to
571           uninitialized
572   org.onap.policy.clamp.controlloop.ControlLoop:
573     version: 1.0.1
574     derived_from: tosca.nodetypes.Root
575     properties:
576       provider:
577         type: string
578         required: false
579         metadata:
580           common: true
581         description: Specifies the organization that provides the control loop element
582       elements:
583         type: list
584         required: true
585         metadata:
586           common: true
587         entry_schema:
588           type: onap.datatypes.ToscaConceptIdentifier
589         description: Specifies a list of control loop element definitions that make up this
590           control loop definition
591   org.onap.policy.clamp.controlloop.PolicyControlLoopElement:
592     version: 1.0.1
593     derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
594     properties:
595       policy_type_id:
596         type: onap.datatypes.ToscaConceptIdentifier
597         required: true
598       policy_id:
599         type: onap.datatypes.ToscaConceptIdentifier
600         required: false
601   org.onap.policy.clamp.controlloop.CDSControlLoopElement:
602     version: 1.0.1
603     derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
604     properties:
605       cds_blueprint_id:
606         type: onap.datatypes.ToscaConceptIdentifier
607         required: true
608   org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement:
609     version: 1.0.1
610     derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
611     properties:
612       chart:
613         type: string
614         required: true
615       configs:
616         type: list
617         required: false
618       requirements:
619         type: string
620         required: false
621       templates:
622         type: list
623         required: false
624         entry_schema: null
625       values:
626         type: string
627         required: true
628   org.onap.policy.clamp.controlloop.HttpControlLoopElement:
629     version: 1.0.1
630     derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement
631     properties:
632       baseUrl:
633         type: string
634         required: true
635         description: The base URL to be prepended to each path, identifies the host for the
636           REST endpoints.
637       httpHeaders:
638         type: map
639         required: false
640         entry_schema:
641           type: string
642         description: HTTP headers to send on REST requests
643       configurationEntities:
644         type: map
645         required: true
646         entry_schema:
647           type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity
648           typeVersion: 1.0.0
649         description: The connfiguration entities the Control Loop Element is managing and
650           their associated REST requests