Don't recalculate EndpointMap to get outputs
authorZane Bitter <zbitter@redhat.com>
Fri, 3 Feb 2017 22:52:10 +0000 (17:52 -0500)
committerEmilien Macchi <emilien@redhat.com>
Mon, 27 Feb 2017 12:18:40 +0000 (12:18 +0000)
commit94e27e64d469d6a25c9e7b5dca2f06a5479268a7
tree834c36acc06da9a089fefb8c383d653e970d78a5
parent8c9cef20efb663983e45f6234c211b7443423804
Don't recalculate EndpointMap to get outputs

As of Ocata, whenever Heat needs to get the value of an output from a
nested Stack it will still load the Stack in memory and re-resolve the
output value. This means that the EndpointMap's endpoint_map output, which
is huge, gets loaded and recalculated whenever showing the EndpointMap or
KeystoneUrl outputs of the main (overcloud) stack. To avoid this, store the
value locally in an OS::Heat::Value resource. This means that the
EndpointMap will only be resolved once, during the stack create/update, and
the outputs can refer to that value.

Related-Bug: #1661728
Change-Id: Ia79eceeea309f5508713a310849f5d366a035430
Depends-On: If0f80cab94c28514d1569b1025362ab9d9d31512
(cherry picked from commit b2ee58c7f6883011b4ba8b387eedc63d3600aea0)
overcloud.j2.yaml