This continues to update the name for volume type:
* Update a client method for volume type.
update: to update an existing volume type's name
* Update a command-line operations.
type-update: (adminitrator only) to update a volume type name
The corresponding cinder APIs change to update volume type name:
https://review.openstack.org/#/c/140906/
Implements: blueprint volume-type-description
Change-Id: I66adb7fd2a433e7443cb609046f64dbab3d9d4c7
cinder list used to print None when volume was created without name.
Now it prints '-' dash when display_name is None
Closes-Bug: #1422244
Change-Id: I195ccc37fe96dbb54a0460527fabf55146170bc7
Added a function, which parse arguments and add -- separator
after metadata subcommand
Change-Id: I907eb89209d549dcdad361d88352491110eaadb9
Closes-Bug: #1379486
volumes also have 'in-use', 'attaching' and 'detaching' states.
These were missing in cinder help for reset-state cli. I have added
these in help.
Partial-Bug: #1309086
Change-Id: I094a61dd4921bed83e97134a4bfbcdc7d0c9ad63
CLI sorting guidelines are defined in the cross project specs
repository: [1]
This patch deprecates --sort_key and --sort_dir and adds support for
--sort in the 'cinder list' command with the following syntax:
cinder list --sort <key>[:<direction>]
The --sort parameter is comma-separated and is used to specify
one or more sort keys and directions.
Server-side work for sorting by multiple keys is handled in [2].
[1] https://github.com/openstack/openstack-specs/blob/master/specs/
cli-sorting-args.rst
[2] https://review.openstack.org/#/c/141915/
Implements: blueprint cinder-pagination
Change-Id: Ie8c2c62b8c129f647f85d66d5bcfe4c8f0f4eedb
cinder transfer-list is missing the --all-tenants option, which makes
it inconsistent with 'cinder list'. Without this fix, when running as
admin horizon will need to make multiple queries to cinder (one for
each tenant present in the volume list) in order to display the transfers
that exist for the volumes being shown.
Change-Id: Ic4d72a54c450876ff24c64efd83678062c93a24e
Closes-bug: 1351084
Make the scheduler pool API available to other clients.
DocImpact
Change-Id: I3f0e0c2ed806b5bfda3129ed2c5b210b9210daa5
Partially-Implements: blueprint get-volume-type-extra-specs
This patch adds missing unit tests for consistency groups and
consitency groups snapshots. Tests cover update operation and
various use cases of list operations.
Change-Id: I8998a5c8643559cee83c8c0c81b616b5564c0a30
The client restricts the sort keys that the user can supply. The
'name' key is allowed but is not the correct key for sorting by name,
it should be 'display_name'.
If 'name' is used then the client returns with the error 500
Internal Server Error.
This patch will add support for mapping client sort keys (eg, 'name')
to server sort keys (eg, 'display_name'), allowing the user to supply
the 'name' key to sort by name.
This patch also adds UT for the sort key and direction error cases
when an invalid value is supplied.
Change-Id: I0bdad6d61da83a3924a6b18678afe4722b5778d6
Closes-Bug: 1404020
An admin-api extension to show pool info was supported at commit
https://review.openstack.org/#/c/119938/.
This change adds a command to show pool information for backends
using the admin-api. This change also closes the gap for end users.
Partial-Bug: 1403902
Change-Id: I20e0828c5403b73bc44d07eebf08e2aa2deb428a
The cinder client supports invoking the volumes REST API with the
sort_dir and sort_key parameters. However, the client output table
is always sorted by ID even though the REST API is returning in
sorted order based on the sort key/direction provided.
For example, the command below supplies the 'size' sort key but the
output table is still sorted by ID:
cinder list --sort_key size --sort_dir desc
This fix contains:
* Updates to the print_list utility to prevent any re-ordering so
that the current object order is maintained
* Updates to the shell to disable re-ordering if the user supplies
sort parameters
Change-Id: I4cc111a8bdd2b89158dfc4bb0d16fa6dbf36cc57
Closes-Bug: 1402846
This change adds the ability to manage volume type access:
- Create non-public volume type
- List volume type access
- Add a project access
- Remove a project access
This change also adds the is_public flag to volume type list.
Note: The volume type access extension is only implemented
in the Cinder API v2.
DocImpact: Add volume type access extension support
Implements: blueprint private-volume-types
Change-Id: Ife966120d9250be8d8149cdec9c1a53405d37027
This patch added client handling and unit tests for volume type description:
* Added 2 client methods for volume type.
default: to get the default volume type
update: to upate an existing volume type to update description
* Added 2 new command-line operations.
type-update (adminitrator only)
type-default
* type-list should display description.
* type-create should have an option for entering the description.
The corresponding cinder APIs change volume-type-description:
https://review.openstack.org/#/c/131871/
Implements: blueprint volume-type-description
Change-Id: I2735d7050d90589d19f45e21096577febdcca8bb
Convert the function _list into a loop function, which can retrieve
the items from the next link till the limit or the end of items has
been reached. This works for v2 only.
So far, only volume list in v2 support limit. The limit parameter
work for volume list in v2 only, but other list can extend it in
future work.
Change-Id: I011f0ed1a4ab639f67db6cae580d978c0b44c1bb
closes-bug: #1342192
This patch added the ability for CG quota to be showed and updated.
- Added consistencygroups as a quota resource to be displayed.
- Added an option for consistencygroups quota to be updated.
Change-Id: I7e88eb426eb1733bce955b7a15b8bffdb1e8ee20
Closes-Bug: #1373766
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
Python-cinderclient support update volume backup quota.
Cinder server side commit for this feature was:
https://review.openstack.org/#/c/111460/
blueprint volume-backup-quota
Change-Id: I1fceeb9fc0eb92370e249c46749a61e4b11420b0
valid_versions does not exist here, it is obviously supposed to mean
_VALID_VERSIONS.
Closes-Bug: #1386232
Change-Id: I477baa7642feba72f80d884d6183512185b02cf1
Added retry support when encounter requests.exceptions.Timeout
during HTTP request.
Closes-Bug: #1379505
Change-Id: I6253a109c3a76dd2f15c96a349da68936f9bfff4
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
Volume not found error occurs when running these commands via cinderclient
with volume name as an argument.
unmanage, replication-promote, replication-reenable
However in their help text, it is described that Name and ID are supported.
Therefore, this patch fixes volume name support to their argument.
Closes-bug: #1374211
Change-Id: I8b90523d8e79a65eb27ff4e99820e8cb3feb3120
The 'cinder manage' command argumenst are kind of a disaster.
The positionals are <host> <id> where <id> is undefined/free form
K/V pairs. On top of it we then have --source-name and --source-id
optional arguments available. There absolutely no way to tell from
the help what one should be entering here without referring to the
code, and even then it's not quite clear how the options work and
which one will be used.
To clean this up, change the positionals to <host> <identifier>
where both are strings. Remove --source-name and --source-id
and consolidate those options with --id-type.
id-type will allow a user to specify the type of identifier
(source-name, source-id, or whatever), but defaults to
source-name which is most commonly used currently.
* NOTE *
Ideally we'd just do away with the designator source-name/source-id
altogether and just have an <identifier> positional arg. Each driver
would then be responsible for figuring out what was passed an how to
deal with it. This however requires changes in all of the drivers and
broader changes on the Cinder side which I don't think are warranted
during RC.
During Kilo we should clean all of this up, but for now at least the
syntax is somewhat ready for human consumption and a bit easier than
what we introduced.
Change-Id: I07696648ae647f17ab9180cd87b25f8cb888f5d6
Closes-Bug: 1376311
The initializer for the python-cinderclient HTTPClient class
fails if passed a None for an auth_url.
This patch modifies the inializer to not call rstrip
if auth_url is None, matching the initalizers in
python-novaclient and python-neutronclient
Change-Id: I19dd6911816639a0e0d6175ba910e9777a4b5981
Closes-bug: #1358926
This patch implements CLI commands for the Consistency Groups
feature. Only snapshots for CGs will be implemented in phase 1.
Change-Id: I447555fd8a92bceecf6f40be59030d65461e4cbb
Implements: blueprint consistency-groups
Metadata as a parameter is supported by the underlying cinder driver.
This is not exposed by the python client. It is helpful to store additional information
for snapshots and can be used for decision within cinder driver during snapshot creation.
Similar functionality exists for volume creation in cinder client and cinder driver.
Updating cli(shell) to accomodate the new metadata parameter
Adding above change for v2
Change-Id: I002221efea1b9994da4a8d200544a88b0ed26277
Closes-Bug: #1341424
Provide Cinder client support to manage volume replication.
Cinder-specs available at https://review.openstack.org/#/c/98308/
Change-Id: Id60bacbcc113d42730e822b29b2fa78be94d3276
Implements: blueprint volume-replication