b6f158fc0672c03086a43854180afc0fb7fc1f14
[sdc.git] / catalog-be / src / main / resources / import / tosca / policy-types / policyTypes.yml
1 tosca.policies.Root:
2   description: The TOSCA Policy Type all other TOSCA Policy Types derive from
3 tosca.policies.Placement:
4   derived_from: tosca.policies.Root
5   description: The TOSCA Policy Type definition that is used to govern placement of TOSCA nodes or groups of nodes.
6 tosca.policies.Scaling:
7   derived_from: tosca.policies.Root
8   description: The TOSCA Policy Type definition that is used to govern scaling of TOSCA nodes or groups of nodes.
9 tosca.policies.Update:
10   derived_from: tosca.policies.Root
11   description: The TOSCA Policy Type definition that is used to govern update of TOSCA nodes or groups of nodes.
12 tosca.policies.Performance:
13   derived_from: tosca.policies.Root
14   description: The TOSCA Policy Type definition that is used to declare performance requirements for TOSCA nodes or groups of nodes.
15 org.openecomp.policies.placement.Antilocate:
16   derived_from: tosca.policies.Placement
17   description: My placement policy for separation based upon container type value
18   properties:
19     name:
20       type: string
21       description: The name of the policy
22       required: false
23       status: SUPPORTED
24     container_type:
25       type: string
26       description: container type
27       required: false
28       status: SUPPORTED
29       constraints:
30       - valid_values:
31         - host
32         - region
33         - compute
34 org.openecomp.policies.placement.Colocate:
35   derived_from: tosca.policies.Placement
36   description: Keep associated nodes (groups of nodes) based upon affinity value
37   properties:
38     name:
39       type: string
40       description: The name of the policy
41       required: false
42       status: SUPPORTED
43     affinity:
44       type: string
45       description: affinity
46       required: true
47       status: SUPPORTED
48       constraints:
49       - valid_values:
50         - host
51         - region
52         - compute
53 org.openecomp.policies.placement.valet.Diversity:
54   derived_from: tosca.policies.Placement
55   description: Valet Diversity
56   properties:
57     level:
58       type: string
59       description: diversity
60       required: false
61       default: host
62       status: SUPPORTED
63       constraints:
64       - valid_values:
65         - host
66         - rack
67 org.openecomp.policies.placement.valet.Exclusivity:
68   derived_from: tosca.policies.Placement
69   description: Valet Exclusivity
70   properties:
71     level:
72       type: string
73       description: exclusivity
74       required: false
75       default: host
76       status: SUPPORTED
77       constraints:
78       - valid_values:
79         - host
80         - rack
81 org.openecomp.policies.placement.valet.Affinity:
82   derived_from: tosca.policies.Placement
83   description: Valet Affinity
84   properties:
85     level:
86       type: string
87       description: affinity
88       required: false
89       default: host
90       status: SUPPORTED
91       constraints:
92       - valid_values:
93         - host
94         - rack
95 org.openecomp.policies.scaling.Fixed:
96   derived_from: tosca.policies.Scaling
97   properties:
98     quantity:
99       description: the exact number of instances to keep up
100       type: integer
101       required: true
102 org.openecomp.policies.External:
103   derived_from: tosca.policies.Root
104   description: externally managed policy (for example, type="network assignment", source="Policy Manager", name="route target")
105   properties:
106     source:
107       type: string
108       description: The name of the server that exposes the policy with predefined type and name.
109       required: false
110     type:
111       type: string
112       description: The type (category) of the policy same as it is defined in the source.
113       required: false
114     name:
115       type: string
116       description: The name of the policy, that related to specific type, same as it is defined in the source.
117       required: false
118
119 ### Policy types for closed loop ###
120 onap.policies.Monitoring:
121   derived_from: tosca.policies.Root
122   description: A base policy type for all policies that governs monitoring provisioning
123 onap.policies.monitoring.cdap.tca.hi.lo.app:
124   derived_from: onap.policies.Monitoring
125   version: 1.0.0
126   properties:
127     tca_policy:
128       type: map
129       description: TCA Policy JSON
130       entry_schema:
131         type: onap.datatypes.monitoring.tca_policy
132
133 ## PM Mapper policies for closed loop ##
134
135 onap.policy.monitoring.dcae-pm-mapper:
136   derived_from: onap.policies.Monitoring
137   version : 1.0.0
138   properties:
139     pm-mapper-filter:
140       type: map
141       description: PM mapper filter on measInfo, measInfoId, measType, instanceId
142       entry_schema:
143         type: onap.datatypes.monitoring.pm-mapper-filter
144
145 ## NFV policies ##
146 tosca.policies.nfv.InstantiationLevels:
147   derived_from: tosca.policies.Root
148   description: The InstantiationLevels type is a policy type representing all the instantiation levels of resources to be instantiated within a deployment flavour and including default instantiation level in term of the number of VNFC instances to be created as defined in ETSI GS NFV-IFA 011 [1].
149   properties:
150     levels:
151       type: map # key: levelId
152       description: Describes the various levels of resources that can be used to instantiate the VNF using this flavour.
153       required: true
154       entry_schema:
155         type: tosca.datatypes.nfv.InstantiationLevel
156     default_level:
157       type: string # levelId
158       description: The default instantiation level for this flavour.
159       required: false # required if multiple entries in levels
160 tosca.policies.nfv.VduInstantiationLevels:
161   derived_from: tosca.policies.Root
162   description:  The VduInstantiationLevels type is a policy type representing all the instantiation levels of resources to be instantiated within a deployment flavour in term of the number of VNFC instances to be created from each vdu.Compute. as defined in ETSI GS NFV-IFA 011 [1]
163   properties:
164     levels:
165       type: map # key: levelId
166       description: Describes the Vdu.Compute levels of resources that can be used to instantiate the VNF using this flavour
167       required: true
168       entry_schema:
169         type: tosca.datatypes.nfv.VduLevel
170   targets: [ tosca.nodes.nfv.Vdu.Compute ]
171
172 tosca.policies.nfv.VirtualLinkInstantiationLevels:
173   derived_from: tosca.policies.Root
174   description:  The VirtualLinkInstantiationLevels type is a policy type representing all the instantiation levels of virtual link resources to be instantiated within a deployment flavour as defined in ETSI GS NFV-IFA 011 [1].
175   properties:
176     levels:
177       type: map # key: levelId
178       description: Describes the virtual link levels of resources that can be used to instantiate the VNF using this flavour.
179       required: true
180       entry_schema:
181         type: tosca.datatypes.nfv.VirtualLinkBitrateLevel
182   targets: [ tosca.nodes.nfv.VnfVirtualLink ]
183 tosca.policies.nfv.ScalingAspects:
184   derived_from: tosca.policies.Root
185   description: The ScalingAspects type is a policy type representing the scaling aspects used for horizontal scaling as defined in ETSI GS NFV-IFA 011 [1].
186   properties:
187     aspects:
188       type: map # key: aspectId
189       description: Describe maximum scale level for total number of scaling steps that can be applied to a particular aspect
190       required: true
191       entry_schema:
192         type: tosca.datatypes.nfv.ScalingAspect
193 tosca.policies.nfv.VduScalingAspectDeltas:
194   derived_from: tosca.policies.Root
195   description: The VduScalingAspectDeltas type is a policy type representing the Vdu.Compute detail of an aspect deltas used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
196   properties:
197     aspect:
198       type: string
199       description: Represents the scaling aspect to which this policy applies
200       required: true
201     deltas:
202       type: map # key: scalingDeltaId
203       description: Describes the Vdu.Compute scaling deltas to be applied for every scaling steps of a particular aspect.
204       required: true
205       entry_schema:
206         type: tosca.datatypes.nfv.VduLevel
207   targets: [ tosca.nodes.nfv.Vdu.Compute ]
208 tosca.policies.nfv.VirtualLinkBitrateScalingAspectDeltas:
209   derived_from: tosca.policies.Root
210   description: The VirtualLinkBitrateScalingAspectDeltas type is a policy type representing the VnfVirtualLink detail of an aspect deltas used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
211   properties:
212     aspect:
213       type: string
214       description: Represents the scaling aspect to which this policy applies.
215       required: true
216     deltas:
217       type: map # key: scalingDeltaId
218       description: Describes the VnfVirtualLink scaling deltas to be applied for every scaling steps of a particular aspect.
219       required: true
220       entry_schema:
221         type: tosca.datatypes.nfv.VirtualLinkBitrateLevel
222   targets: [ tosca.nodes.nfv.VnfVirtualLink ]
223
224 tosca.policies.nfv.VduInitialDelta:
225   derived_from: tosca.policies.Root
226   description: The VduInitialDelta type is a policy type representing the Vdu.Compute detail of an initial delta used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
227   properties:
228     initial_delta:
229       type: tosca.datatypes.nfv.VduLevel
230       description: Represents the initial minimum size of the VNF.
231       required: true
232   targets: [ tosca.nodes.nfv.Vdu.Compute ]
233
234 tosca.policies.nfv.VirtualLinkBitrateInitialDelta:
235   derived_from: tosca.policies.Root
236   description: The VirtualLinkBitrateInitialDelta type is a policy type representing the VnfVirtualLink detail of an initial deltas used for horizontal scaling, as defined in ETSI GS NFV-IFA 011 [1].
237   properties:
238     initial_delta:
239       type: tosca.datatypes.nfv.VirtualLinkBitrateLevel
240       description: Represents the initial minimum size of the VNF.
241       required: true
242   targets: [ tosca.nodes.nfv.VnfVirtualLink ]
243
244 tosca.policies.nfv.SecurityGroupRule:
245   derived_from: tosca.policies.Root
246   description: The SecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited connection points as defined in ETSI GS NFV-IFA 011 [1].
247   properties:
248     description:
249       type: string
250       description: Human readable description of the security group rule.
251       required: false
252     direction:
253       type: string
254       description: The direction in which the security group rule is applied. The direction of 'ingress' or 'egress' is specified against the associated CP. I.e., 'ingress' means the packets entering a CP, while 'egress' means the packets sent out of a CP.
255       required: false
256       constraints:
257         - valid_values: [ ingress, egress ]
258       default: ingress
259     ether_type:
260       type: string
261       description: Indicates the protocol carried over the Ethernet layer.
262       required: false
263       constraints:
264         - valid_values: [ ipv4, ipv6 ]
265       default: ipv4
266     protocol:
267       type: string
268       description: Indicates the protocol carried over the IP layer. Permitted values include any protocol defined in the IANA protocol registry, e.g. TCP, UDP, ICMP, etc.
269       required: false
270       constraints:
271         - valid_values: [ hopopt, icmp, igmp, ggp, ipv4, st, tcp, cbt, egp, igp, bbn_rcc_mon, nvp_ii, pup, argus, emcon, xnet, chaos, udp, mux, dcn_meas, hmp, prm, xns_idp, trunk_1, trunk_2, leaf_1, leaf_2, rdp, irtp, iso_tp4, netblt, mfe_nsp, merit_inp, dccp, 3pc, idpr, xtp, ddp, idpr_cmtp, tp++, il, ipv6, sdrp, ipv6_route, ipv6_frag, idrp, rsvp, gre, dsr, bna, esp, ah, i_nlsp, swipe, narp, mobile, tlsp, skip, ipv6_icmp, ipv6_no_nxt, ipv6_opts, cftp, sat_expak, kryptolan, rvd, ippc, sat_mon, visa, ipcv, cpnx, cphb, wsn, pvp, br_sat_mon, sun_nd, wb_mon, wb_expak, iso_ip, vmtp, secure_vmtp, vines, ttp, iptm, nsfnet_igp, dgp, tcf, eigrp, ospfigp, sprite_rpc, larp, mtp, ax.25, ipip, micp, scc_sp, etherip, encap, gmtp, ifmp, pnni, pim, aris, scps, qnx, a/n, ip_comp, snp, compaq_peer, ipx_in_ip, vrrp, pgm, l2tp, ddx, iatp, stp, srp, uti, smp, sm, ptp, isis, fire, crtp, crudp, sscopmce, iplt, sps, pipe, sctp, fc, rsvp_e2e_ignore, mobility, udp_lite, mpls_in_ip, manet, hip, shim6, wesp, rohc ]
272       default: tcp
273     port_range_min:
274       type: integer
275       description: Indicates minimum port number in the range that is matched by the security group rule. If a value is provided at design-time, this value may be overridden at run-time based on other deployment requirements or constraints.
276       required: false
277       constraints:
278         - greater_or_equal: 0
279         - less_or_equal: 65535
280       default: 0
281     port_range_max:
282       type: integer
283       description: Indicates maximum port number in the range that is matched by the security group rule. If a value is provided at design-time, this value may be overridden at run-time based on other deployment requirements or constraints.
284       required: false
285       constraints:
286         - greater_or_equal: 0
287         - less_or_equal: 65535
288       default: 65535
289   targets: [ tosca.nodes.nfv.VduCp, tosca.nodes.nfv.VnfExtCp ]
290
291 tosca.policies.nfv.SupportedVnfInterface:
292   derived_from: tosca.policies.Root
293   description:  this policy type represents interfaces produced by a VNF, the details to access them and the applicable connection points to use to access these interfaces
294   properties:
295     interface_name:
296       type: string
297       description: Identifies an interface produced by the VNF.
298       required: true
299       constraints:
300         - valid_values: [ vnf_indicator, vnf_configuration ]
301     details:
302       type: tosca.datatypes.nfv.InterfaceDetails
303       description: Provide additional data to access the interface endpoint
304       required: false
305   targets: [ tosca.nodes.nfv.VnfExtCp, tosca.nodes.nfv.VduCp ]
306
307 tosca.policies.nfv.AffinityRule:
308   derived_from: tosca.policies.Placement
309   description: The AffinityRule describes the affinity rules applicable for the defined targets
310   properties:
311     scope:
312       type: string
313       description: scope of the rule is an NFVI_node, an NFVI_PoP, etc.
314       required: true
315       constraints:
316         - valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ]
317   targets: [ tosca.nodes.nfv.Vdu.Compute, tosca.nodes.nfv.VnfVirtualLink, tosca.groups.nfv.PlacementGroup ]
318
319 tosca.policies.nfv.AntiAffinityRule:
320   derived_from: tosca.policies.Placement
321   description: The AntiAffinityRule describes the anti-affinity rules applicable for the defined targets
322   properties:
323     scope:
324       type: string
325       description: scope of the rule is an NFVI_node, an NFVI_PoP, etc.
326       required: true
327       constraints:
328         - valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ]
329   targets: [ tosca.nodes.nfv.Vdu.Compute, tosca.nodes.nfv.VnfVirtualLink, tosca.groups.nfv.PlacementGroup ]