Add timeout parameter in requests

Fix bug #1207260

Change-Id: I0f57a9b27c2da2521adb6aebfe3fa072c6b56808
convert third-party exception to ConnectionError

fixes bug #1207635

Change-Id: I37da522e812286e72706409b8a6d4652515f720f
python3: Fix tox requirements

Update tox.ini to no to install distribute. Also bump
testrepository to a newerver version since it fixes some
python3 compat issues.

Change-Id: I735dc28cdb94e3376b391d11220c1ba90ddb8b2e
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Updated from global requirements

Change-Id: I2e2bd3a38458e1307bcc0410da74dc76c0a5987a
Add support for multiple cinder endpoints

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
Add missing babel dependency

Add missing babel dependency.

Change-Id: I9d9c6fe84ada1fa6c5cfb10052f76689a2c84206
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Add print for "backup-create" command

For convenience reasons backup-create should print out metadata

Fixes bug: 1210874

Change-Id: I327aaadb3b82c2073cec5807aa429c4ffac6ee0f
Add commandline option --metadata for cinder list

Fixes bug: 1203471

Change-Id: I8d0bd839ea467f8995e1588ec51a5590c8b80d69
Merge "Add missing babel dependency"
Merge "convert third-party exception to ConnectionError"
Fixing malformed assert message formatting

This modification addresses Bug #1210296, specifically addressing
malformed assert message formatting in assert_called_anytime. When
verifying that an API method was called during test execution, the
assert statement used will throw a TypeError when formatting the
assert message, instead of the expected AssertionError. This occurs
because a nested tuple in the format list is not properly expanded.
The error itself likely exists because assert_called_anytime is not
currently used in the python-cinderclient testing framework.

The fix involves joining the arguments in the format list into a
single tuple, allowing proper argument expansion.

Fixes: bug 1210296

Change-Id: I6cf9dd55cff318e8a850637c540436c91dac08df
Fixing erroneous clearing of test callstack

This modification addresses Bug #1210292, specifically addressing
the case where the test framework callstack is cleared when no
asserts are raised in assert_called_anytime. This test method
verifies that a specific API method call was made at any time
during a test. If a test makes multiple calls to this method, and
the first call yields no assertions, the subsequent calls will fail
because the first assert in the method verifies that the callstack
is non-empty. The error itself likely exists because
assert_called_anytime is not currently used in the
python-cinderclient testing framework.

The fix involves deleting the last line in the method that clears
the callstack.

Fixes: bug 1210292

Change-Id: I8b7b740957841a328b2f0ca888190f758cbdd234
Merge "Add commandline option --metadata for cinder list"
Merge "Updated from global requirements"
Merge "python3: Fix tox requirements"
Merge "Add timeout parameter in requests"
Sync strutils from oslo

Sync strutils from oslo. Also import apiclient,
gettextutils, and importutils.

Change-Id: I565fd2cf40f2ea21842c6dbd581430b25d99fea6
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Merge "Add print for "backup-create" command"
Merge "Fixing malformed assert message formatting"
Add volume encryption metadata to cinderclient

This modification adds support for volume type encryption to
python-cinderclient, supporting two Cinder API extensions.

The first support set provides accessors to python-cinderclient for
retrieving volume encryption metadata from Cinder. These changes
provide other services (e.g., Nova) access to encryption
metadata (e.g., encryption key UUIDs). See the volume encryption
key API extension in Cinder for more information.

The second support set creates a new python-cinderclient resource
manager, along with matching shell commands, that provides creation
and accessor operations for encryption type information. These
operations allow users and services to define encryption information
(e.g., cipher, key size, encryption provider) for a pre-existing
volume type. See the volume type encryption API extension in Cinder
for more information.

blueprint encrypt-cinder-volumes

Change-Id: Id4b2425d699678eb1997863362ddb9bf5ba6f033