A few files were missing copyright headers:
* glanceclient/common/http.py
* glanceclient/v1/__init__.py
* glanceclient/exc.py
Change-Id: Ibbd53cd49f9367994de66a30601b3aefe1a8d6ee
All legacy CLI commands should work as expected with a few
minor exceptions:
- no upload animation
- no interactive pagination
- help/usage output has changed
Deprecated options are indicated as such in their usage info. Deprecated
commands have descriptions that label them as such.
Related to bp glance-client-parity
Change-Id: I584b2447361967228bea332e14880e18db12fca8
The v2 API no longer returns images in JSON containers like
'{"image": {...}}', so stop trying to decode the responses
as if it does.
Fix bug 1031185
Change-Id: I5209fe76445d4195b12944146a0ef190883f363f
Add glance.exc.InternalServerError and .ServiceUnavailable to
represent HTTP statuses 500 and 503. Users will definitely see
these from Glance, so let's be nice and map them to handy
exception classes.
Change-Id: I8e8fcda532455793ea4d0f08a23f7c92b68c186c
Using the --debug flag or the GLANCECLIENT_DEBUG env var, a user will
see http requests and responses in great detail. Requests are formed
into proper curl commands while responses are printed just as they would
as if the curl request provided were executed. Response bodies will not
be printed if they are application/octet-stream.
Change-Id: I9c9c5d6ec9f481091c944e596d073da3739795b6
The --debug argument has been ignored since httplib2 was replaced
with httplib. This re-enables the --debug flag as an equivalent
to the env var GLANCECLIENT_DEBUG.
Fixes bug 1030700
Change-Id: Ib653049eea2f18c4cc2f8f8aac7884245afd0f04
A change was committed that modified the
glanceclient.common.__init__.py file that seems to conflict with the
NOSE_WITH_COVERAGE environment variable. Run the coverage tests like
novaclient and swiftclient to get around this problem.
Change-Id: Id9a655a0207d3b16a619972ebaecc87387cf784e
* This allows us to send truly chunked responses to users
* Handle bad connection url schemes with a new InvalidEndpoint exception
* Fixes bug 1023240
Change-Id: I34500987f51d4e0c6e1f89ecf93853de3fcbb1c3
* 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
* changes:
Align print_dict to the left
Convert v2 images list method to generator
Replace static v2 Image model with warlock model
Add support for viewing a single image through v2
Rewrite link parsing for finding v2 schemas
* Use a recursive generator function to iterate over the image
container. The presence of next links are indicators to
continue pagination while their value drives the location of
the next page.
* A user can pass in --page-size on the command line, or page_size
when using the controller directly, to control how many images
are requested with each subsequent paginated request. Default page
size is 20.
* Add a flag (strict_url_check) for the FakeAPI class to control
whether it chops off query params when trying to match a request
to a fixture.
* Related to bp glance-client-v2.
Change-Id: Ib98e912a7af0bb570b4fd738733edd9b837d1a12
Nobody wants to see links in a human interface. This prevents the
file, access, self and schema links from being printed when calling
image-show or explain.
Related to bp glance-client-v2
Change-Id: Ib98e912a7af0bb570b4fd738733edd9b837d1a11
We will want this to be a generator as soon as we implement
pagination. Let's establish the interface now.
Related to bp glance-client-v2
Change-Id: Ib98e912a7af0bb570b4fd738733edd9b837d1a07
* Add warlock v0.1.0 as a dependency
* Generate a pythonic, self-validating Image model using warlock
* Add raw method to Schema model
* Related to bp glance-client-v2
Change-Id: Ib98e912a7af0bb570b4fd738733edd9b837d1a04
* Add image-create command
* Add tests for Image model, Controller.get, and Controller.list
* Related to bp glance-client-v2
Change-Id: Ib98e912a7af0bb570b4fd738733edd9b837d1a06
What we called 'links' are no longer returned in a container of
objects, they are top-level entity attribtues. This fixes the
parsing of the entities to look in the correct place when trying
to locate a specific schema.
Add a helper for printing to stderr and exiting with a non-zero
exit code.
Map 'name' to 'Attribute' when explaining a schema.
Related to bp glance-client-v2
Change-Id: Ib98e912a7af0bb570b4fd738733edd9b837d1a05
* Consumers of this client should not depend on being able to import
any module other than glanceclient and glanceclient
* The only attributs of the glanceclient module are Client
and __version__
* The attributes of the glanceclient.exc modules have yet to be
locked down
* glanceclient.common.exceptions was replaced with a placeholder
module until consumers of it are updated
Change-Id: Iea9648cd06906d65764987c1f2ee5a88ebeee748
This moves image-create closer to image-update by adding
--is-public and hiding the help output of --public. The
--public option will be removed once devstack no longer
depends on it.
Fix bug 1023632
Change-Id: I2c58655ba56eef1fa486246618c4fb5bd3c6c8cf
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
When creating or updating an image, translate the 'is_protected'
argument into the proper 'protected' image attribute.
Fix bug 1023653
Change-Id: Icfe6c38e4fda098ce3f90fd94c8fbbc18be2f4a8
Make image-create match image-update when specifying a specific
value for 'protected'.
Fix bug 1023650
Change-Id: I02ddeb59c1f6882b206279a71f7af8889ce4602c
* A user can access glanceclient.__version__ to get a string
representing the version of the installed library.
* Add openstack-common's 'version' module.
Change-Id: Ib14c561d8ac0b126617a20acfbd5fdb61c54f2c7
Upgrade the common setup code to the latest versions, and use setuptools-git
for sdist tarball generation.
Change-Id: I81eca9199b7d330ef8ec80482565a75f8475a78c
* 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
* Add the --file option to the image-update action, as it was left out
of a previous patch
* Additionally, change a bad reference (args.fields) to args.file
* Fix bug 1022750
Change-Id: Idde127ec3f138f718d671b2133d50debec26236e
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