tosca.policies.Root: description: The TOSCA Policy Type all other TOSCA Policy Types derive from tosca.policies.Placement: derived_from: tosca.policies.Root description: The TOSCA Policy Type definition that is used to govern placement of TOSCA nodes or groups of nodes. tosca.policies.Scaling: derived_from: tosca.policies.Root description: The TOSCA Policy Type definition that is used to govern scaling of TOSCA nodes or groups of nodes. tosca.policies.Update: derived_from: tosca.policies.Root description: The TOSCA Policy Type definition that is used to govern update of TOSCA nodes or groups of nodes. tosca.policies.Performance: derived_from: tosca.policies.Root description: The TOSCA Policy Type definition that is used to declare performance requirements for TOSCA nodes or groups of nodes. org.openecomp.policies.placement.Antilocate: derived_from: tosca.policies.Placement description: My placement policy for separation based upon container type value properties: name: type: string description: The name of the policy required: false status: supported container_type: type: string description: container type required: false status: supported constraints: - valid_values: - host - region - compute org.openecomp.policies.placement.Colocate: derived_from: tosca.policies.Placement description: Keep associated nodes (groups of nodes) based upon affinity value properties: name: type: string description: The name of the policy required: false status: supported affinity: type: string description: affinity required: true status: supported constraints: - valid_values: - host - region - compute org.openecomp.policies.placement.valet.Diversity: derived_from: tosca.policies.Placement description: Valet Diversity properties: level: type: string description: diversity required: false default: host status: supported constraints: - valid_values: - host - rack org.openecomp.policies.placement.valet.Exclusivity: derived_from: tosca.policies.Placement description: Valet Exclusivity properties: level: type: string description: exclusivity required: false default: host status: supported constraints: - valid_values: - host - rack org.openecomp.policies.placement.valet.Affinity: derived_from: tosca.policies.Placement description: Valet Affinity properties: level: type: string description: affinity required: false default: host status: supported constraints: - valid_values: - host - rack org.openecomp.policies.scaling.Fixed: derived_from: tosca.policies.Scaling properties: quantity: description: the exact number of instances to keep up type: integer required: true org.openecomp.policies.External: derived_from: tosca.policies.Root description: externally managed policy (for example, type="network assignment", source="Policy Manager", name="route target") properties: source: type: string description: The name of the server that exposes the policy with predefined type and name. required: false type: type: string description: The type (category) of the policy same as it is defined in the source. required: false name: type: string description: The name of the policy, that related to specific type, same as it is defined in the source. required: false ## NFV policies ## tosca.policies.nfv.InstantiationLevels: derived_from: tosca.policies.Root 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]. properties: levels: type: map # key: levelId description: Describes the various levels of resources that can be used to instantiate the VNF using this flavour. required: true entry_schema: type: tosca.datatypes.nfv.InstantiationLevel default_level: type: string # levelId description: The default instantiation level for this flavour. required: false # required if multiple entries in levels tosca.policies.nfv.VduInstantiationLevels: derived_from: tosca.policies.Root 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] properties: levels: type: map # key: levelId description: Describes the Vdu.Compute levels of resources that can be used to instantiate the VNF using this flavour required: true entry_schema: type: tosca.datatypes.nfv.VduLevel targets: [ tosca.nodes.nfv.Vdu.Compute ] tosca.policies.nfv.VirtualLinkInstantiationLevels: derived_from: tosca.policies.Root 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]. properties: levels: type: map # key: levelId description: Describes the virtual link levels of resources that can be used to instantiate the VNF using this flavour. required: true entry_schema: type: tosca.datatypes.nfv.VirtualLinkBitrateLevel targets: [ tosca.nodes.nfv.VnfVirtualLink ] tosca.policies.nfv.ScalingAspects: derived_from: tosca.policies.Root 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]. properties: aspects: type: map # key: aspectId description: Describe maximum scale level for total number of scaling steps that can be applied to a particular aspect required: true entry_schema: type: tosca.datatypes.nfv.ScalingAspect tosca.policies.nfv.VduScalingAspectDeltas: derived_from: tosca.policies.Root 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]. properties: aspect: type: string description: Represents the scaling aspect to which this policy applies required: true deltas: type: map # key: scalingDeltaId description: Describes the Vdu.Compute scaling deltas to be applied for every scaling steps of a particular aspect. required: true entry_schema: type: tosca.datatypes.nfv.VduLevel targets: [ tosca.nodes.nfv.Vdu.Compute ] tosca.policies.nfv.VirtualLinkBitrateScalingAspectDeltas: derived_from: tosca.policies.Root 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]. properties: aspect: type: string description: Represents the scaling aspect to which this policy applies. required: true deltas: type: map # key: scalingDeltaId description: Describes the VnfVirtualLink scaling deltas to be applied for every scaling steps of a particular aspect. required: true entry_schema: type: tosca.datatypes.nfv.VirtualLinkBitrateLevel targets: [ tosca.nodes.nfv.VnfVirtualLink ] tosca.policies.nfv.VduInitialDelta: derived_from: tosca.policies.Root 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]. properties: initial_delta: type: tosca.datatypes.nfv.VduLevel description: Represents the initial minimum size of the VNF. required: true targets: [ tosca.nodes.nfv.Vdu.Compute ] tosca.policies.nfv.VirtualLinkBitrateInitialDelta: derived_from: tosca.policies.Root 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]. properties: initial_delta: type: tosca.datatypes.nfv.VirtualLinkBitrateLevel description: Represents the initial minimum size of the VNF. required: true targets: [ tosca.nodes.nfv.VnfVirtualLink ] tosca.policies.nfv.SecurityGroupRule: derived_from: tosca.policies.Root 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]. properties: description: type: string description: Human readable description of the security group rule. required: false direction: type: string 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. required: false constraints: - valid_values: [ ingress, egress ] default: ingress ether_type: type: string description: Indicates the protocol carried over the Ethernet layer. required: false constraints: - valid_values: [ ipv4, ipv6 ] default: ipv4 protocol: type: string 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. required: false constraints: - 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 ] default: tcp port_range_min: type: integer 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. required: false constraints: - greater_or_equal: 0 - less_or_equal: 65535 default: 0 port_range_max: type: integer 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. required: false constraints: - greater_or_equal: 0 - less_or_equal: 65535 default: 65535 targets: [ tosca.nodes.nfv.VduCp, tosca.nodes.nfv.VnfExtCp ] tosca.policies.nfv.SupportedVnfInterface: derived_from: tosca.policies.Root 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 properties: interface_name: type: string description: Identifies an interface produced by the VNF. required: true constraints: - valid_values: [ vnf_indicator, vnf_configuration ] details: type: tosca.datatypes.nfv.InterfaceDetails description: Provide additional data to access the interface endpoint required: false targets: [ tosca.nodes.nfv.VnfExtCp, tosca.nodes.nfv.VduCp ] tosca.policies.nfv.AffinityRule: derived_from: tosca.policies.Placement description: The AffinityRule describes the affinity rules applicable for the defined targets properties: scope: type: string description: scope of the rule is an NFVI_node, an NFVI_PoP, etc. required: true constraints: - valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ] targets: [ tosca.nodes.nfv.Vdu.Compute, tosca.nodes.nfv.VnfVirtualLink, tosca.groups.nfv.PlacementGroup ] tosca.policies.nfv.AntiAffinityRule: derived_from: tosca.policies.Placement description: The AntiAffinityRule describes the anti-affinity rules applicable for the defined targets properties: scope: type: string description: scope of the rule is an NFVI_node, an NFVI_PoP, etc. required: true constraints: - valid_values: [ nfvi_node, zone, zone_group, nfvi_pop ] targets: [ tosca.nodes.nfv.Vdu.Compute, tosca.nodes.nfv.VnfVirtualLink, tosca.groups.nfv.PlacementGroup ] tosca.policies.nfv.NsAffinityRule: derived_from: tosca.policies.Placement description: The NsAffinityRule describes the affinity rules applicable for the defined targets properties: scope: type: string description: Specifies the scope of the local affinity rule. required: true constraints: - valid_values: [ nfvi_node, zone, zone_group, nfvi_pop, network_link_and_node ] targets: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.NsPlacementGroup ] tosca.policies.nfv.NsAntiAffinityRule: derived_from: tosca.policies.Placement description: The NsAntiAffinityRule describes the anti-affinity rules applicable for the defined targets properties: scope: type: string description: Specifies the scope of the local affinity rule.. required: true constraints: - valid_values: [ nfvi_node, zone, zone_group, nfvi_pop, network_link_and_node ] targets: [tosca.nodes.nfv.VNF, tosca.nodes.nfv.NsVirtualLink, tosca.nodes.nfv.NS, tosca.groups.nfv.NsPlacementGroup ] tosca.policies.nfv.Abstract.SecurityGroupRule: derived_from: tosca.policies.Root description: The Abstract.SecurityGroupRule type represents an abstract policy type without any target requirements properties: description: type: string description: Human readable description of the security group rule. required: false direction: type: string 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. required: true constraints: - valid_values: [ ingress, egress ] default: ingress ether_type: type: string description: Indicates the protocol carried over the Ethernet layer. required: true constraints: - valid_values: [ ipv4, ipv6 ] default: ipv4 protocol: type: string 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. required: true constraints: - 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 ] default: tcp port_range_min: type: integer 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. required: true constraints: - greater_or_equal: 0 - less_or_equal: 65535 default: 0 port_range_max: type: integer 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. required: true constraints: - greater_or_equal: 0 - less_or_equal: 65535 default: 65535 tosca.policies.nfv.NsSecurityGroupRule: derived_from: tosca.policies.nfv.Abstract.SecurityGroupRule description: The NsSecurityGroupRule type is a policy type specified the matching criteria for the ingress and/or egress traffic to/from visited SAPs. targets: [ tosca.nodes.nfv.Sap ] tosca.policies.nfv.NfpRule: derived_from: tosca.policies.Root description: policy definition of NfpRule properties: ether_destination_address: description: Indicates a destination Mac address. type: string required: false ether_source_address: description: Indicates a source Mac address. type: string required: false ether_type: description: Indicates the protocol carried over the Ethernet layer. type: string constraints: - valid_values: [ ipv4, ipv6 ] required: false vlan_tag: description: Indicates a VLAN identifier in an IEEE 802.1Q-2014 tag [14]. Multiple tags can be included for QinQ stacking. type: list entry_schema: type: string required: false protocol: description: 'Indicates the L4 protocol, For IPv4 [15] this corresponds to the field called "Protocol" to identify the next level protocol. For IPv6 [16] this corresponds to the field is called the "Next Header" field. Permitted values: Any keyword defined in the IANA [17] protocol registry.' type: string required: false dscp: description: For IPv4 [15] a string of "0" and "1" digits that corresponds to the 6-bit Differentiated Services Code Point (DSCP) field of the IP header. For IPv6 [16] a string of "0" and "1" digits that corresponds to the 6 differentiated services bits of the traffic class header field. type: string required: false source_port_range: description: Indicates a range of source ports. type: range required: false constraints: - in_range: [0, 65535] destination_port_range: description: Indicates a range of destination ports. type: range required: false constraints: - in_range: [0, 65535] source_ip_address_prefix: description: Indicates the source IP address range in CIDR format. type: string required: false destination_ip_address_prefix: description: Indicates the destination IP address range in CIDR format. type: string required: false extended_criteria: description: Indicates values of specific bits in a frame. type: list entry_schema: type: tosca.datatypes.nfv.Mask required: false targets: [ tosca.nodes.nfv.NFP ] tosca.policies.nfv.NsMonitoring: derived_from: tosca.policies.Root description: Policy type is used to identify information to be monitored during the lifetime of a network service instance as defined in ETSI GS NFV-IFA 014 [2]. properties: ns_monitoring_parameters: type: list description: Specifies a virtualised resource related performance metric to be monitored on the NS level. required: true entry_schema: type: tosca.datatypes.nfv.NsMonitoringParameter constraints: - min_length: 1 targets: [ tosca.nodes.nfv.NS ] tosca.policies.nfv.VnfMonitoring: derived_from: tosca.policies.Root description: Policy type is used to identify information to be monitored during the lifetime of a VNF instance as defined in ETSI GS NFV-IFA 014 [2]. properties: vnf_monitoring_parameters: type: list description: Specifies a virtualised resource related performance metric to be monitored on the NS level. required: true entry_schema: type: tosca.datatypes.nfv.VnfMonitoringParameter constraints: - min_length: 1 targets: [ tosca.nodes.nfv.VNF ]