Commit Graph

22 Commits

Author SHA1 Message Date
Unmesh Gurjar 30d8e1b97c Specified Content-Length in update request header
While uploading a Volume to an image, the HTTPConnection's request method does
not set the Content-Length header (since the volume file is a sym link i.e. the
os.fstat call returns a st_size of 0). This causes Volume uploads to Glance
fail (since the image data is ignored as no content-length is specified).
Therefore setting the Content-Length from update( ) method if the image data is
provided.

Fixes LP: #1045824

Change-Id: If259fc5a338e3e90214a52b773132ed901691c0f
2012-09-06 00:41:08 -07:00
Brian Lamar d64876424e Ensure v1 'limit' query parameter works correctly.
The tests were present but were not asserting list results.

page_size was overriding the absolute limit so limits were
not working if they were less than the page_size.

Fixes bug 1037233

Change-Id: If102824212e3846bc65d3f7928cf7aa2e48aaa63
2012-08-15 14:50:11 -04:00
Brian Waldon a5b8165d7d Allow 'deleted' to be passed through image update
The legacy client allowed users to pass 'deleted' through an
update call. This is breaking some clients of this library because
they expect to be be able to still do that.

Fixes bug 1036315

Change-Id: I9ae20a5e4579240c7d5e86316d6d1e927755dbf5
2012-08-13 10:56:27 -07:00
Brian Waldon 8f0d5c4f2c Cast is_public, protected, deleted to bool
To keep a consistent view of an image, is_public, protected, and
deleted need to be cast to a bool when being parsed from headers.

Fix bug 1036299

Change-Id: I2730a0f2d705d26ebc0ba883e99c1caf44d70b51
2012-08-13 10:55:43 -07:00
Brian Waldon 1e539dfdbe Return known int values as int, not str
Cast size, min_ram, min_disk to integers before returning them
to the user from the v1 API.

Fixes bug 1036297

Change-Id: Ib1e2a3bf931e433b6311cc8a1a5219168b50be97
2012-08-13 10:18:51 -07:00
Lars Gellrich 137b3cf975 Enable client V2 to download images
Added the CLI option image-download to download an image via API V2.
Added utility function to save an image.
Added common iterator to validate the checksum.

Related to bp glance-client-v2

Change-Id: I0247f5a3462142dc5e9f3dc16cbe00c8e3d42f42
2012-08-09 17:14:22 +00:00
Brian Waldon 0f628b19cb Add pagination to v1 image-list
* Use recursive generator function to make subsequent requests
  to the v1 detailed images resource
* 'limit' continues to act as the absolute limit of images to return
  from a list call
* 'page_size' indicates how many images to ask for in each subsequent
  pagination request
* Expose --page-size through the cli
* Convert v1 images tests to use strict url comparison
* Drop strict_url_check from FakeAPI kwargs - now the functionality
  is always active and tests must directly match fixture urls
* Fix bug 1024614

Change-Id: Ifa7874d88360e03b5c8aa95bfb9d5e6dc6dc927e
2012-07-19 13:26:37 -07:00
Brian Waldon da360462a5 Wrap image data in iterator
This is establishing the API for a future optimization. We want to
be able to offer true socket-level caching, but can't do that with
httplib2 right now. For now, we will just fake the optimization
by returning an iterator over the image body, which happens to already
be fully loaded into a string.

Change-Id: I2d36e3cdd45b26d7c7c27ba050bf6a4b5765df6c
2012-07-11 19:55:02 -07:00
Brian Waldon cf8613e76d Preserve image properties on update
* By default, image properties should not be deleted on image update.
* A user can specify --purge-props through the CLI or purge_props
  as a keyword argument to ImageManager.update to override the default
  behavior and force properties to be deleted.
* Fixes bug 1022758

Change-Id: Ib079378cb765552fc29a66913aefbbcd934d2065
2012-07-09 21:03:46 -07:00
Brian Waldon a1691ddc10 Allow image filtering by custom properties
A user can filter a list of images by passing in a 'properties'
sub-dictionary inside of the 'filters' keyword argumen to
ImageManager.list(). The same functionality can be used through
the CLI through the use of one or more'--property-filter' options.

Related to bp glance-client-parity.

Change-Id: I7d119174d83faa894dde557e1944289de296a02c
2012-07-04 15:49:41 -07:00
Brian Waldon 99e872a57b Hook up GET /v1/images/<id>
This allows us to get raw image data out of the API! Related to
bp glance-client-parity

Change-Id: Id5f55553d2ff3b7bf58515062afdfd4b9b183a54
2012-06-21 13:06:18 -07:00
Brian Waldon 7f48506781 Add 'explain' command to v2 that describes schemas
At its core, this is adding the ability to finx a schema through
published links and convert it to a usable object.

Related to bp glance-client-v2

Change-Id: I7b38ad091c6b0ad80197eb789503cf73989893e5
2012-06-07 14:43:00 -07:00
Brian Waldon 3943699427 Refactor HTTPClient to use two request methods
Rather than depend on magic, I would prefer that we explicitly call
two different request methods: json_request and raw_request. The
former will encode/decode request bodies to and from JSON, while
the latter will not.

Change-Id: I6a429a5975993f71df85df55f11c5d51c050c289
2012-05-22 08:45:00 -07:00
Gabriel Hurley 3344eac545 Adds filter support to images.list().
This existed in glance.client, and should exist in the new
client as well! :-)

Change-Id: Iea8c55fcb0f0d30d6dc138072354c3f20d1288cf
2012-04-27 12:25:48 -07:00
Brian Waldon 538a9e30a2 Adding id for image members 2012-04-03 19:26:38 -07:00
Brian Waldon c72e4dd2b5 image membership management works 2012-04-03 17:39:32 -07:00
Brian Waldon b87b1b5086 Adding support for passing image data through cli 2012-04-03 17:01:48 -07:00
Brian Waldon d191262413 Image update works 2012-04-03 16:00:49 -07:00
Brian Waldon d5bb951e5f More complete image creation 2012-04-03 14:43:04 -07:00
Brian Waldon d75a029a01 Adding shared-images support 2012-04-02 16:26:19 -07:00
Brian Waldon ca8434f2c3 Image members bones 2012-04-02 15:44:43 -07:00
Brian Waldon 664f370677 Basic testing 2012-04-02 14:08:03 -07:00