Translate non-heat templates to Heat Orchestration Template.
3f98139a7e
Tosca types need to be mapped to corresponding target translation types (i.e. HOT). This commit allows for the target types to be dynamically loaded from a directory. It allows for more flexibility by pulling types from a known directory instead of defining each individiual type statically in the code. For example, with this commit you no longer need a separate import for each target type. Also, this commit adds the notion of a global configuration object that can be shared throughout the translator. The configuration defines the location directory for custom defined target types. This configuration can be set by the user in the corresponding translator/conf/translator.conf file. In the future, additional values can be added to this configuration and the code can be extended to support them, but only the required values were implemented here. Change-Id: If7b8da12eef5b8ed8a2e11b1f412203d4ed59c5a Implements: blueprint dynamic-tosca-to-hot-map |
||
---|---|---|
contrib | ||
doc/source | ||
translator | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.testr.conf | ||
babel.cfg | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
heat_translator_logging.conf | ||
heat_translator.py | ||
LICENSE | ||
MANIFEST.in | ||
openstack-common.conf | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
Heat-Translator
Tool to translate non-heat templates to Heat Orchestration Template (HOT).
Overview
Heat-Translator is an Openstack project and licensed under Apache 2. It is a command line tool which takes non-Heat templates as an input and produces a Heat Orchestration Template (HOT) which can be deployed by Heat. Currently the development and testing is done with an aim to translate OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) templates to HOT. However, the tool is designed to be easily extended to use with any format other than TOSCA.
Architecture
Heat-Translator project is mainly built of two components:
- Parser - parser for a particular template format e.g. TOSCA parser
- Generator - takes an in-memory graph from Parser, maps it to Heat resources and software configuration and then produces a HOT.
How To Use
Please refer to doc/source/usage.rst
Directory Structure
Three main directories related to the heat-translator are:
- hot: It is the generator, that has logic of converting TOSCA in memory graph to HOT yaml files.
- common: It has all the file that can support the execution of parser and generator.
- tests: It contains test programs and more importantly several templates which are used for testing.
Project Info
- License: Apache License, Version 2.0
- Documentation: http://docs.openstack.org/developer/heat-translator/
- Launchpad: https://launchpad.net/heat-translator
- Blueprints: https://blueprints.launchpad.net/heat-translator
- Bugs: https://bugs.launchpad.net/heat-translator
- Source: http://git.openstack.org/cgit/openstack/heat-translator/
- IRC Channel: #openstack-heat-translator