From a7c65c3c94a997cc215a33f81e274329c9850bec Mon Sep 17 00:00:00 2001 From: "weinstock, alan" Date: Tue, 27 Nov 2018 18:48:38 +0000 Subject: [VNFRQTS] updates to the Heat Section Change-Id: Id81d515314776f82e34460aef0da3b6698e0403c Issue-ID: VNFRQTS-500 Signed-off-by: weinstock, alan --- docs/Chapter5/Heat/ONAP Heat Cinder Volumes.rst | 2 +- docs/Chapter5/Heat/ONAP Heat Networking.rst | 97 +---- .../ONAP Heat Orchestration Templates Overview.rst | 15 +- .../Contrail Resource Parameters.rst | 2 +- .../Neutron Parameters.rst | 30 +- .../Nova Parameters.rst | 42 +- .../{network-role}.rst | 54 ++- .../Heat/ONAP Heat Template Constructs.rst | 6 +- docs/Chapter5/Heat/ONAP Heat VNF Modularity.rst | 11 +- docs/data/needs.json | 422 +-------------------- 10 files changed, 104 insertions(+), 577 deletions(-) diff --git a/docs/Chapter5/Heat/ONAP Heat Cinder Volumes.rst b/docs/Chapter5/Heat/ONAP Heat Cinder Volumes.rst index 4f2861f..fe5c877 100644 --- a/docs/Chapter5/Heat/ONAP Heat Cinder Volumes.rst +++ b/docs/Chapter5/Heat/ONAP Heat Cinder Volumes.rst @@ -49,7 +49,7 @@ Module unless the Output Parameter is of the type ``comma_delimited_list``, then the corresponding input parameter **MUST** be declared as type ``json``. A volume template must define ``outputs`` for each Cinder volume resource -universally unique identifier (UUID) (i.e. ECOMP Volume Template Output +universally unique identifier (UUID) (i.e. ONAP Volume Template Output Parameters. - The VNF Incremental Module or Base Module must define input diff --git a/docs/Chapter5/Heat/ONAP Heat Networking.rst b/docs/Chapter5/Heat/ONAP Heat Networking.rst index 7591a97..79e39c6 100644 --- a/docs/Chapter5/Heat/ONAP Heat Networking.rst +++ b/docs/Chapter5/Heat/ONAP Heat Networking.rst @@ -57,40 +57,6 @@ independently of VNFs. A VNF's port connected to an external network **MAY** use the port for the purpose of reaching VMs in the same VNF. -.. req:: - :id: R-69014 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - When a VNF connects to an external network, a network role, referred to - as the ``{network-role}`` **MUST** be assigned to the external network for - use in the VNF's Heat Orchestration Template. - -.. req:: - :id: R-05201 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - When a VNF connects to two or more external networks, each external - network **MUST** be assigned a unique ``{network-role}`` - in the context of the VNF for use in the VNF's Heat Orchestration - Template. - -.. req:: - :id: R-83015 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - A VNF's ``{network-role}`` assigned to an external network **MUST** - be different than the ``{network-role}`` assigned to the VNF's - internal networks, if internal networks exist. - .. req:: :id: R-99794 :target: VNF @@ -101,33 +67,9 @@ independently of VNFs. An external network **MUST** have one subnet. An external network **MAY** have more than one subnet. -Note that this document refers to ``{network-role}`` which in reality -is the ``{network-role-tag}``. The value of the -``{network-role}`` / ``{network-role-tag}`` -is determined by the designer of the VNF's Heat Orchestration Template and -there is no requirement for ``{network-role}`` / ``{network-role-tag}`` -uniqueness across Heat Orchestration Templates for -different VNFs. - -When an external network is created by ONAP, the network is assigned a -``{network-role}``. The ``{network-role}`` of the network is not required to -match the ``{network-role}`` of the VNF Heat Orchestration Template. - -For example, the VNF Heat Orchestration Template can assign a -``{network-role}`` -of ``oam`` to a network which attaches to an external network with a -``{network-role}`` of ``oam_protected_1`` . - -When the Heat Orchestration Template is on-boarded into ONAP - * each ``{network-role}`` value in the Heat Orchestration Template - is mapped to the ``{network-role-tag}`` in the ONAP - data structure. - * each ``OS::Neutron::Port`` is associated with the external network it is - connecting to, thus creating the VNF Heat Orchestration Template - ``{network-role}`` / ``{network-role-tag}`` - to external network ``{network-role}`` mapping. - -ONAP enforces a naming convention for parameters associated with +ONAP enforces a naming convention for +resource IDs and resource property +parameters associated with external networks. :ref:`ONAP Heat Resource ID and Parameter Naming Convention` provides additional details. @@ -194,39 +136,6 @@ Contrail Heat Resources. external gateway and/or external router. -.. req:: - :id: R-68936 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - When a VNF creates an internal network, a network role, referred to as - the ``{network-role}`` **MUST** be assigned to the internal network - for use in the VNF's Heat Orchestration Template. - -.. req:: - :id: R-32025 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - When a VNF creates two or more internal networks, each internal - network **MUST** be assigned a unique ``{network-role}`` in the context - of the VNF for use in the VNF's Heat Orchestration Template. - -.. req:: - :id: R-69874 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - A VNF's ``{network-role}`` assigned to an internal network **MUST** - be different than the ``{network-role}`` assigned to the VNF's external - networks. - .. req:: :id: R-16241 :target: VNF diff --git a/docs/Chapter5/Heat/ONAP Heat Orchestration Templates Overview.rst b/docs/Chapter5/Heat/ONAP Heat Orchestration Templates Overview.rst index e770732..f1e2b4e 100644 --- a/docs/Chapter5/Heat/ONAP Heat Orchestration Templates Overview.rst +++ b/docs/Chapter5/Heat/ONAP Heat Orchestration Templates Overview.rst @@ -59,15 +59,6 @@ deployed incrementally to create the complete VNF. A VNF **MAY** be composed of zero to many Incremental Modules. -.. req:: - :id: R-20974 - :target: VNF - :keyword: MUST - :updated: casablanca - - At orchestration time, the VNF's Base Module **MUST** - be deployed first, prior to any incremental modules. - .. req:: :id: R-28980 :target: VNF @@ -591,14 +582,14 @@ ONAP VNF On-Boarding The VNF's Heat Orchestration Template's ZIP file must include the base module YAML file (R-37028) and corresponding environment file -(R-38474). +(R-38474). The VNF's Heat Orchestration Template's ZIP file **MAY** include * One or more incremental module YAML files (R-13196) and corresponding environment files (R-81725). -* One or more volume module YAML files (R-03251) and corresponding - environment files (R-53433). +* One or more volume module YAML files (R-03251) and corresponding + environment files (R-53433). * One or more nested YAML files (R-36582, R-56721, R-30395). * One or more files that are retrieved via the intrinsic function ``get_file``. The ``get_file`` function returns the content of a file diff --git a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Contrail Resource Parameters.rst b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Contrail Resource Parameters.rst index 1fbdec7..8a31cad 100644 --- a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Contrail Resource Parameters.rst +++ b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Contrail Resource Parameters.rst @@ -234,7 +234,7 @@ instance_ip_address* The property instance_ip_address uses the same parameter naming convention as the property fixed_ips and Map Property ip_address in -OS::Neutron::Port. The resource is assigning an ECOMP SDN-C Assigned IP +OS::Neutron::Port. The resource is assigning an ONAP SDN-C Assigned IP Address. The {network-role} has been defined as oam_protected to represent an oam protected network and the {vm-type} has been defined as fw for firewall. diff --git a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters.rst b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters.rst index 996e370..4342bb0 100644 --- a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters.rst +++ b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters.rst @@ -62,27 +62,15 @@ This will be described in the forth coming sections. Items to Note ~~~~~~~~~~~~~~ -.. req:: - :id: R-93272 - :target: VNF - :keyword: MAY - :updated: casablanca - - A VNF **MAY** have one or more ports connected to a unique - external network. All VNF ports connected to the unique external - network **MUST** have cloud assigned IP Addresses - or **MUST** have ONAP SDN-C assigned IP addresses. - -.. req:: - :id: R-13841 - :target: VNF - :keyword: MAY - :updated: casablanca - - A VNF **MAY** have one or more ports connected to a unique - internal network. All VNF ports connected to the unique internal - network **MUST** have cloud assigned IP Addresses - or **MUST** have statically assigned IP addresses. +A VNF **MAY** have one or more ports connected to a unique +external network. All VNF ports connected to the unique external +network **MUST** have cloud assigned IP Addresses +or **MUST** have ONAP SDN-C assigned IP addresses. + +A VNF **MAY** have one or more ports connected to a unique +internal network. All VNF ports connected to the unique internal +network **MUST** have cloud assigned IP Addresses +or **MUST** have statically assigned IP addresses. .. req:: :id: R-45602 diff --git a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters.rst b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters.rst index b5501fd..f861615 100644 --- a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters.rst +++ b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters.rst @@ -35,15 +35,21 @@ Requirement R-82481 defines how the ``{vm-type}`` is used. A VNF's Heat Orchestration Template's ``OS::Nova::Server`` resource's - * Resource ID - * property ``image`` parameter name - * property ``flavor`` parameter name - * property ``name`` parameter name - + * Resource ID (defined in R-29751) + * property ``image`` parameter name (defined in R-58670) + * property ``flavor`` parameter name (defined in R-45188) + * property ``name`` parameter name (defined in R-54171 & R-87817) + * property port referenced OS::Neutron::Port Resource ID + (defined in R-58670) **MUST** contain the identical ``{vm-type}`` and **MUST** follow the naming conventions defined - in R-58670, R-45188, R-54171, R-87817, and R-29751. + in R-58670, R-45188, R-54171, R-87817, and R-29751. And the ``{index}`` in + the ``OS::Nova::Server`` Resource ID (defined in R-29751) **MUST** match + the ``{vm-type_index}`` defined in + the ``OS::Nova::Server`` property ``port`` + referenced ``OS::Neutron::Port`` Resource ID. + The table below provides a summary. The sections that follow provides the detailed requirements. @@ -240,18 +246,6 @@ Property: Name value that starts at zero and increments by one. -.. req:: - :id: R-40899 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - When the VNF's Heat Orchestration Template's Resource ``OS::Nova::Server`` - property ``name`` parameter is defined as a ``string``, a parameter - **MUST** be delcared for - each ``OS::Nova::Server`` resource associated with the ``{vm-type}``. - .. req:: :id: R-87817 :target: VNF @@ -264,18 +258,6 @@ Property: Name the parameter name **MUST** follow the naming convention ``{vm-type}_names``. -.. req:: - :id: R-85800 - :target: VNF - :keyword: MUST - :validation_mode: static - :updated: casablanca - - When the VNF's Heat Orchestration Template's Resource ``OS::Nova::Server`` - property ``name`` parameter is defined as a ``comma_delimited_list``, - a parameter **MUST** be delcared once for all ``OS::Nova::Server`` resources - associated with the ``{vm-type}``. - .. req:: :id: R-22838 :target: VNF diff --git a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/{network-role}.rst b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/{network-role}.rst index 48ca384..134c383 100644 --- a/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/{network-role}.rst +++ b/docs/Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/{network-role}.rst @@ -5,8 +5,31 @@ {network-role} ----------------------------- -The assignment of a {network-role} is discussed in -:ref:`ONAP Heat Networking`. +.. req:: + :id: R-69014 + :target: VNF + :keyword: MUST + :validation_mode: static + :updated: casablanca + + When a VNF's port connects to an internal network or external network, + a network role, referred to + as the ``{network-role}`` **MUST** be assigned to the network for + use in the VNF's Heat Orchestration Template. The ``{network-role}`` + is used in the VNF's Heat Orchestration Template resource IDs + and resource property parameter names. + +.. req:: + :id: R-05201 + :target: VNF + :keyword: MUST + :validation_mode: static + :updated: casablanca + + When a VNF connects to two or more unique networks, each + network **MUST** be assigned a unique ``{network-role}`` + in the context of the VNF for use in the VNF's Heat Orchestration + Template. .. req:: :id: R-21330 @@ -108,3 +131,30 @@ For example, if a VNF has a '{vm-type}' of 'oam' and a A VNF's Heat Orchestration Template's ``{network-role}`` case in Resource property parameter names **SHOULD** match the case of ``{network-role}`` in Resource IDs and vice versa. + + +Note that this document refers to ``{network-role}`` which in reality +is the ``{network-role-tag}``. The value of the +``{network-role}`` / ``{network-role-tag}`` +is determined by the designer of the VNF's Heat Orchestration Template and +there is no requirement for ``{network-role}`` / ``{network-role-tag}`` +uniqueness across Heat Orchestration Templates for +different VNFs. + +When an external network is created by ECOMP, the network is also assigned a +``{network-role}``. The ``{network-role}`` of the network is not required to +match the ``{network-role}`` of the VNF Heat Orchestration Template. + +For example, the VNF Heat Orchestration Template can assign a +``{network-role}`` +of ``oam`` to a network which attaches to an external network with a +``{network-role}`` of ``oam_protected`` . + +When the Heat Orchestration Template is on-boarded into ECOMP + * each ``{network-role}`` value in the Heat Orchestration Template + is mapped to the ``{network-role-tag}`` in the ECOMP + data structure. + * each ``OS::Neutron::Port`` is associated with the external network it is + connecting to, thus creating the VNF Heat Orchestration Template + ``{network-role}`` / ``{network-role-tag}`` + to external network ``{network-role}`` mapping. diff --git a/docs/Chapter5/Heat/ONAP Heat Template Constructs.rst b/docs/Chapter5/Heat/ONAP Heat Template Constructs.rst index c7703c0..1af326e 100644 --- a/docs/Chapter5/Heat/ONAP Heat Template Constructs.rst +++ b/docs/Chapter5/Heat/ONAP Heat Template Constructs.rst @@ -614,11 +614,11 @@ unique name. Heat Files Support (get_file) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -A VNF's Heat Orchestration Template may contain the inclusion of text files +A VNF's Heat Orchestration Template may contain the inclusion of text files containing scripts or configuration files. The ``get_file`` intrinsic function returns the content of a file into a Heat Orchestration Template. -The support for the ``get_file`` intrinsic function in ECOMP is subject to the +The support for the ``get_file`` intrinsic function in ONAP is subject to the following limitations: .. req:: @@ -634,7 +634,7 @@ following limitations: The ``get_file`` target files are on-boarded to SDC in the same zip file that contains the VNF's complete Heat Orchestration Template. -See requirement R-511776. +See requirement R-511776. .. req:: :id: R-41888 diff --git a/docs/Chapter5/Heat/ONAP Heat VNF Modularity.rst b/docs/Chapter5/Heat/ONAP Heat VNF Modularity.rst index 23ce06b..ae44870 100644 --- a/docs/Chapter5/Heat/ONAP Heat VNF Modularity.rst +++ b/docs/Chapter5/Heat/ONAP Heat VNF Modularity.rst @@ -22,7 +22,7 @@ As stated in :need:`R-33132`, a VNF's Heat Orchestration Template **MAY** be 3. a Cinder Volume Module Heat Orchestration Template (referred to as Cinder Volume Module). -As stated in :need:`R-20974`, at orchestration time, the VNF's Base +At orchestration time, the VNF's Base Module **MUST** be deployed first, prior to any incremental modules. As stated in :need:`R-28980`, :need:`R-86926`, and :need:`R-91497`, a @@ -36,12 +36,9 @@ As stated in :need:`R-68122`, a VNF's incremental module **MAY** be deployed more than once, either during initial VNF deployment and/or scale out As stated in :need:`R-37028` and :need:`R-13196`, a VNF **MUST** be composed -of one Base Module and *MAY** be composed of zero to many Incremental +of one Base Module and **MAY** be composed of zero to many Incremental Modules. -As stated in :need:`R-20974`, at orchestration time, the VNF's Base Module -**MUST** be deployed first, prior to any incremental modules. - ONAP also supports the concept of an optional, independently deployed Cinder volume via a separate Heat Orchestration Templates, referred to as a Cinder Volume Module. This allows the volume to persist after a VM @@ -73,12 +70,12 @@ Incremental Module. exposed by declaring a parameter in the ``outputs`` section of the base module. - For ECOMP to provided the UUID value of the shared resource to the + For ONAP to provided the UUID value of the shared resource to the incremental module, the parameter name defined in the ``outputs`` section of the base module **MUST** be defined as a parameter in the ``parameters`` section of the incremental module. - ECOMP will capture the output parameter name and value in the base module + ONAP will capture the output parameter name and value in the base module and provide the value to the corresponding parameter(s) in the incremental module(s). diff --git a/docs/data/needs.json b/docs/data/needs.json index ee0d75f..de5f038 100644 --- a/docs/data/needs.json +++ b/docs/data/needs.json @@ -1,5 +1,5 @@ { - "created": "2018-11-26T20:46:04.913880", + "created": "2018-11-27T18:42:30.067398", "current_version": "dublin", "project": "", "versions": { @@ -45910,7 +45910,7 @@ "needs_amount": 789 }, "dublin": { - "created": "2018-11-26T20:46:04.913866", + "created": "2018-11-27T18:42:30.067379", "needs": { "R-00011": { "description": "A VNF's Heat Orchestration Template's parameter defined\nin a nested YAML file\n**MUST NOT** have a parameter constraint defined.", @@ -47279,8 +47279,8 @@ "validation_mode": "" }, "R-05201": { - "description": "When a VNF connects to two or more external networks, each external\nnetwork **MUST** be assigned a unique ``{network-role}``\nin the context of the VNF for use in the VNF's Heat Orchestration\nTemplate.", - "docname": "Chapter5/Heat/ONAP Heat Networking", + "description": "When a VNF connects to two or more unique networks, each\nnetwork **MUST** be assigned a unique ``{network-role}``\nin the context of the VNF for use in the VNF's Heat Orchestration\nTemplate.", + "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/{network-role}", "full_title": "", "hide_links": "", "id": "R-05201", @@ -47292,10 +47292,9 @@ "links": [], "notes": "", "parts": {}, - "section_name": "External Networks", + "section_name": "{network-role}", "sections": [ - "External Networks", - "ONAP Heat Networking" + "{network-role}" ], "status": null, "tags": [], @@ -47669,39 +47668,6 @@ "validated_by": "", "validation_mode": "" }, - "R-07577": { - "description": "If the VNF's ports connected to a unique network (internal or external)\nand the port's IP addresses are cloud assigned IP Addresses,\nall the IPv4 Addresses **MUST** be from\nthe same subnet and all the IPv6 Addresses **MUST** be from the\nsame subnet.", - "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters", - "full_title": "", - "hide_links": "", - "id": "R-07577", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Items to Note", - "sections": [ - "Items to Note", - "Introduction", - "Resource: OS::Neutron::Port - Parameters" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-07617": { "description": "The VNF **MUST** log success and unsuccessful creation, removal, or\nchange to the inherent privilege level of users.", "docname": "Chapter4/Security", @@ -49105,39 +49071,6 @@ "validated_by": "", "validation_mode": "" }, - "R-13841": { - "description": "A VNF **MAY** have one or more ports connected to a unique\ninternal network. All VNF ports connected to the unique internal\nnetwork **MUST** have cloud assigned IP Addresses\nor **MUST** have statically assigned IP addresses.", - "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters", - "full_title": "", - "hide_links": "", - "id": "R-13841", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MAY", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Items to Note", - "sections": [ - "Items to Note", - "Introduction", - "Resource: OS::Neutron::Port - Parameters" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "" - }, "R-14198": { "description": "A VNF's Heat Orchestration Template's Resource ``OS::Neutron::SecurityGroup`` that\nis applicable to one {vm-type} and one internal network Resource ID **SHOULD**\nuse the naming convention\n\n* ``{vm-type}_int_{network-role}_security_group``\n\nwhere\n\n* ``{vm-type}`` is the vm-type\n* ``{network-role}`` is the network-role", "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Resource IDs", @@ -50830,38 +50763,6 @@ "validated_by": "", "validation_mode": "static" }, - "R-20974": { - "description": "At orchestration time, the VNF's Base Module **MUST**\nbe deployed first, prior to any incremental modules.", - "docname": "Chapter5/Heat/ONAP Heat Orchestration Templates Overview", - "full_title": "", - "hide_links": "", - "id": "R-20974", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "ONAP VNF Modularity Overview", - "sections": [ - "ONAP VNF Modularity Overview", - "ONAP Heat Orchestration Templates Overview" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "" - }, "R-21210": { "description": "The VNF **MUST** implement the following input validation control\non APIs: Validate that any input file has a correct and valid\nMultipurpose Internet Mail Extensions (MIME) type. Input files\nshould be tested for spoofed MIME types.", "docname": "Chapter4/Security", @@ -51182,7 +51083,7 @@ "validation_mode": "static" }, "R-22346": { - "description": "The VNF package MUST provide :doc:`VES Event Registration <../../../../vnfsdk/module.git/files/VESEventRegistration_3_0>`\nfor all VES events provided by that xNF.", + "description": "The xNF package MUST provide :doc:`VES Event Registration <../../../../vnfsdk/module.git/files/VESEventRegistration_3_0>`\nfor all VES events provided by that xNF.", "docname": "Chapter7/VNF-On-boarding-and-package-management", "full_title": "", "hide_links": "", @@ -51202,7 +51103,7 @@ ], "status": null, "tags": [], - "target": "VNF PACKAGE", + "target": "XNF PACKAGE", "test": "", "test_case": "", "test_file": "", @@ -53754,7 +53655,7 @@ "validation_mode": "" }, "R-304011": { - "description": "A VNF's Heat Orchestration Template's ``OS::Nova::Server`` resource's\n\n* Resource ID\n* property ``image`` parameter name\n* property ``flavor`` parameter name\n* property ``name`` parameter name\n\n\n**MUST** contain the identical ``{vm-type}``\nand **MUST** follow the naming conventions defined\nin R-58670, R-45188, R-54171, R-87817, and R-29751.", + "description": "A VNF's Heat Orchestration Template's ``OS::Nova::Server`` resource's\n\n* Resource ID (defined in R-29751)\n* property ``image`` parameter name (defined in R-58670)\n* property ``flavor`` parameter name (defined in R-45188)\n* property ``name`` parameter name (defined in R-54171 & R-87817)\n* property port referenced OS::Neutron::Port Resource ID\n (defined in R-58670)\n\n**MUST** contain the identical ``{vm-type}``\nand **MUST** follow the naming conventions defined\nin R-58670, R-45188, R-54171, R-87817, and R-29751. And the ``{index}`` in\nthe ``OS::Nova::Server`` Resource ID (defined in R-29751) **MUST** match\nthe ``{vm-type_index}`` defined in\nthe ``OS::Nova::Server`` property ``port``\nreferenced ``OS::Neutron::Port`` Resource ID.", "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters", "full_title": "", "hide_links": "", @@ -54045,38 +53946,6 @@ "validated_by": "", "validation_mode": "" }, - "R-32025": { - "description": "When a VNF creates two or more internal networks, each internal\nnetwork **MUST** be assigned a unique ``{network-role}`` in the context\nof the VNF for use in the VNF's Heat Orchestration Template.", - "docname": "Chapter5/Heat/ONAP Heat Networking", - "full_title": "", - "hide_links": "", - "id": "R-32025", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Internal Networks", - "sections": [ - "Internal Networks", - "ONAP Heat Networking" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-32094": { "description": "A VNF's Heat Orchestration Template parameter declaration **MAY**\ncontain the attribute ``label:``.", "docname": "Chapter5/Heat/ONAP Heat Orchestration Template Format", @@ -56345,38 +56214,6 @@ "validated_by": "", "validation_mode": "none" }, - "R-40899": { - "description": "When the VNF's Heat Orchestration Template's Resource ``OS::Nova::Server``\nproperty ``name`` parameter is defined as a ``string``, a parameter\n**MUST** be delcared for\neach ``OS::Nova::Server`` resource associated with the ``{vm-type}``.", - "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters", - "full_title": "", - "hide_links": "", - "id": "R-40899", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Property: Name", - "sections": [ - "Property: Name", - "Resource: OS::Nova::Server - Parameters" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-40971": { "description": "When the VNF's Heat Orchestration Template's Resource\n``OS::Neutron::Port`` is attaching to an external network (per the\nONAP definition, see Requirement R-57424),\nand an IPv4 address is assigned\nusing the property ``fixed_ips``\nmap property ``ip_address`` and the parameter type is defined as a string,\nthe parameter name **MUST** follow the\nnaming convention\n\n * ``{vm-type}_{network-role}_ip_{index}``\n\n where\n\n * ``{vm-type}`` is the {vm-type} associated with the\n ``OS::Nova::Server``\n * ``{network-role}`` is the {network-role} of the external\n network\n * the value for ``{index}`` must start at zero (0) and increment by one", "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters", @@ -59604,39 +59441,6 @@ "validated_by": "", "validation_mode": "" }, - "R-52530": { - "description": "A VNF's Heat Orchestration Template's Nested YAML file\n**MUST** be in the same directory hierarchy as the VNF's Heat\nOrchestration Templates.", - "docname": "Chapter5/Heat/ONAP Heat Template Constructs", - "full_title": "", - "hide_links": "", - "id": "R-52530", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Nested Heat Template Requirements", - "sections": [ - "Nested Heat Template Requirements", - "Nested Heat Templates", - "ONAP Heat Heat Template Constructs" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-52753": { "description": "VNF's Heat Orchestration Template's Base Module's output parameter's\nname and type **MUST** match the VNF's Heat Orchestration Template's\nincremental Module's name and type unless the output parameter is of\ntype ``comma_delimited_list``, then the corresponding input parameter\n**MUST** be declared as type ``json``.", "docname": "Chapter5/Heat/ONAP Heat Orchestration Templates Overview", @@ -61616,7 +61420,7 @@ "validation_mode": "" }, "R-61001": { - "description": "A shared Heat Orchestration Template resource is a resource that **MUST**\nbe defined in the base module and will be referenced by one or\nmore resources in one or more incremental modules.\n\nThe UUID of the shared resource (created in the base module) **MUST** be\nexposed by declaring a parameter in the\n``outputs`` section of the base module.\n\nFor ECOMP to provided the UUID value of the shared resource to the\nincremental module, the parameter name defined in the ``outputs``\nsection of the base module **MUST** be defined as a parameter\nin the ``parameters`` section of the incremental module.\n\nECOMP will capture the output parameter name and value in the base module\nand provide the value to the corresponding parameter(s) in the\nincremental module(s).", + "description": "A shared Heat Orchestration Template resource is a resource that **MUST**\nbe defined in the base module and will be referenced by one or\nmore resources in one or more incremental modules.\n\nThe UUID of the shared resource (created in the base module) **MUST** be\nexposed by declaring a parameter in the\n``outputs`` section of the base module.\n\nFor ONAP to provided the UUID value of the shared resource to the\nincremental module, the parameter name defined in the ``outputs``\nsection of the base module **MUST** be defined as a parameter\nin the ``parameters`` section of the incremental module.\n\nONAP will capture the output parameter name and value in the base module\nand provide the value to the corresponding parameter(s) in the\nincremental module(s).", "docname": "Chapter5/Heat/ONAP Heat VNF Modularity", "full_title": "", "hide_links": "", @@ -63404,38 +63208,6 @@ "validated_by": "", "validation_mode": "" }, - "R-68936": { - "description": "When a VNF creates an internal network, a network role, referred to as\nthe ``{network-role}`` **MUST** be assigned to the internal network\nfor use in the VNF's Heat Orchestration Template.", - "docname": "Chapter5/Heat/ONAP Heat Networking", - "full_title": "", - "hide_links": "", - "id": "R-68936", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Internal Networks", - "sections": [ - "Internal Networks", - "ONAP Heat Networking" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-68990": { "description": "The xNF **MUST** support the ``:startup`` capability. It\nwill allow the running configuration to be copied to this special\ndatabase. It can also be locked and unlocked.", "docname": "Chapter7/Configuration-Management", @@ -63471,8 +63243,8 @@ "validation_mode": "" }, "R-69014": { - "description": "When a VNF connects to an external network, a network role, referred to\nas the ``{network-role}`` **MUST** be assigned to the external network for\nuse in the VNF's Heat Orchestration Template.", - "docname": "Chapter5/Heat/ONAP Heat Networking", + "description": "When a VNF's port connects to an internal network or external network,\na network role, referred to\nas the ``{network-role}`` **MUST** be assigned to the network for\nuse in the VNF's Heat Orchestration Template. The ``{network-role}``\nis used in the VNF's Heat Orchestration Template resource IDs\nand resource property parameter names.", + "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/{network-role}", "full_title": "", "hide_links": "", "id": "R-69014", @@ -63484,10 +63256,9 @@ "links": [], "notes": "", "parts": {}, - "section_name": "External Networks", + "section_name": "{network-role}", "sections": [ - "External Networks", - "ONAP Heat Networking" + "{network-role}" ], "status": null, "tags": [], @@ -63759,38 +63530,6 @@ "validated_by": "", "validation_mode": "in_service" }, - "R-69874": { - "description": "A VNF's ``{network-role}`` assigned to an internal network **MUST**\nbe different than the ``{network-role}`` assigned to the VNF's external\nnetworks.", - "docname": "Chapter5/Heat/ONAP Heat Networking", - "full_title": "", - "hide_links": "", - "id": "R-69874", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Internal Networks", - "sections": [ - "Internal Networks", - "ONAP Heat Networking" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-69877": { "description": "The xNF Package **MUST** include documentation for each KPI,\nidentify the suggested actions that need to be performed when a\nthreshold crossing alert event is recorded.", "docname": "Chapter7/VNF-On-boarding-and-package-management", @@ -66678,38 +66417,6 @@ "validated_by": "", "validation_mode": "" }, - "R-83015": { - "description": "A VNF's ``{network-role}`` assigned to an external network **MUST**\nbe different than the ``{network-role}`` assigned to the VNF's\ninternal networks, if internal networks exist.", - "docname": "Chapter5/Heat/ONAP Heat Networking", - "full_title": "", - "hide_links": "", - "id": "R-83015", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "External Networks", - "sections": [ - "External Networks", - "ONAP Heat Networking" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-83146": { "description": "The xNF **MUST** support APPC ``StopApplication`` command.", "docname": "Chapter7/Configuration-Management", @@ -67517,38 +67224,6 @@ "validated_by": "", "validation_mode": "static" }, - "R-85800": { - "description": "When the VNF's Heat Orchestration Template's Resource ``OS::Nova::Server``\nproperty ``name`` parameter is defined as a ``comma_delimited_list``,\na parameter **MUST** be delcared once for all ``OS::Nova::Server`` resources\nassociated with the ``{vm-type}``.", - "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Nova Parameters", - "full_title": "", - "hide_links": "", - "id": "R-85800", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Property: Name", - "sections": [ - "Property: Name", - "Resource: OS::Nova::Server - Parameters" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-859208": { "description": "The VNF **MUST** log automated remote activities performed with\nelevated privileges.", "docname": "Chapter4/Security", @@ -68450,38 +68125,6 @@ "validated_by": "", "validation_mode": "static" }, - "R-87848": { - "description": "When using the intrinsic function get_file, ONAP does not support\na directory hierarchy for included files. All files must be in a\nsingle, flat directory per VNF. A VNF's Heat Orchestration\nTemplate's ``get_file`` target files **MUST** be in the same\ndirectory hierarchy as the VNF's Heat Orchestration Templates.", - "docname": "Chapter5/Heat/ONAP Heat Template Constructs", - "full_title": "", - "hide_links": "", - "id": "R-87848", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MUST", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Heat Files Support (get_file)", - "sections": [ - "Heat Files Support (get_file)", - "ONAP Heat Heat Template Constructs" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "static" - }, "R-88026": { "description": "The xNF **MUST** include a NETCONF server enabling\nruntime configuration and lifecycle management capabilities.", "docname": "Chapter7/Configuration-Management", @@ -69818,39 +69461,6 @@ "validated_by": "", "validation_mode": "none" }, - "R-93272": { - "description": "A VNF **MAY** have one or more ports connected to a unique\nexternal network. All VNF ports connected to the unique external\nnetwork **MUST** have cloud assigned IP Addresses\nor **MUST** have ONAP SDN-C assigned IP addresses.", - "docname": "Chapter5/Heat/ONAP Heat Resource ID and Parameter Naming Convention/Neutron Parameters", - "full_title": "", - "hide_links": "", - "id": "R-93272", - "impacts": "", - "introduced": "", - "is_need": true, - "is_part": false, - "keyword": "MAY", - "links": [], - "notes": "", - "parts": {}, - "section_name": "Items to Note", - "sections": [ - "Items to Note", - "Introduction", - "Resource: OS::Neutron::Port - Parameters" - ], - "status": null, - "tags": [], - "target": "VNF", - "test": "", - "test_case": "", - "test_file": "", - "title": "", - "title_from_content": "", - "type_name": "Requirement", - "updated": "casablanca", - "validated_by": "", - "validation_mode": "" - }, "R-93443": { "description": "The xNF **MUST** define all data models in YANG [RFC6020],\nand the mapping to NETCONF shall follow the rules defined in this RFC.", "docname": "Chapter7/Configuration-Management", @@ -71634,7 +71244,7 @@ "validation_mode": "static" } }, - "needs_amount": 790 + "needs_amount": 780 } } -} +} \ No newline at end of file -- cgit 1.2.3-korg