Use pyOpenSSL for HTTPS connections.
This allows:
* Neater loading of system CA files
* Optional disabling of SSL compression
The performance gain from disabling SSL compression is significant
in cases where the image being uploaded/downloaded is in an already
compressed format (eg qcow2).
Related to bp ssl-connect-rework.
Change-Id: I0568b6c95c5fc7b8eafdbd0284e24c453660a55a
When SSL is being used and the --ca-file option is
not specified use an available system CA file to
verify the server's certificate.
Change-Id: Id5c9fda6fd9bd05cde3c2a9160a6e72cef086a44
This allows a user to pass a cert and a key to use in HTTPS
connections. The flags --cert-file and --key-file are added
to the CLI.
Addiionally, update the debug curl logging to print --cacert and
-k when ca_file and insecure are set.
Related to bp glance-client-parity.
Change-Id: Ibaea51419a903afb7939a6b5b848f7a6667893bf
This adds support for validation of ssl certs returned by remote
servers over SSL. The --ca-file param represents the CA cert used
to sign the remote server's cert. Use --insecure if the remote
server is using a self-signed cert or you don't have the CA cert.
Related to bp glance-client-parity
Change-Id: I45253a6e2d88da599addfcc464571e62ae920166
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
Previously, both --os-auth-token and --os-image-url had to be
provided in order for either of them to be used in any API requests.
This breaks the tie between them and allows a user to override
either the auth token or the endpoint returned by Keystone independently
of one another.
Fixes bug 1029586
Change-Id: I8b81be723286c546d9cbd97c8b7d7aa89c03b2d4
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
* 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
* 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
Create a --timeout option to allow users to provide a custom timeout
for requests from the command line. The timeout functonality already
exists in both v1 and v2 client classes.
Related to bp glance-client-parity
Change-Id: Ic91de5eae2824b37f6aad3adc5fda28b9674250e
Update the glanceclient CLI to support both underscores and dashes.
Dashes are prefered and show up in help.
This will hopefully keep the CLI more consistent with the other
OpenStack client projects like Nova, Swift, Keystone in addition to the
old Glance client which all seem to prefer underscores to dashes.
Fixes LP Bug #1018467.
Change-Id: I80d7a19f94033554f7f639166911726de4a5159f
Bug: 993993
* glanceclient/shellp.py
OpenStackImagesShell.get_base_parser(): Parse --os-endpoint-type
argument. Default to one defined in os.environ.
OpenStackImagesShell._authenticate(): Define endpoint type based
on command line argument. Use 'publicURL', if it's not specified
in command line and also not defined in os.environ.
OpenStackImagesShell.main(): Pass this value to authenticate.
Change-Id: I0c0cde5212198eec2a7d75fb2a7cad1cde048c7c
This only allows you to run image-list, but sets up a framework
that we can use to fill in the rest of the v2 functionality.
* Related to bp glance-client-v2
Change-Id: I8827e36fdcf79fe402990a6d05898ec00cbd54c6
This client includes the API version in the URL directly where the
former practice was to include it in the service catalog endpoint.
This change removes the version from the last component of the
SC endpoint (if present) for transition purposes.
Note that this does not generalize to the other APIs
where the version is not the last component of the SC endpoint.
Change-Id: Ie04c38d80b17a171482e195aa1c633b6b6974042
Copied mostly from python-keystoneclient with
some Glance-specific stuff. README.rst shows what
WILL be the way to do things, not what is currently coded :)