v2 replication has been merged in cinder, but there is no way to call
the api methods. This patch allows the following methods to be called
in order to fully support v2 replication:
- os-enable_replication
- os-disable_replication
- os-list_replication_targets
- os-failover_replication
Change-Id: Ic3cf082916bdf089de05eebce456dff8cdc11f7c
Implements: blueprint replication-v2
Dictionary creation could be rewritten as a dictionary literal.
for example:
body = {}
body['provider'] = args.provider
could be rewritten as
body = {'provider': args.provider}
TrivialFix
Change-Id: Ieae7b33332eca31754cbfe91288ef3001c573eb3
Cinder supports updating volume type 'is_public' status, it should
be added in cinderclient also. New option 'is_public' will be introduced
for 'cinder type-update'.
DocImpact
Change-Id: Ibfa9ba16c0775e401f6eda0729fcf34a99a14697
Closes-bug: #1493612
This change adds a new admin-api to allow admin to fetch
specified backend capabilities which includes volume stats and
vendor unique properties.
With this command, admin can obtain what the current deployed
backend in Cinder is able to do from the endpoint.
DocImpact
Implements: blueprint get-volume-type-extra-specs
Change-Id: I355a5b57994d1407a088c86530d7ef362ecd31ed
This patch proposes the following changes
to the 'available' volume:
* Add the --lock-volume flag to cinder migrate
The default value is False, which means the migration is aborted
if the owner of the volume issues commands like attach
or detach during the volume migration. The volume will be in
'available' during migration.
If it is set to True, the migration of this volume will not be
aborted by other commands. The volume will be in 'maintenance'
during migration.
* List migration status for all the volumes
The attribute migration_status will be listed, if the request
is issued by an admin. Otherwise, the migration_status will not
be listed. The option migration_status is added for the admin
to filter the volumes returned via 'cinder list' command.
DocImpact
APIImpact
Partial-implements: blueprint migration-improvement
Change-Id: I5a1a717d1d08f550b45836d958a51f1f3fba5ced
Depends-On: Ia86421f2d6fce61dcfeb073f8e7b9c9dde517373
Fixed help messages for reset-state and snapshot-reset-state
commands for v1 as well as v2 api.
Change-Id: I06ca6e33f4e4b486ed29f258325550b89f6dc930
Closes-Bug: 1489285
Also added support '--name', '--status', '--volume-id' arguments
for cinder backup-list.
DocImpact
Closes-Bug: #1422046
Depends On: I73f6377c7d6fd92d0464d13f9c8dd6682fef78e3
Change-Id: I5f2ab6370a8333a9ee498c6158037b0433f36a23
This is the CLI change required to support non-disruptive backup
for volumes in 'in-use' status. A force flag is added to the create
backup CLI. The force flag needs to be True when backing up an
'in-use' volume. By default it is False and it is not needed when
backing up an 'available' volume.
The Cinder server side change is merged:
https://review.openstack.org/#/c/193937/
Partial-implements blueprint non-disruptive-backup
Change-Id: I53aff3973cc6365a5b1d40c21b0885c1d8166df5
This patch adds support for clone CG in cinderclient. It uses the
existing create CG from source command and adds an existing CG as a
source, in addition to a CG snapshot.
The server side patch is merged: https://review.openstack.org/#/c/203473/
Change-Id: I2a923de42348c22c6ae5ff5880cdbe6d719ea0ae
Partial-implements: blueprint clone-cg
These are Cinder Client specific changes for modifying volume
and snapshot's image metadata.
- cinder image-metadata volume_id set key=value
This command can be used to create a new image metadata associated
with the volume when the key not exists, and update the value for
the existed key.
- cinder image-metadata volume_id unset key
This command can be used to delete image metadata associated
with the volume.
Depends-On: I22792ef7bd49c763d7c130aa8cac9abc3fff2d4c
Partially implements: bp support-modify-volume-image-metadata
Change-Id: I03787563cb3ea4ef96ed145a37fc665f80565a12
When no volume is specified in backup_restore command, a new
volume is created with specified name.
If running the same command several times, several volumes
with same name are created, it needs to check logs to find out
which volume is latest.
This update is to show the returned info from api.
Change-Id: I035fc85aa636b716b16c8a543c843ebf4659a96e
Closes-Bug: #1472493
Depends-On: I9f5d8ded993fcf1d351d4c65b6806929693b15d6
When a request is send for deleting a volume it will not print any
success message if it deleted successfully.It will print only error
message if the volume deletion fails. This fix will print response
message if the volume deletion is success.
Change-Id: Icef2045107e1dcc3b7f2abfeb50b3f180ded1a27
Closes-Bug: #1475430
Currently the reset-state command in the client only handles
the main volume status column. This adds options to set
attach_status and to reset migration_status.
DocImpact: Add new options to cinder reset-state command
Change-Id: Ifaa04c2f8a7ff21100f7c9c51df881313e8babea
Closes-Bug: #1309086
Show more information when user uses help function to get
more details about replication-promote and replication_reenable.
Change-Id: Icd41bd746c32cdfabbd27a80a818344136e7b71a
Closes-Bug: #1401877
This modification adds support for updating volume encryption types. The
encryption-type-update command requires a single argument, the name or
ID of the volume type whose associated encryption type should be
updated, and up to four optional arguments representing new values for
the encryption type attributes. The update implementation supports three
use cases:
1. The user wants to specify new values for attributes of an
encryption type.
- include the attribute and its new value at invocation
2. The user wants to preserve the values for attributes of an
encryption type.
- exclude the attribute at invocation
3. The user wants to set the values for attributes of an encryption
type to provider defaults (only valid for cipher and key-size).
- include the attribute but provide no value at invocation
The encryption type may only be updated if the associated volume type is
unused.
This modification leverages update support for encryption types provided
by the cinder volume encryption type API extension. See the following
patch for more information:
https://review.openstack.org/#/c/58344/
blueprint: encrypt-cinder-volumes
https://blueprints.launchpad.net/nova/+spec/encrypt-cinder-volumes
Change-Id: I8e6a37428e76ba69a422468630fdb66b4fe460ab
DocImpact
There is a need to limit maximum size of a volume to levels
that the storage infrastructure can handle.
Setting a maximum limit on size of a volume also prevents
a tenant from creating large volumes that have not been tested
and certified to satisfy SLA objectives.
This feature allows admin to set volume size limit
[per_volume_gigabytes] for a tenant.
Change-Id: Iab584c72a34f9171000b20b2200ac12d21fc40ae
Implements: blueprint cinder-quota-define-per-volume
VolumeTypeAccessManager, which caused all commands which should have taken
a volume_type name to fail. I have choosen to fix this by effectively
removing the filter in the client (and the --all argument to type-list).
This is OK, since Cinder implements the filtering by user anyway. The
consequence of this change is that the Admin user will always see the
entire list (including private types) every time they execute type-list
Change-Id: I5c9a693711db2918abbd3bbfae53e48162a01c3c
Closes-Bug: 1462104
This patch adds the new multiattach flag during volume
creation time. This patch adds the attachment_uuid
during detach time so cinder knows which
attachment it should detach.
This patch is needed by Cinder's multi-attach-volume
https://review.openstack.org/#/c/85847/
Change-Id: I98c6150cf548e9d1d8557770dbd3f88ec17a9b41
Implements: blueprint multi-attach-volume
CheckSizeArgForCreate checks that size is specified when snapshot
or source volume aren't. But when size is 0, CheckSizeArgForCreate
action works wrong and generates error: 'Size is a required
parameter if snapshot or source volume is not specified', meanwhile
user expected to see: 'Volume size '0' must be greater than 0'.
Change-Id: I164970a600d6e86bd7076dd485f676a703f5e487
Closes-Bug: #1454276
Change --force parameter into boolean, now user can use it as boolean,
without specifying True or False with it. It is still backward
compatible with --force True|False. This can be deprecated in future.
Closes-Bug: #1244453
Change-Id: Id245af1fa0db27912439a420c37aefca530894ba
In create volume help, --image optional parameter is allowed to
be passed to create volume, but even after passing valid image ID
or NAME, volume is created without image.
Assigned image parameter to the image_ref to fix this issue.
Closes-Bug: 1447589
Change-Id: I21b8a51451a2caf230ca04103b2d573d1aa966b4
This patch addressed the following:
* Added a new CLI to support creating a CG from a CG snapshot.
cinder consisgroup-create-from-src [--cgsnapshot <cgsnapshot>]
[--name <name>]
[--description <description>]
API patch: https://review.openstack.org/#/c/145952/
Partial-Implements: blueprint consistency-groups-kilo-update
Change-Id: I03cce04e1d43ea72fc53a8bf614ba4f969f6e32e
This patch addresses the following:
* Modify Consistency Group
* Add CLI to update a consistency group, i.e., changing name and
description, adding existing volumes to CG and removing volumes
from CG.
cinder consisgroup-update --name <name> --description <description>
--add-volumes <uuid1,uuid2,...> --remove-volumes <uuid5,uuid6,...>
Implements: blueprint consistency-groups-kilo-update
Change-Id: I76317dc006c1f80e2e6c83218e9566f1d37d935e
All arguments starting with '--' are optional and listed
under the 'Optional arguments:' header by argparse. Remove
the extra note shown for each argument.
This mirrors the previous change which cleaned this up for v1:
811af8f Remove "OPTIONAL:" from optional argument help text
Change-Id: Ie8e9544c1544ff5403f1c29e83d528d896957899
Added a new option to "cinder backup-create" to support incremental backups.
Specify --incremental to create an incremental backup. By default, it will
be a full backup.
Co-Authored-By: Xing Yang <xing.yang@emc.com>
Implements: blueprint incremental-backup
Change-Id: Id11ecd2982ea838181b4adaa5a742fc65f864acb
Admin can now filter volumes on the basis of tenant.
Also updated help argument, to be consistent over the
v1 and v2 shell module.
Closes-Bug: #1341411
Change-Id: I647f0c9331ee4cd27acbfada6cdb9a56f80701b4
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
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
A minor commit.
Credit to Jeremy Stanley for findind out this in other projects.
The developer documentation changed. It is now at infra manual, so now
the CONTRIBUTING.md was updated accordingly.
Fixed some other things, like a line break which was not needed
(80 char limit), the help text, and updated URL for jacobian
Change-Id: I3b7cce90f72349a986a5b055fa59e53c089ba308
The quota-class-update commands for v1 and v2 are both broken,
Fix v1 by returning result for update method in QuotaClassSetManager,
fix v2 by changing arg 'class-name' to 'class_name' for consistent
with v1.
Change-Id: Ic7188f485b914dc55048cf056a0685618134e87a
Closes-bug: #1423884
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