Merge "Change template loading to use stevedore extensions"
This commit is contained in:
commit
d6bdbcc71e
@ -147,10 +147,3 @@ class CfnTemplate(template.Template):
|
||||
|
||||
self.t.setdefault(self.RESOURCES, {})
|
||||
self.t[self.RESOURCES][name] = cfn_tmpl
|
||||
|
||||
|
||||
def template_mapping():
|
||||
return {
|
||||
('HeatTemplateFormatVersion', '2012-12-12'): CfnTemplate,
|
||||
('AWSTemplateFormatVersion', '2010-09-09'): CfnTemplate,
|
||||
}
|
||||
|
@ -223,9 +223,3 @@ class HOTemplate(template.Template):
|
||||
|
||||
self.t.setdefault(self.RESOURCES, {})
|
||||
self.t[self.RESOURCES][name] = definition.render_hot()
|
||||
|
||||
|
||||
def template_mapping():
|
||||
return {
|
||||
('heat_template_version', '2013-05-23'): HOTemplate,
|
||||
}
|
||||
|
@ -15,6 +15,7 @@ import abc
|
||||
import collections
|
||||
import copy
|
||||
import functools
|
||||
from stevedore import extension
|
||||
|
||||
from heat.common import exception
|
||||
from heat.db import api as db_api
|
||||
@ -76,8 +77,12 @@ def get_template_class(plugin_mgr, template_data):
|
||||
global _template_classes
|
||||
|
||||
if _template_classes is None:
|
||||
tmpl_mapping = plugin_manager.PluginMapping('template')
|
||||
_template_classes = dict(tmpl_mapping.load_all(plugin_mgr))
|
||||
mgr = extension.ExtensionManager(
|
||||
namespace='heat.templates',
|
||||
invoke_on_load=False,
|
||||
verify_requirements=True)
|
||||
_template_classes = dict((tuple(name.split('.')), mgr[name].plugin)
|
||||
for name in mgr.names())
|
||||
|
||||
available_versions = _template_classes.keys()
|
||||
version = get_version(template_data, available_versions)
|
||||
|
@ -45,6 +45,12 @@ heat.constraints =
|
||||
nova.keypair = heat.engine.resources.nova_keypair:KeypairConstraint
|
||||
|
||||
|
||||
heat.templates =
|
||||
heat_template_version.2013-05-23 = heat.engine.hot.template:HOTemplate
|
||||
HeatTemplateFormatVersion.2012-12-12 = heat.engine.cfn.template:CfnTemplate
|
||||
AWSTemplateFormatVersion.2010-09-09 = heat.engine.cfn.template:CfnTemplate
|
||||
|
||||
|
||||
[global]
|
||||
setup-hooks =
|
||||
pbr.hooks.setup_hook
|
||||
|
Loading…
Reference in New Issue
Block a user