[openstack-dev] [Heat] Show attribute is a collection of other attributes or not?

Steven Hardy shardy at redhat.com
Thu Jul 2 17:46:21 UTC 2015


On Thu, Jul 02, 2015 at 04:40:49PM +0300, Sergey Kraynev wrote:
>    Hi Heaters.
>    I don't think that my question is very huge for openstack-dev, but it
>    affects a lot of Heat resourcesA 
>    and need collect more opinions before apply some of follow approaches.
>    I recently uploaded initial approach for implementation common 'show'
>    attribute [1]A 
>    On one of this review was raised one interesting suggestion:
>    'show' attribute should return map of all resource's attributes, i.e.
>    for each attr in self.attributes_schema:
>    A  A outputs[attr] = A _resolve_attribute(attr)
>    return outputs
>    I agree, that it's more easier than separate show_resource method for each
>    resource and it's the same, what returns Neutron API on "show" request.
>    However, we already has opposite example, when OS::Nova::Server resource
>    has bunch of attributes which are not similar on current 'show' attribute
>    output:
>    https://github.com/openstack/heat/blob/master/heat/engine/resources/openstack/nova/server.py#L918
>    I suppose, that the same situation will be and for other resources.
>    So I want to ask about way, which we would like to follow?
>    [1] "show" as collection of attributes
>    [2] "show" as the same output for command "<some client> A <name of

I think [2] is the most useful, and most consistent with both the nova and
all neutron resources:

https://github.com/openstack/heat/blob/master/heat/engine/resources/openstack/neutron/neutron.py#L129

Another advantage of this "transparent" passthrough of the data returned by
the client is folks have a workaround in the event heat attributes schema
lack some new value that the client returns.  Obviously when it's added
to the attributes schema, it'll be better to use that instead.

Steve



More information about the OpenStack-dev mailing list