summaryrefslogtreecommitdiff
path: root/cinderclient/shell.py
Commit message (Collapse)AuthorAgeFilesLines
* Enable version discoveryMike Perez2015-04-201-13/+72
| | | | | | | | | | | | | The service catalog can now have the cinder endpoint x.x.x.x:8776 with service_type volume, without needing to specify a version in the endpoint. Keystone will do discovery of the root / GET of the Cinder API to discover the versions that can be talked to. This also provides backwards compatibility for the previous solution of having v1 enabled on service_type volume and v2 on service_type volumev2. Change-Id: Id0347f8370dbc8fd7fa8096cd5859e10b0c5d67c
* Merge "cinderclient accepts arguments after metadata without -- separator"Jenkins2015-03-161-0/+23
|\
| * cinderclient accepts arguments after metadata without -- separatorrajiv2015-03-101-0/+23
| | | | | | | | | | | | | | | | Added a function, which parse arguments and add -- separator after metadata subcommand Change-Id: I907eb89209d549dcdad361d88352491110eaadb9 Closes-Bug: #1379486
* | Add -d short option for --debugKallebe Monteiro2015-02-121-1/+1
|/ | | | | | | | | | A short option for --debug is a convenience. This commit adds the -d short option as a shortcut for --debug Glance already provides -d. Change-Id: Iefae6cee566f9c7d7375e89c3f8603f149e555ef Closes-Bug: #1421210
* Add the parameter bypass_url to the cinder clientVincent Hou2014-12-011-2/+14
| | | | | | | | If the bypass_url is specified in the http client, there is no need to get it from Keystone. Change-Id: I891849f77ad2ba98a83c993b401121216c8cfff6 closes-bug: #1350702
* Adds tty password entry for cinderclientJohn Trowbridge2014-10-241-5/+15
| | | | | | | | Added functionality from keystoneclient to fallback to the tty for password entry if no password is given via the environment or the --os-password option. Change-Id: If5b27cb8c67712860faa24d543ed48eaa542f28b Closes-Bug: 1357559
* Add profiling support to cinderclientBoris Pavlovic2014-10-081-0/+23
| | | | | | | | | | | | | | | | | | | | To be able to create profiling traces for Cinder, client should be able to send special HTTP header that contains trace info. This patch is as well important to be able to make cross project traces. (Typical case nova calls cinder via python client, if profiler is initialized in nova, cinder client will add extra header, that will be parsed by special osprofiler middleware in cinder api) Don't worry no security issue here, trace information is signed by HMAC key that is setted in api-paste.ini. So only person that knows HMAC key is able to send proper header. Main patch (in Cinder) is: https://review.openstack.org/#/c/103415/ Change-Id: I53bb1b92e62841a02f941bdafaed7f8ed5db7ce1
* Enables debug mode for keystone session objectgit-harry2014-09-181-0/+3
| | | | | | | This fixes the lack of debug messages introduced by commit 84af49c. Change-Id: I7bf3e98c21f09bd4f3c2d5d3bc372f60d717c9d5 Closes-bug: #1370152
* Move debug logging to shellJamie Lennox2014-07-291-0/+9
| | | | | | | | Adding channels to a logger is not the responsibility of a library. This sort of thing should be handled by an application so move the logging over to the shell. Change-Id: Ie11571d428913eba1aae5aa42a6e925228ba6808
* Fix version discovery and auth_pluginsHaneef Ali2014-07-011-10/+37
| | | | | | | | | | V3Client support added version discovery and session supports. Most of the external auth system doesn't support this. This fix bypasses version discovery if the idenity service doesn't support that. Session is used only if no external auth plugin is used Change-Id: Ia84a2ad45940d35c5ef740727f5f7477c72ea9d4 Closes-Bug: #1333961
* Remove deprecated command-line argsMatt Fischer2014-06-261-58/+14
| | | | | | | Some command-line args were deprecated in Diablo and slated for removal in Folsom. They're being removed in Juno instead. Change-Id: I02339ba08c997fecca5a6639382360962e668bfd
* Added support for keystone v3clienthaneef ali2014-06-171-76/+322
| | | | Change-Id: I7bbc74c9e73f36f942f5800a7af0da717da0bc64
* Merge "Ambiguous option error should not appear if Arg is SUPPRESS"Jenkins2014-05-081-0/+23
|\
| * Ambiguous option error should not appear if Arg is SUPPRESSJuan Manuel Olle2014-04-161-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to backward compatibility there are arguments hidden. For example: --tenant-id and --tenant_id On those case the abbreviation mechanism if a user enter --tenant throw that there is an ambiguity but the helps only show --tenant-id as an optional argument. This change remove this ambiguity if one of them is hidden. Change-Id: I413f1ebafc68b3e02b5abadce1608e6d48207b01 Closes-Bug: #1252457
* | Update help strings for cinder clientDiane Fleming2014-04-231-49/+60
| | | | | | | | | | | | | | | | | | | | Make text consistent and clear. Add periods to end of sentences. Adjust test suite for change Closes-Bug: #1275881 Change-Id: I1dfde51636e8dc4b42e4c4810c27c1c4ac513d82
* | Add auth_plugin support to cinderclientCory Stone2014-02-141-10/+38
|/ | | | | | | | | | | With CINDER_RAX_AUTH being rightfully removed, cinderclient is no longer compatible with Rackspace/any non-keystone auth. To fix this, I stole auth_system/auth_plugin from novaclient's implementation. See https://review.openstack.org/#/c/23820/. Change-Id: If5f84003f868ef02bb7eb7da67cf62018602e8f0 Closes-Bug: 1280393
* Fix typo in cinderclienthuangtianhua2013-11-281-1/+1
| | | | | | | | | sematics --> semantics hypen-separated --> hyphen-separated typicaly --> typically Change-Id: I5df277ef7036082d0e4b079c23d41da809e5270f Closes-Bug: #1254587
* Override endpoint URL check for API versionJay S. Bryant2013-10-171-11/+39
| | | | | | | | | | | | | | | | | | | | | | get_volume_api_version_from_endpoint currently assumes that the management_url will always be in the format of http://<ip>:<port>/vX/<tenant_id>. Customers using a gateway, however, can get a mangement_url in a different form like https://<ip>:<port>/<resource>/vX/<tenant_id>. This causes the get_volume_api_version_from_endpoint to find the resource portion of the url when looking for the Volume API version which makes the cinder client unusable. To resolve this I have implemented an exception handler in the case that get_volume_api_version_from_endpoint fails. If the exception is thrown, I check for OS_VOLUME_API_VERSION in the environment and use the value of that environment variable, if it is set, to determine the API version to use. There are proposals to fix this via changes to keystone in future releases, but this provides a way for IaaS Gateway users to proceed with Havana. Change-Id: I8b978a6ecd87b81c6ae34938e37623ad1cc33994 Closes-Bug: 1233311
* Merge "python3: Refactor dict for python2/python3 compat"Jenkins2013-10-131-1/+1
|\
| * python3: Refactor dict for python2/python3 compatChuck Short2013-10-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | Python3 changed the behavior of dict.keys such that it is now returns a dict_keys object, which is iterable but not indexable. You can get the python2 result back with an explicit call to list. Refactor list(*.keys()) so that it just uses list(). Change-Id: Ib2e9646ac967e9bd7cc4f47e2099f5d1358808a9 Signed-off-by: Chuck Short <chuck.short@canonical.com>
* | Fix DeprecationWarning when printing exceptionEric Harney2013-10-091-6/+1
|/ | | | | | | | | | | | | On Python 2.6, this results in an error like: /usr/lib/python2.6/site-packages/cinderclient/shell.py:524: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 message = e.message Should use the method from novaclient commit 8c4e145b92, which works well with python2 and python3. Change-Id: Ifbd78ad158ae87670bdee4e247469091efaa3260
* Replace OpenStack LLC with OpenStack FoundationZhiQiang Fan2013-09-281-1/+1
| | | | | | | | | | NOTE: * openstack/common/* should be synced from oslo, so i leave them untouched. * add (c) symbol for related lines, leave others untouched. Change-Id: I46a87c7f248d3468b1fdf5661411962faf2fb875 Fixes-Bug: #1214176
* Add support for multiple cinder endpointsMike Perez2013-08-081-3/+3
| | | | | | | | | | | Before v1 and v2 were set to the same service_type, so you could only have one set at a time. This assumes the catalog is setup for v1 service_type 'volume' and v2 service_type 'volumev2'. For backwards compatibility, we will allow v2 to be setup with service_type 'volume' for existing installations. Change-Id: Ife6d2cdb12d894b84ea3b276767fb93d487355d5
* Revert "Use exceptions from oslo"John Griffith2013-07-151-1/+1
| | | | | | This reverts commit a7cce08eab5e2e42275b84bd56127bd09b00f5bf Change-Id: I6c0047adbc33d0d6b5890f11853974578c36c78c
* Use exceptions from osloAlessio Ababilov2013-07-011-1/+1
| | | | | | | | | These exceptions can be used in novaclient, keystoneclient, glanceclient, and other client projects. Partially implements: blueprint common-client-library Change-Id: I43918316622b1c1d722872fe30199db6a3a7bb76
* Merge "Connectivity between the endpoint version and OS_VOLUME_API_VERSION."Jenkins2013-06-251-0/+9
|\
| * Connectivity between the endpoint version and OS_VOLUME_API_VERSION.Anastasia Latynskaya2013-06-251-0/+9
| | | | | | | | | | | | | | | | | | | | Adds functionality which allows user to work with that cinder API version which is the same as the endpoint version. Fixes: bug #1169455 Change-Id: I9bb46e602d15856d2da502a6ac2b6c25e76f4fa3
* | python3: Strutils is not neededChuck Short2013-06-221-2/+8
| | | | | | | | | | | | | | | | | | strutils is used to safely encode and decode unicode strings for python2.7. Since unicode strings are the default in python3, ignore the use of strutils when running with python3. Change-Id: I9a8e296b4f2153b1ef4302a7dcd797fbb4561c35 Signed-off-by: Chuck Short <chuck.short@canonical.com>
* | python3: Fix traceback while running testsChuck Short2013-06-191-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | The testsuite is full of the following: TypeError: 'dict_keys' object does not support indexing This is due to the fact in python3 dict methods dict.keys(), dict.items() and dict.values() return “views” instead of lists. Change-Id: Ifa5383e6485fdbabf363fd1442877b2452346c1c Signed-off-by: Chuck Short <chuck.short@canonical.com>
* | python3: Basic python3 compatibility.Chuck Short2013-06-121-4/+6
|/ | | | | | | Basic python3 compatibilty. Change-Id: I4388f5956cf397f8e33d20085aae6c6a728dbbda Signed-off-by: Chuck Short <chuck.short@canonical.com>
* Merge "Minor typo/message fixes"Jenkins2013-04-091-1/+2
|\
| * Minor typo/message fixesEric Harney2013-04-081-1/+2
| | | | | | | | | | | | | | | | Correct it's -> its in force-delete message Print whole bash_completion message in "cinder help" Reformat some doc strings per PEP-0257 Change-Id: I013b849508beac5c9fe5c6f9d4cdfae54676c29c
* | Merge "Add OS_TENANT_ID as authentication option"Jenkins2013-04-051-10/+20
|\ \ | |/ |/|
| * Add OS_TENANT_ID as authentication optionLiam Kelleher2013-03-271-10/+20
| | | | | | | | | | | | bug 1160898 Change-Id: I8849ab8f552801b8a317cd0394251c2db1ba8e9a
* | Decodes input and encodes output1.0.3Flaper Fesp2013-03-291-2/+6
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently cinderclient doesn't handle properly incoming and outgoing encode / decode process. As a solution for this, this patch implements a decoding process for all data incoming from the user side and encodes everything going out of the client, i.e: http requests, prints, etc. This patch introduces a new module (strutils.py) taken from oslo-incubator in order to use 2 of the functions present in it: About safe_(decode|encode): Both functions try to encode / decode the incoming text using the stdin encoding, fallback to python's default encoding if that returns None or to UTF-8 as the last option. In both functions only basestring objects are accepted and they both raise TypeError if an object of another type is passed. About the general cinderclient changes: In order to better support non-ASCII characters, it is a good practice to use unicode interanlly and encode everything that has to go out. This patch aims to do that and introduces this behaviour in the client. Testing: A good test (besides using tox) is to use cinder client with and without setting any locale (export LANG=). Fixes bug: 1130572 Change-Id: Idb7d06954c29e003f68a0c4aa0b80ecc7017cbc9
* Catch KeyboardInterruptEric Harney2013-03-201-1/+3
| | | | | | | | | | | | | | When a user Ctrl-C's the client, this will cause a short message to be printed rather than an ugly backtrace. This will not catch all instances of this (can still Ctrl-C before reaching this code, etc.), but it should catch most of them, and those for long-running sessions. The specific message was chosen to match one recently added to the glance client. Change-Id: Ib748835ad1f94fb901b4941dc5e3797b719e197f
* adding v2 support to cinderclientMike Perez2013-02-131-2/+3
| | | | | | | | | This will allow the cinderclient to speak to the v2 rest api if it's enabled in the cinder config. Includes additional v2 tests as well. blueprint cinderclient-v2-support Change-Id: I004134d9f528a6eadefdaa89eb48087bcae2691f
* Avoid UnicodeEncodeError exception on exceptionDirk Mueller2013-02-061-1/+1
| | | | | | | | | | When an exception message contained a non-ascii character, the str() conversion raised an UnicodeEncodeError. Avoid this by simply passing the message itself. Python handles the encoding to locale already. Change-Id: I3c4440fc238d8c8136a9bd93a0040668f82bda6e
* Fixed documentation of the cinder shell command.Frederic Lepied2013-01-311-1/+1
| | | | | | | | Updated README.rst and shell.rst to match changes in the cinder command and novaclient README.rst. Change-Id: Ifaa53d5c06e6d7d8e3d4d858672717954303bea7 Fixes: bug #1074125
* Change Nova -> Cinder in credentials error messageEric Harney2013-01-211-1/+1
| | | | Change-Id: I410360ca23388e93bcbbf3dce053cae99c84a431
* Fixed Version FunctionalityAnita Kuno2013-01-171-0/+4
| | | | | | In accordance with bug-1068521, cinder version functionality is available via the shell. Change-Id: If9608291f318057fc8fa61151328d6503a79d70d
* Use requests module for HTTP/HTTPSDean Troyer2012-12-181-6/+11
| | | | | | | | | | | | | * Implement correct certificate verification * Add --os-cacert * Rework tests for requests Pinned requests module to < 1.0 as 1.0.2 is now current in pipi as of 17Dec2012. Blueprint: tls-verify Change-Id: I71066ff7297f3b70c08b7ae1c8ae8b6a1b82bbae
* Bring back the output from client.http_log()Dean Troyer2012-12-131-2/+4
| | | | | | | Ported from novaclient https://review.openstack.org/9241 Support CINDERCLIENT_DEBUG as synonym for --debug Change-Id: Ic03b9e7d84c8db14f6e193ca2b478fd0d70d1299
* show help when calling without argumentsChristian Berendt2012-11-081-1/+1
| | | | | | | | | | | | | When calling cinder without arguments you'll receive the following output: error: too few arguments Try 'cinder help ' for more information. With this change the help is also shown when calling cinder without arguments. I think that's the expected behavior. Change-Id: I8f46f67b7fef472ac344bb74f80cf1b77c4c4745
* Add retries to cinderclient.Cory Stone2012-11-071-1/+8
| | | | | | | | | | | | HTTPClient now supports a retries argument. It will reissue requests for any 5xx or socket (400 with n/a) errors. This retry loop was "inspired" by swiftclient's loop. It reauths one extra time if necessary. It uses backoff times of 1, 2, 4... seconds. The default is 0 retries. It is also exposed to the shell as well with a --retries arg. Change-Id: I67bed02d65155f4a4d5d879bb233f56cc78849fa
* Revert "Add retries to cinderclient."John Griffith2012-11-021-7/+1
| | | This reverts commit 3b1eda3b3bb6678e9c9ec3e783e3e12b0c42f0a4
* Add retries to cinderclient.Cory Stone2012-11-011-1/+7
| | | | | | | | | | | | HTTPClient now supports a retries argument. It will reissue requests for any 5xx or socket (400 with n/a) errors. This retry loop was "inspired" by swiftclient's loop. It reauths one time if necessary. It uses backoff times of 1, 2, 4... seconds. The default is 0 retries. It is also exposed to the shell as well with a --retries arg. Change-Id: I75d9a13d6c4ba16a5da13d4bf5cad78a777d67d7
* Change '_' to '-' in optionsDean Troyer2012-08-231-27/+57
| | | | | | | | | | This changes every command-line option with a '_' in its name and changes them to '-'. The old option names are maintained for backward compatibility but are no longer in the help text. BP command-options Change-Id: If926bb3b8fa85d628aea197496cf976f71bcdd08
* Set pep8 version to 1.1 in test_requiresJohn Griffith2012-06-151-79/+93
| | | | | | | * Fixes bug 1007520 * Changes in pep8 cause new failures Change-Id: Ie678f01a5008b0df6ef43a360b599890cab40776
* Initial split from python-novaclient.0.0Jenkins2012-05-211-0/+435