Sync upstream code
[parser.git] / tosca2heat / tosca-parser / README.rst
1 ========================
2 Team and repository tags
3 ========================
4
5 .. image:: http://governance.openstack.org/badges/tosca-parser.svg
6     :target: http://governance.openstack.org/reference/tags/index.html
7
8 .. Change things from this point on
9
10 ===============
11 TOSCA Parser
12 ===============
13
14 Overview
15 --------
16
17 The TOSCA Parser is an OpenStack project and licensed under Apache 2. It is
18 developed to parse TOSCA Simple Profile in YAML. It reads the TOSCA templates
19 and creates an in-memory graph of TOSCA nodes and their relationship.
20
21 Architecture
22 ------------
23
24 The TOSCA Parser takes TOSCA YAML template or TOSCA Cloud Service Archive (CSAR)
25 file as an input, with optional input of dictionary of needed parameters with their
26 values, and produces in-memory objects of different TOSCA elements with their
27 relationship to each other. It also creates a graph of TOSCA node templates and their
28 relationship.
29
30 The ToscaTemplate class located in the toscaparser/tosca_template.py is an entry
31 class of the parser and various functionality of parser can be used by initiating
32 this class. In order to see an example usage of TOSCA Parser from a separate tool,
33 refer to the OpenStack heat-translator class TranslateTemplate located in the
34 translator/osc/v1/translate.py module. The toscaparser/shell.py module of tosca-parser
35 also provides a good reference on how to invoke TOSCA Parser from Command Line Interface.
36
37 The toscaparser/elements sub-directory contains various modules to handle
38 various TOSCA type elements like node type, relationship type etc. The
39 entity_type.py module is a parent of all type elements. The toscaparser
40 directory contains various python module to handle service template including
41 topology template, node templates, relationship templates etc. The
42 entity_template.py is a parent of all template elements.
43
44
45 How To Use
46 ----------
47 Please refer to `doc/source/usage.rst <https://github.com/openstack/tosca-parser/blob/master/doc/source/usage.rst>`_
48
49 Project Info
50 ------------
51
52 * License: Apache License, Version 2.0
53 * Source: http://git.openstack.org/cgit/openstack/tosca-parser/
54