[Openstack] Using glance to upload/add??

Jay Pipes jaypipes at gmail.com
Thu Apr 5 20:16:52 UTC 2012


Heya! Answers inline. :)

On 04/05/2012 02:38 PM, Joshua Harlow wrote:
> Hi all,
>
> I was looking at the glance add command and I am trying to figure out
> how to use it to upload images to locations other than the
> “default_store = file”
>
> How does one go about telling it which store should be used.

You can pass the X-Image-Meta-Store: header to one of "swift", "s3", or 
"rds". Unfortunately, this is not supported in the glance CLI tool right 
now. You could add a quick hack that adds the X-Image-Meta-Store header 
to the features variable. Something like this git diff shows...

diff --git a/bin/glance b/bin/glance
index 9eb68ae..f298cce 100755
--- a/bin/glance
+++ b/bin/glance
@@ -228,6 +228,8 @@ EXAMPLES
                    'min_ram': fields.pop('min_ram', 0),
      }

+    alternate_store = fields.pop('store', None)
+
      for format in ['disk_format', 'container_format']:
          if format in fields:
              image_meta[format] = fields.pop(format)
@@ -260,6 +262,9 @@ EXAMPLES
          # otherwise error out
          image_data = sys.stdin

+    if alternate_store:
+        features['X-Image-Meta-Store'] = alternate_store
+
      # allow owner to be set when image is created
      if 'owner' in fields.keys():
          image_meta['owner'] = fields.pop('owner')

and try that :)

If it works out, feel free to contribute the patch to Glance ;)

> It seems like there is a /location /option, but that is the fully
> specified location, and I am unsure about that since the function that
> eventually gets called in these storage objects doesn't have/receive that.
>
> def add(self, image_id, image_file, image_size):
>
> Is it expected that people will only add to locations that use the
> default_store?

No, but it hasn't been something that users have clamoured for up until 
now -- mostly because people standing up Glance are typically standing 
it up with some default store and only storing images using that store. 
But the "plumbing" is there to support this. as mentioned above.

Best,
-jay

> Might be nice to actually be able to specify that, and resort to the
> default_store if its not provided (thus the reason its called default).
>
> Thx!
>
> -Josh
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp




More information about the Openstack mailing list