diff --git a/docs/release-notes.rst b/docs/release-notes.rst
new file mode 100644
index 0000000..9d6b5b2
--- /dev/null
+++ b/docs/release-notes.rst
@@ -0,0 +1,181 @@
+.. 
+..  Copyright (c) 2019 AT&T Intellectual Property.
+..  Copyright (c) 2019 Nokia.
+..
+..  Licensed under the Creative Commons Attribution 4.0 International
+..  Public License (the "License"); you may not use this file except
+..  in compliance with the License. You may obtain a copy of the License at
+..
+..    https://creativecommons.org/licenses/by/4.0/
+..
+..  Unless required by applicable law or agreed to in writing, documentation
+..  distributed under the License is distributed on an "AS IS" BASIS,
+..  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+..
+..  See the License for the specific language governing permissions and
+..  limitations under the License.
+..
+
+
+
+This document provides the release notes for <RELEASE> of <COMPONENT>.
+
+.. contents::
+   :depth: 3
+   :local:
+
+
+Version history
+---------------
+
++--------------------+--------------------+--------------------+--------------------+
+| **Date**           | **Ver.**           | **Author**         | **Comment**        |
+|                    |                    |                    |                    |
++--------------------+--------------------+--------------------+--------------------+
+| 20XX-XX-XX         | 0.1.0              |                    | First draft        |
+|                    |                    |                    |                    |
++--------------------+--------------------+--------------------+--------------------+
+|                    | 0.1.1              |                    |                    |
+|                    |                    |                    |                    |
++--------------------+--------------------+--------------------+--------------------+
+|                    | 1.0                |                    |                    |
+|                    |                    |                    |                    |
++--------------------+--------------------+--------------------+--------------------+
+
+
+Summary
+=======
+
+<SUMMARIZE THE RELEASE - THE CONTENT - AND OTHER IMPORTANT HIGH LEVEL PROPERTIES>
+
+
+
+
+Release Data
+============
+<STATE RELEVANT RELEASE DATA/RECORDS>
+
+<EXAMPLE>:
+
++--------------------------------------+--------------------------------------+
+| **Project**                          | E.g. Arno/genesis/fuel@opnfv         |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| **Repo/commit-ID**                   | E.g. genesis/adf634a0d4.....         |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| **Release designation**              | E.g. Arno RC2                        |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| **Release date**                     | E.g. 2015-04-16                      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| **Purpose of the delivery**          | E.g. OPNFV Internal quality assurance|
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+
+
+
+
+Feature additions
+~~~~~~~~~~~~~~~~~~~~~~~
+<STATE ADDED FEATURES BY REFERENCE TO JIRA>
+
+<EXAMPLE>:
+
+**JIRA BACK-LOG:**
+
++--------------------------------------+--------------------------------------+
+| **JIRA REFERENCE**                   | **SLOGAN**                           |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| 		                       | 				      |
+|                                      | 				      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| 	                               |  				      |
+|                                      |  				      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+
+Bug corrections
+~~~~~~~~~~~~~~~~~~~~~
+
+**JIRA TICKETS:**
+
++--------------------------------------+--------------------------------------+
+| **JIRA REFERENCE**                   | **SLOGAN**                           |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| 		                       | 				      |
+|                                      | 				      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| 	                               |  				      |
+|                                      |  				      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+
+Deliverables
+----------------
+
+Software deliverables
+^^^^^^^^^^^^^^^^^^^^^^^
+
+<STATE WHAT SOFTWARE DELIVERABLES THAT ARE RELATED TO THIS VERSION, AND WHERE THOSE CAN BE RETRIEVED>
+
+<EXAMPLE>:
+
+Documentation deliverables
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+<STATE WHAT DOCUMENTATION DELIVERABLES THAT ARE RELATED TO THIS VERSION, AND WHERE THOSE CAN BE RETRIEVED>
+
+<EXAMPLE>:
+
+
+Known Limitations, Issues and Workarounds
+=========================================
+
+System Limitations
+^^^^^^^^^^^^^^^^^^^^
+<STATE ALL RELEVANT SYSTEM LIMITATIONS, IF THERE IS ANY>
+
+
+
+Known issues
+^^^^^^^^^^^^^^^
+<STATE ALL KNOWN ISSUES WITH JIRA REFERENCE>
+
+<EXAMPLE>:
+
+**JIRA TICKETS:**
+
++--------------------------------------+--------------------------------------+
+| **JIRA REFERENCE**                   | **SLOGAN**                           |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| 		                       | 				      |
+|                                      | 				      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+| 	                               |  				      |
+|                                      |  				      |
+|                                      |                                      |
++--------------------------------------+--------------------------------------+
+
+Workarounds
+^^^^^^^^^^^^^^^^^
+
+<STATE ALL KNOWN WORKAROUNDS TO THE ISSUES STATED ABOVE, IF THERE IS ANY>
+
+
+
+
+References
+==========
+<STATE RELEVANT REFERENCES FOR THIS RELEASE/VERSION>
+
+
+
+
