:numbered:
:maxdepth: 6
+ tosca2heat.rst
yang2tosca.rst
policy2tosca.rst
- parser_new_keywords.rst
- vRNC_tosca_intro.rst
+ verigraph.rst
.. http://creativecommons.org/licenses/by/4.0
===================
-Parser POLICY2TOSCA
+Parser polic2tosca
===================
-Overview
-========
-Parser is an open source project and licensed under Apache 2. Parser will help
-to provide a tooling mechanism, by parsing Telecom operators’ VNF descriptors
-(YANG templates) into TOSCA templates and then further translate TOSCA
-templates into certain common templates, which could be used in IaaS orchestration
-projects like OpenStack Heat.
-
-Prerequisites
-=============
-
-Parser - POLICY2TOSCA requires the following to be installed.
-
-1. cliff
---------
-
-Install cliff with the following links.
-::
-- `install <http://docs.openstack.org/developer/cliff/install.html>`
-or
-- `demoapp <http://docs.openstack.org/developer/cliff/demoapp.html>`
-
-Installation
-============================
-
-Please follow the below installation steps to install parser - POLICY2TOSCA.
-
-Step 1: Clone the parser project.
-
-.. code-block:: bash
-
- git clone https://gerrit.opnfv.org/gerrit/parser
-
-Step 2: Install the policy2tosca module.
-
-.. code-block:: bash
-
- cd parser/policy2tosca
- python setup.py install
-
-Execution
-===========================
-
-Step 1: To see a list of commands available.
-
-.. code-block:: bash
-
- policy2tosca --help
-
-Step 2: To see help for an individual command, include the command name on the command line
-
-.. code-block:: bash
-
- policy2tosca help <service>
-
-Step 3: To inject/remove policy types/policy definitions provide the TOSCA file as input to policy2tosca command line.
-
-.. code-block:: bash
-
- policy2tosca <service> [arguments]
-
-Example:
-
-.. code-block:: bash
-
- policy2tosca add-definition --policy_name rule2 --policy_type tosca.policies.Placement.Geolocation --description "test description" --properties region:us-north-1,region:us-north-2,min_inst:2 --targets VNF2,VNF4 --metadata "map of strings" --triggers "1,2,3,4" --source example.yaml
-
-
-Step 4: Verify the TOSCA YAMl updated with the injection/removal executed.
-
-.. code-block:: bash
-
- cat "<source tosca file>"
-
-Example:
-
-.. code-block:: bash
-
- cat example_tosca.yaml
--- /dev/null
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+===================
+Parser tosca2heat
+===================
+
--- /dev/null
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+=================
+Parser verigraph
+=================
+
.. http://creativecommons.org/licenses/by/4.0
=================
-Parser YANG2TOSCA
+Parser yang2tosca
=================
-Overview
-========
-
-Parser is an open source project and licensed under Apache 2. Parser will help
-to provide a tooling mechanism, by parsing Telecom operators’ VNF descriptors
-(YANG templates) into TOSCA templates and then further translate TOSCA
-templates into certain common templates, which could be used in IaaS orchestration
-projects like OpenStack Heat.
-
-Prerequisites
-=============
-
-Parser requires the following to be installed.
-
-1. PYANG
---------
-
-Please follow the below installation steps.
-
-Step 1: Clone pyang tool or download the zip file from the following link.
-
-.. code-block:: bash
-
- git clone https://github.com/mbj4668/pyang.git
-
-OR
-
-.. code-block:: bash
-
- wget https://github.com/mbj4668/pyang/archive/master.zip
-
-Step 2: Change directory to the downloaded directory and run the setup file.
-
-.. code-block:: bash
-
- cd pyang
- python setup.py
-
-2. python-lxml
---------------
-
-Please follow the below installation link. http://lxml.de/installation.html
-
-
-Installation
-============================
-
-Please follow the below installation steps to install parser.
-
-Step 1: Clone the parser project.
-
-.. code-block:: bash
-
- git clone https://gerrit.opnfv.org/gerrit/parser
-
-Execution
-===========================
-
-Step 1: Change directory to where the scripts are present.
-
-.. code-block:: bash
-
- cd parser/yang2tosca
-
-Step 2: Copy the YANG file which needs to be converted into TOSCA to
- current (parser/yang2tosca) folder.
-
-Step 3: Run the python script "parser.py" with the YANG file as an input option.
-
-.. code-block:: bash
-
- python parser.py -n "YANG filename"
-
-Example:
-
-.. code-block:: bash
-
- python parser.py -n example.yaml
-
-Step 4: Verify the TOSCA YAMl which file has been created with the same name
- as the YANG file with a “_tosca” suffix.
-
-.. code-block:: bash
-
- cat "YANG filename_tosca.yaml"
-
-Example:
-
-.. code-block:: bash
-
- cat example_tosca.yaml
translate TOSCA/CAMP templates into certain common templates, which could be
used in IaaS orchestration projects like OpenStack Heat.
-Upgrades from Arno
+For Arno Release
------------------------
+Parser is not one of the Arno Release projects, however the project has established
+the code base for the later releases:
-For Release B, Parser offers the following additional capabilities:
+* OpenStack Heat Translator Kilo Release
+* Initial documentation on use cases
-* Integration of Heat-Translator Liberty release code. (both heat in-tree code and standalone package are provided)
+Upgrades from Arno Release
+------------------------
+
+For Brahmaputra Release, Parser offers the following additional capabilities:
+
+* Update with the integration of OpenStack Heat-Translator Liberty Release, of which
+ both heat in-tree code and standalone package are provided.
-* Yang2Tosca module which offers the capability to translate yang based
+* New module yang2tosca module which offers the capability to translate yang based
scriptors to tosca formate templates. Users could further use Heat-translator
module to translate this tosca template to Heat Orchestration template.
Yang2Tosca module could be installed seperately after user installed
from Release C to indicate which specific set of keywords are supported in
Parser.
-* The "vRNC_tosca_intro" document describes Parser's use case analysis on vRNC scenario.
- The "example" folder contains examples of tosca-nfv standard and vRNC scenario.
- See also https://wiki.opnfv.org/parser.
+* The "vRNC_tosca_intro" document describes Parser's use case analysis on vRNC
+scenario.The "example" folder contains examples of tosca-nfv standard and vRNC
+scenario. See also https://wiki.opnfv.org/parser.
-Upgrades from Brumapatra
+Upgrades from Brahmaputra Release
-----------------------
-For Release C, Parser offers the following additional capabilities:
+For Colorado Release, Parser offers the following additional capabilities:
-* Policy2Tosca module which enables policy related fields in tosca could be translated
- into heat orchestration template correctly. Policy2Tosca module could be installed seperately
- after user installed OPNFV C release platform.
+* New module policy2tosca which enables policy related fields in tosca could be
+translated into heat orchestration template correctly. Policy2Tosca module could
+be installed seperately after user installed OPNFV C release platform.
-* Tosca2Heat enhancements which includes a set of feature addons (such as substitution mapping)
-for OpenStack tosca-parser module which is integrated in the OPNFV C release platform. And the
-main details are listed below:
+* New module tosca2heat enhancements which includes a set of feature addons (such
+as substitution mapping) for OpenStack tosca-parser module which is integrated in
+the OPNFV C release platform. And the main details are listed below:
** support substitution mapping semantic in tosca-parser:
- support parse and validation about substitution mapping definition;
* Additional testing support.
-Upgrades from Colorado
-----------------------
+Upgrades from Colorado Release
+------------------------------
+
+For Danube Release, Parser offers the following additional capabilities:
+
+* New module verigraph which is a formal verification tool for service graphs. Given
+ a service graph, which can include stateful network functions and their configurations
+ (e.g., filtering rules for firewalls, and blacklists for anti-spamming filters), verigraph
+ can accurately and quickly check reachability properties in the graph (e.g. if a particular
+ flow of packets can go from one node of the graph to another node). Verigraph exploits
+ Satisfiability Modulo Theories (SMT) and the general-purpose SMT solver Z3. It includes a
+ library of network function models.
-For Release D, Parser offers the following additional capabilities:
+* The tosca2heat module updated with the intgeration of OpenStack tosca-parser and heat-translator
+ 0.7.0 releases.
--- /dev/null
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+*****************************************
+OPNFV Parser Requirements In Arno Release
+*****************************************
+
+.. contents::
+ :depth: 3
+ :local:
+
+Use Case Description
+---------------
+
+* When Operators want to do automation on utilizing VIM to manage hypervisor
+level accelerators which VNFs don't have knowledge of, certain templates
+would be deployed and Parser would be used if operator defined template could
+not be supported by VIM automation/orchestration tools directly.
+
--- /dev/null
+.. This work is licensed under a Creative Commons Attribution 4.0 International License.
+.. http://creativecommons.org/licenses/by/4.0
+
+*************************************
+OPNFV Parser Governance Documentation
+*************************************
+
+.. toctree::
+ :numbered:
+ :maxdepth: 6
+
+ ../committer/parser project committer promotion guidline.rst
.. http://creativecommons.org/licenses/by/4.0
-Parser general configuration
-=====================
-Parser can be configured with any installer in current OPNFV.
+Parser tosca2heat Installation
+============================
+
+Please follow the below installation steps to install tosca2heat submodule in parser.
+
+Step 1: Clone the parser project.
+
+.. code-block:: bash
+
+ git clone https://gerrit.opnfv.org/gerrit/parser
+
+Step 2: Install the heat-translator sub project.
-Pre-configuration activities
------------------------------
-For parser, there is not specific pre-configuration activities.
+.. code-block:: bash
+
+ # uninstall pre-installed tosca-parser
+ pip uninstall -y heat-translator
+
+ # change directory to heat-translator
+ cd parser/tosca2heat/heat-translator
+
+ # install requirements
+ pip install -r requirements.txt
-Hardware configuration
------------------------
-For parser, there is not hardware configuration needed for this specific installer.
+ # install heat-translator
+ python setup.py install
+
+Step 3: Install the tosca-parser sub project.
+
+.. code-block:: bash
-Jumphost configuration
------------------------
-For parser, there is not intial Jumphost configuration (network and software)needed in order
-to deploy any installer.
+ # uninstall pre-installed tosca-parser
+ pip uninstall -y tosca-parser
+ # change directory to tosca-parser
+ cd parser/tosca2heat/tosca-parser
-Parser tosca2heat configuration
-=====================
-For tosca2heat components(tosca-parser and heat-translator) in parser,there are not specific
-configuration of each component in installer.
+ # install requirements
+ pip install -r requirements.txt
+ # install tosca-parser
+ python setup.py install
-Parser yang2tosca configuration
-=====================
+
+ **Notes** It must uninstall pre-installed tosca-parser and heat-translator before install the two
+ components, and install heat-translator before installing tosca-parser, which is sure to use the
+ OPNFV version of tosca-parser and heat-translator other than openstack's components.
+
+
+Parser yang2tosca Installation
+==============================
Parser yang2tosca requires the following to be installed.
-1. PYANG
---------
+Step 1: Clone the parser project.
-Please follow the below installation steps.
+.. code-block:: bash
-Step 1: Clone pyang tool or download the zip file from the following link.
+ git clone https://gerrit.opnfv.org/gerrit/parser
+
+Step 2: Clone pyang tool or download the zip file from the following link.
.. code-block:: bash
wget https://github.com/mbj4668/pyang/archive/master.zip
-Step 2: Change directory to the downloaded directory and run the setup file.
+Step 3: Change directory to the downloaded directory and run the setup file.
.. code-block:: bash
cd pyang
python setup.py
-2. python-lxml
+Step 4: install python-lxml
--------------
Please follow the below installation link. http://lxml.de/installation.html
-Parser policy2tosca configuration
-============================
-Parser - POLICY2TOSCA requires the following to be installed.
+Parser policy2tosca installation
+================================
+
+Please follow the below installation steps to install parser - POLICY2TOSCA.
-1. cliff
---------
+Step 1: Clone the parser project.
+
+.. code-block:: bash
+
+ git clone https://gerrit.opnfv.org/gerrit/parser
+
+Step 2: Install the policy2tosca module.
+
+.. code-block:: bash
-Install cliff with the following links.
-::
-- `install <http://docs.openstack.org/developer/cliff/install.html>`
-or
-- `demoapp <http://docs.openstack.org/developer/cliff/demoapp.html>
+ cd parser/policy2tosca
+ python setup.py install
.. http://creativecommons.org/licenses/by/4.0
.. (c) <optionally add copywriters name>
-Parser tosca2heat Installation
-============================
-
-Please follow the below installation steps to install tosca2heat submodule in parser.
-
-Step 1: Clone the parser project.
-
-.. code-block:: bash
-
- git clone https://gerrit.opnfv.org/gerrit/parser
-
-Step 2: Install the heat-translator sub project.
-
-.. code-block:: bash
-
- # uninstall pre-installed tosca-parser
- pip uninstall -y heat-translator
-
- # change directory to heat-translator
- cd parser/tosca2heat/heat-translator
-
- # install requirements
- pip install -r requirements.txt
-
- # install heat-translator
- python setup.py install
-
-Step 3: Install the tosca-parser sub project.
-
-.. code-block:: bash
-
- # uninstall pre-installed tosca-parser
- pip uninstall -y tosca-parser
-
- # change directory to tosca-parser
- cd parser/tosca2heat/tosca-parser
-
- # install requirements
- pip install -r requirements.txt
-
- # install tosca-parser
- python setup.py install
-
- **Notes** It must uninstall pre-installed tosca-parser and heat-translator before install the two
- components, and install heat-translator before installing tosca-parser, which is sure to use the
- OPNFV version of tosca-parser and heat-translator other than openstack's components.
Parser tosca2heat Execution
===========================