e798119841
Flame needed pemanent adjustments to mathe the changes in the python-openstackclients. We now use openstacksdk or shade which will handle themselves the compatibility. We also made flame modular so that any-one can add features by implementing there own flame managers and adding their modules to the `openstack_flame` entry point. This new flame version is also fully compatible with python 3. Change-Id: I586a165b5022031963f504874bd50e1b11fe0d27
29 lines
1.5 KiB
ReStructuredText
29 lines
1.5 KiB
ReStructuredText
When developping on flameclient, do not forget to check code quality with the
|
|
`./checkcode` command, and then check you did not brake anything by running
|
|
`python -m unittest discover -v`.
|
|
|
|
To create flame modules you need to create a module with a class which
|
|
inheritates from `flameclient.resources.ResourceManager`
|
|
|
|
You need to implement the `api_resources` property and the `get_hot_resources()`
|
|
method (read their docstring for more information).
|
|
If you want you can also implement the `add_arguments(parser=None)` method to
|
|
add your own module's command line arguments.
|
|
You can also implement the `post_process()`,
|
|
`post_process_hot_resources(resources)`, `post_process_heat_template(template)` and/or
|
|
`post_process_adoption_data(adoption_data)` methods to perform
|
|
post processing after the generator's `extract_data` method was called
|
|
(read their docstring for more information). This allows you to modify results
|
|
before rendering the template.
|
|
These post processing methods are not threaded and are executed in order of the
|
|
managers' `post_priority` attribute (defaults to 100).
|
|
|
|
Then, you need to add in your package's `setup.py` or `setup.cfg` an
|
|
'openstack_flame' entry point pointing to the module file where your subclass
|
|
of `flameclient.resources.ResourceManager` is defined.
|
|
|
|
Once your package installed, flame will automatically discover all
|
|
'openstack_flame' entry points to load the corresponding modules, and all
|
|
loaded modules having a `flameclient.resources.ResourceManager` subclass will
|
|
have this subclass detected and added tho the list of managers.
|