Automatic Heat template generation
Go to file
Gauvain Pocentek 7d2f8a5703 Don't fail if volume has no name or description
Volume objects in the cinder client don't always provide the
display_name and display_description attributes. Don't fail in this
case.

Change-Id: I08448f002912c2382fcc6728ce3ecf75038faec2
2016-05-14 16:51:42 +02:00
doc/source Use a single keystone instance for all the clients 2016-05-13 16:43:07 +02:00
flameclient Don't fail if volume has no name or description 2016-05-14 16:51:42 +02:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:58:32 +00:00
.gitignore Refactor the code to match the openstack code structure. 2014-08-25 20:58:42 -04:00
.gitreview Update .gitreview for new namespace 2015-10-17 22:10:38 +00:00
.testr.conf Refactor the code to match the openstack code structure. 2014-08-25 20:58:42 -04:00
LICENSE Add documentation on how to use flame 2014-08-29 16:47:52 -04:00
MANIFEST.in Refactor the code to match the openstack code structure. 2014-08-25 20:58:42 -04:00
README.rst Use a single keystone instance for all the clients 2016-05-13 16:43:07 +02:00
babel.cfg Refactor the code to match the openstack code structure. 2014-08-25 20:58:42 -04:00
requirements.txt Update requirements 2016-03-29 11:21:31 +02:00
setup.cfg remove python 2.6 trove classifier 2015-12-23 01:31:08 +00:00
setup.py Refactor the code to match the openstack code structure. 2014-08-25 20:58:42 -04:00
test-requirements.txt Update requirements 2016-03-29 11:21:31 +02:00
tox.ini py26 is no longer supported by Infra's CI 2015-12-26 13:49:29 +05:30

README.rst

Flame: Automatic Heat template generation

OpenStack Orchestration project Heat implements an orchestration engine to launch multiple composite cloud applications based on templates. A Heat template describes infrastructure resources (servers, networks, floating ips, etc) and the relationships between these resources, allowing Heat to deploy the resources in a correct order and to manage whole infrastructure lifecycle.

flame is a standalone tool that generates HOT Heat template from already existing infrastructure. It provides support for Nova (key pairs and servers), Cinder (volumes) and Neutron (router, networks, subnets, security groups and floating IPs) resources.

flame works as follows: using provided credentials (user name, project name, password or auth_token, authentication url), the tool will list supported resources deployed in the project and will generate corresponding, highly customized HOT template.

Installation

First of all, clone the repository and go to the repository directory:

git clone https://github.com/openstack/flame.git cd flame

Then just run:

python setup.py install

Usage

usage: flame [-h] [--username USERNAME] [--password PASSWORD]

[--project PROJECT] [--region REGION] [--auth_url AUTH_URL] [--insecure] [--exclude-servers] [--exclude-volumes] [--generate-stack-data]

Heat template and data file generator

optional arguments:

-h, --help show this help message and exit --username USERNAME A user name with access to the project. Defaults to env[OS_USERNAME] --password PASSWORD The user's password. Defaults to env[OS_PASSWORD] --project PROJECT Name of project. Defaults to env[OS_TENANT_NAME] --region REGION Name of region. Defaults to env[OS_REGION_NAME] --auth_url AUTH_URL Authentication URL. Defaults to env[OS_AUTH_URL]. --os-auth-token OS_AUTH_TOKEN User's auth token. Defaults to env[OS_AUTH_TOKEN]. --insecure Explicitly allow clients to perform"insecure" SSL (https) requests. The server's certificate will not be verified against any certificate authorities. This option should be used with caution. --exclude-servers Do not export in template server resources --exclude-volumes Do not export in template volume resources --exclude-keypairs Do not export in template key pair resources --generate-stack-data In addition to template, generate Heat stack data file.

Usage example

To use Flame you can provide yours OpenStack credentials as arguments :

$ flame --username user --password password --project project --auth_url http://<Keystone_host>:5000/v2.0

Or you can source your OpenStack RC file and use Flame without arguments.

Flame can be used with either a login and password pair or a keystone token by exporting the OS_AUTH_TOKEN variable (the token is obtained with keystone token-get).