From 614ba0a98fdb2ed5404ea4a237154ad9870e8ae8 Mon Sep 17 00:00:00 2001 From: Zane Bitter Date: Wed, 28 Nov 2018 12:12:07 -0500 Subject: [PATCH] Revert "Use OutputDefinition to generate attributes schema" This reverts commit 85eff5fc3d03dce7d0d17d965f27246bd3306c53. Change-Id: I325593df0cd7a48cbc85edf7838cddbc0911b4b6 Closes-Bug: #1805589 Depends-On: https://review.openstack.org/620457 Depends-On: https://review.openstack.org/619786 --- heat/engine/attributes.py | 8 +++++--- heat/engine/resources/stack_resource.py | 4 ++-- heat/engine/resources/template_resource.py | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/heat/engine/attributes.py b/heat/engine/attributes.py index 407547c1f3..47e50be56a 100644 --- a/heat/engine/attributes.py +++ b/heat/engine/attributes.py @@ -200,9 +200,11 @@ class Attributes(collections.Mapping): return outp @staticmethod - def schema_from_outputs(outputs): - return dict((o.name, Schema(o.description())) - for o in outputs.values()) + def schema_from_outputs(json_snippet): + if json_snippet: + return dict((k, Schema(v.get("Description"))) + for k, v in json_snippet.items()) + return {} def _validate_type(self, attrib, value): if attrib.schema.type == attrib.schema.STRING: diff --git a/heat/engine/resources/stack_resource.py b/heat/engine/resources/stack_resource.py index ec5bb7685a..7def946c51 100644 --- a/heat/engine/resources/stack_resource.py +++ b/heat/engine/resources/stack_resource.py @@ -92,8 +92,8 @@ class StackResource(resource.Resource): return "nested_stack" - def _outputs_to_attribs(self, parsed_template): - outputs = parsed_template.outputs(None) + def _outputs_to_attribs(self, json_snippet): + outputs = json_snippet.get('Outputs') if not self.attributes and outputs: self.attributes_schema = ( attributes.Attributes.schema_from_outputs(outputs)) diff --git a/heat/engine/resources/template_resource.py b/heat/engine/resources/template_resource.py index 43fb81ec7e..44959e966b 100644 --- a/heat/engine/resources/template_resource.py +++ b/heat/engine/resources/template_resource.py @@ -108,7 +108,7 @@ class TemplateResource(stack_resource.StackResource): return ((properties.Properties.schema_from_params( tmpl.param_schemata(param_defaults))), (attributes.Attributes.schema_from_outputs( - tmpl.outputs(None)))) + tmpl[tmpl.OUTPUTS]))) def _generate_schema(self): self._parsed_nested = None