[openstack-dev] Fw: [Heat] Enhancement on addition to heat template with glance

Steven Hardy shardy at redhat.com
Tue Jan 13 14:24:53 UTC 2015

On Tue, Jan 13, 2015 at 05:50:57PM +0530, Anusha Rayani wrote:
>    Hello Steve,
>    Thanks for your response.
>    Yes,we do have an resource class defined in Heat to upload an image, but
>    in this case we can only use the image from URL where as using --file 
>    option to glance image-create we can upload a disk image from local
>    filesystem to glance.
>    $ glance image-create
>      --file <FILE>         Local file that contains disk image to be uploaded
>                            during creation. Alternatively, images can be
>    passed
>                            to the client via stdin.
>    However GlanceImage class has only an option to upload the image from
>    location/URL.

Heat resources are a representation of the underlying API, you're referring
to a convenience function which is part of python-glanceclient, which can
read a local file and upload the binary image data to the glance API.

I don't think having such an interface to the Heat resource makes sense,
for the following reasons:

1. The heat service has no access to your local filesystem, so you'd have
to upload the entire binary image to heat, then we'd have to upload it
again to glance, this is a huge and unjustified overhead IMO.

2. There are several existing patterns which solve this, such as:
    - uploading the image via glance image-create then passing the ID in to
      the heat stack as a parameter
    - hosting the image in swift or a webserver and passing the URL to heat
      then consuming it via GlanceImage

Can you explain why uploading the image to heat would be worthwhile, vs one
of the other interfaces I just mentioned?



More information about the OpenStack-dev mailing list