1 .. Licensed under a Creative Commons Attribution 4.0 International License.
 
   2 .. http://creativecommons.org/licenses/by/4.0
 
   3 .. Copyright 2017 AT&T Intellectual Property.  All rights reserved.
 
   5 .. _ONAP Output Parameter Names:
 
   7 ONAP Output Parameter Names
 
   8 -------------------------------------------------------------
 
  10 ONAP defines three types of Output Parameters as detailed in
 
  11 :ref:`Output Parameters`.
 
  13 ONAP Base Module Output Parameters:
 
  14 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
  16 ONAP Base Module Output Parameters do not have an explicit naming
 
  24     :test_case: no test found
 
  25     :test_file: no test found
 
  27     A VNF's Heat Orchestration Template's Base Module Output
 
  28     Parameter names **MUST** contain {vm-type} and/or {network-role}
 
  31 ONAP Volume Template Output Parameters:
 
  32 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
  39     :test_case: no test found
 
  40     :test_file: no test found
 
  42     A VNF's Heat Orchestration Template's Volume Template
 
  43     Output Parameter names **MUST** contain {vm-type} when appropriate.
 
  45 Predefined Output Parameters
 
  46 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
  48 ONAP currently defines one predefined output parameter the OAM
 
  49 Management IP Addresses.
 
  51 .. _OAM Management IP Addresses:
 
  53 OAM Management IP Addresses
 
  54 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
  56 A VNF may have a management interface for application controllers to
 
  57 interact with and configure the VNF. Typically, this will be via a
 
  58 specific VM that performs a VNF administration function. The IP address
 
  59 of this interface must be captured and inventoried by ONAP. The IP
 
  60 address might be a VIP if the VNF contains an HA pair of management VMs,
 
  61 or may be a single IP address assigned to one VM.
 
  68     :test_case: no test found
 
  69     :test_file: no test found
 
  73      * Only an IPv4 OAM Management IP Address
 
  74      * Only an IPv6 OAM Management IP Address
 
  75      * Both a IPv4 and IPv6 OAM Management IP Addresses
 
  82     :test_case: no test found
 
  83     :test_file: no test found
 
  85     If a VNF has one IPv4 OAM Management IP Address and the
 
  86     IP Address needs to be inventoried in ONAP's A&AI
 
  87     database, an output parameter **MUST** be declared in only one of the
 
  88     VNF's Heat Orchestration Templates and the parameter **MUST** be named
 
  89     'oam_management_v4_address'.
 
  96     :test_case: no test found
 
  97     :test_file: no test found
 
  99     If a VNF has one IPv6 OAM Management IP Address and the
 
 100     IP Address needs to be inventoried in ONAP's AAI
 
 101     database, an output parameter **MUST** be declared in only one of the
 
 102     VNF's Heat Orchestration Templates and the parameter **MUST** be named
 
 103     'oam_management_v6_address'.
 
 105 The OAM Management IP Address maybe assigned either via
 
 114     :test_case: no test found
 
 115     :test_file: no test found
 
 117     If the VNF's OAM Management IP Address is assigned by ONAP SDN-C and
 
 118     assigned in the VNF's Heat Orchestration Template's via a heat resource
 
 119     'OS::Neutron::Port' property 'fixed_ips' map property
 
 120     'ip_adress' parameter (e.g., '{vm-type}_{network-role}_ip_{index}',
 
 121     '{vm-type}_{network-role}_v6_ip_{index}')
 
 122     and the OAM IP Address is required to be inventoried in ONAP AAI,
 
 123     then the parameter **MUST** be echoed in an output statement.
 
 128        oam_management_v4_address:
 
 129          value: {get_param: {vm-type}_{network-role}_ip_{index} }
 
 130        oam_management_v6_address:
 
 131          value: {get_param: {vm-type}_{network-role}_v6_ip_{index} }
 
 133 *Example: ONAP SDN-C Assigned IP Address echoed as
 
 134 oam_management_v4_address*
 
 141       description: Fixed IPv4 assignment for admin VM 0 on the OAM network
 
 145       type: OS::Neutron::Port
 
 149             template: VNF_NAME_admin_oam_port_0
 
 151               VNF_NAME: {get_param: vnf_name}
 
 152         network: { get_param: oam_net_id }
 
 153         fixed_ips: [{ "ip_address": { get_param: admin_oam_ip_0 }}]
 
 154         security_groups: [{ get_param: security_group }]
 
 156       type: OS::Nova::Server
 
 158         name: { get_param: admin_names }
 
 159         image: { get_param: admin_image_name }
 
 160         flavor: { get_param: admin_flavor_name }
 
 161         availability_zone: { get_param: availability_zone_0 }
 
 163         - port: { get_resource: admin_0_oam_net_port_0 }
 
 165         vnf_id: { get_param: vnf_id }
 
 166         vf_module_id: { get_param: vf_module_id }
 
 167         vnf_name: {get_param: vnf_name }
 
 169       oam_management_v4_address:
 
 170         value: {get_param: admin_oam_ip_0 }
 
 178     :test_case: no test found
 
 179     :test_file: no test found
 
 181     If the VNF's OAM Management IP Address is Cloud assigned and
 
 182     and the OAM IP Address is required to be inventoried in ONAP AAI,
 
 183     then the parameter **MUST** be obtained by the resource 'OS::Neutron::Port'
 
 184     attribute 'ip_address'.
 
 189        oam_management_v4_address:
 
 190          value: {get_attr: [ {OS::Neutron Port Resource ID}, fixed_ips, 0, ip_address] }
 
 192 *Example: Cloud Assigned IP Address output as oam_management_v4_address*
 
 200       type: OS::Neutron::Port
 
 204             template: VNF_NAME_admin_oam_0_port
 
 206               VNF_NAME: {get_param: vnf_name}
 
 207         network: { get_param: oam_net_id }
 
 208         security_groups: [{ get_param: security_group }]
 
 210       type: OS::Nova::Server
 
 212         name: { get_param: admin_name_0 }
 
 213         image: { get_param: admin_image_name }
 
 214         flavor: { get_param: admin_flavor_name }
 
 215         availability_zone: { get_param: availability_zone_0 }
 
 217           - port: { get_resource: admin_0_oam_port_0 }
 
 219           vnf_id: { get_param: vnf_id }
 
 220           vf_module_id: { get_param: vf_module_id }
 
 221           vnf_name: {get_param: vnf_name }
 
 223     oam_management_v4_address:
 
 224       value: {get_attr: [admin_0_oam_port_0, fixed_ips, 0, ip_address] }