]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
9 years agoIn fact, only refresh disable-zfs-tests.patch
Thomas Goirand [Mon, 7 Sep 2015 11:08:45 +0000 (11:08 +0000)]
In fact, only refresh disable-zfs-tests.patch

9 years agoFixed rtslib-fb version.
Thomas Goirand [Mon, 7 Sep 2015 10:33:43 +0000 (10:33 +0000)]
Fixed rtslib-fb version.

9 years agoRemoved disable-zfs-tests.patch
Thomas Goirand [Mon, 7 Sep 2015 10:17:37 +0000 (10:17 +0000)]
Removed disable-zfs-tests.patch

9 years agoFixed (build-)depends for this release.
Thomas Goirand [Mon, 7 Sep 2015 10:11:55 +0000 (12:11 +0200)]
Fixed (build-)depends for this release.

9 years agoMerge tag '7.0.0_b3' into debian/liberty
Thomas Goirand [Mon, 7 Sep 2015 10:07:24 +0000 (12:07 +0200)]
Merge tag '7.0.0_b3' into debian/liberty

Cinder liberty-3 milestone (7.0.0.0b3)

Conflicts:
cinder/volume/drivers/zfssa/zfssaiscsi.py

9 years agoNow packaging Liberty b3
Thomas Goirand [Sat, 5 Sep 2015 11:31:38 +0000 (13:31 +0200)]
Now packaging Liberty b3

9 years agoMerge "Fix problem of efficient volume copy for migration"
Jenkins [Thu, 3 Sep 2015 11:49:18 +0000 (11:49 +0000)]
Merge "Fix problem of efficient volume copy for migration"

9 years agoMerge "Get full volume model in Replication manager API’s"
Jenkins [Thu, 3 Sep 2015 11:38:29 +0000 (11:38 +0000)]
Merge "Get full volume model in Replication manager API’s"

9 years agoMerge "Implement thin provisioning support for E-Series"
Jenkins [Thu, 3 Sep 2015 08:36:12 +0000 (08:36 +0000)]
Merge "Implement thin provisioning support for E-Series"

9 years agoMerge "Generic image-volume cache"
Jenkins [Thu, 3 Sep 2015 08:13:12 +0000 (08:13 +0000)]
Merge "Generic image-volume cache"

9 years agoMerge "Remove executable bits on files"
Jenkins [Thu, 3 Sep 2015 08:12:47 +0000 (08:12 +0000)]
Merge "Remove executable bits on files"

9 years agoMerge "Implement manage/unmanage snapshot in Pure drivers"
Jenkins [Thu, 3 Sep 2015 07:41:45 +0000 (07:41 +0000)]
Merge "Implement manage/unmanage snapshot in Pure drivers"

9 years agoMerge "Cloudbyte fix create_cloned_volume parent id"
Jenkins [Thu, 3 Sep 2015 06:29:03 +0000 (06:29 +0000)]
Merge "Cloudbyte fix create_cloned_volume parent id"

9 years agoMerge "NetApp DOT block driver over-subscription support"
Jenkins [Thu, 3 Sep 2015 00:23:41 +0000 (00:23 +0000)]
Merge "NetApp DOT block driver over-subscription support"

9 years agoGet full volume model in Replication manager API’s
Patrick East [Wed, 2 Sep 2015 20:51:42 +0000 (13:51 -0700)]
Get full volume model in Replication manager API’s

Currently we pass in a dictionary of the volume properties, but not the
actual volume model. This dictionary is missing some of the properties
like ‘name’ which backends may required for volume operations.

Change-Id: Idcb7b2c8313360a77ba336f3b7534d8fa7431a41
Closes-Bug: #1491585

9 years agoFix problem of efficient volume copy for migration
Mitsuhiro Tanino [Wed, 2 Sep 2015 18:33:18 +0000 (14:33 -0400)]
Fix problem of efficient volume copy for migration

After introducing commit f586043fa969b9d1dcf4933aacbf615f53691093,
new volume copy method _copy_volume_data() was added into
manager.py. Originally driver.py had this method and it was copied
into manager.py. However new _copy_volume_data() lost efficient
volume copy logic during the reimplementation.

This patch simply add efficient volume copy logic again into new
_copy_volume_data() to fix the problem.

Change-Id: I183cbd2265c1f47c9047818e1d4915c896927280
Closes-Bug: 1491538

9 years agoMerge "Cleanup for SnapshotObject"
Jenkins [Wed, 2 Sep 2015 18:22:12 +0000 (18:22 +0000)]
Merge "Cleanup for SnapshotObject"

9 years agoMerge "Scheduler-based over-subscription for NFS drivers"
Jenkins [Wed, 2 Sep 2015 18:22:01 +0000 (18:22 +0000)]
Merge "Scheduler-based over-subscription for NFS drivers"

9 years agoMerge "Support efficient non-disruptive volume backup in VNX"
Jenkins [Wed, 2 Sep 2015 18:21:49 +0000 (18:21 +0000)]
Merge "Support efficient non-disruptive volume backup in VNX"

9 years agoGeneric image-volume cache
Patrick East [Wed, 8 Jul 2015 00:23:58 +0000 (17:23 -0700)]
Generic image-volume cache

This introduces a new feature for backends to be able to use cached
glance images when creating volumes from images.

If enabled, and the cinder internal tenant is configured, it will
create a minimal sized clone of a volume the first time it is
downloaded from glance. A new db table ‘image_volume_cache’ tracks
these volumes, which are owned by the Cinder internal tenant. The
original will then be extended to full size. Any subsequent requests to
create a volume from an image will be able to do a volume clone from
the image-volume cache entry instead of downloading the image data from
glance again.

In the future we could create an entry upon creating an image from a
volume right before uploading the volume to glance. This version
however does not aim to do more than add the initial framework and
help with subsequent image downloads. There are certainly more
improvements that can be done over time on top of this.

These image-volumes are host specific, so each backend may end up with
its very own image-volume to do clones from.

The cache is limited in size by number of entries allowed and size in
gb. When creating a new entry if space is needed the last used entries
will be evicted to make room.

In the current implementation the image-volumes will be viewable by a
cloud admin in the volume list, and show up as owned by the Cinder
internal tenant. They can safely be deleted manually by an admin, this
will cause the entry to be removed from the cache. These volumes will
use quota for the internal tenant.

Cache actions will post notifications to Ceilometer. There are
notifications like ‘image_volume_cache.miss’, ‘image_volume_cache.hit’,
and ‘image_volume_cache.evict’. A change will be required to the
event_definitions.yaml to see them nicely. Until then you only need to
add a new event type 'image_volume_cache.*' and look for the ‘image_id’
and ‘host’ fields.

DocImpact: We probably want some instructions on restrictions of the
cache and how to use it. The three new config options should also be
documented somewhere: ‘image_volume_cache_enabled’,
’image_volume_cache_max_size_gb’, ‘image_volume_cache_max_size_count’

Co-Authored-By: Tomoki Sekiyama <tomoki.sekiyama@hds.com>
Implements: blueprint image-volume-cache
Change-Id: If22bbaff89251e4e82a715170a48b4040f95c09f

9 years agoImplement thin provisioning support for E-Series
Michael Price [Wed, 5 Aug 2015 20:36:59 +0000 (15:36 -0500)]
Implement thin provisioning support for E-Series

Implement a new extra spec, 'netapp_thin_provisioned', that will allow
users to define thin provisioned Cinder volumes on E-Series storage,
alongside pre-existing extra specs such as
'netapp_eseries_data_assurance', 'netapp_eseries_flash_reach_cache',
'netapp_raid_type', etc.

We have a followup patch, https://review.openstack.org/#/c/215801/ ,
that reports 'thin_provisioning_support=True/False' and same for
'thick_provisioning_support', in accord with the scheduler-based
over-subscription support added in Kilo.

We are not yet attempting to implement the get_capabilities()
feature just merged into Liberty
(https://review.openstack.org/#/c/201243/)
but fully intend to do so in a way that conforms with that plan of
record.

Partially-Implements: blueprint netapp-eseries-additional-extra-specs
DocImpact
Change-Id: Ia00b56e6d6a644cff81791bbd04e97f0c02b9e65

9 years agoMerge "ScaleIO driver should use os-brick connector"
Jenkins [Wed, 2 Sep 2015 16:05:07 +0000 (16:05 +0000)]
Merge "ScaleIO driver should use os-brick connector"

9 years agoMerge "Earlier authority check for create volume API"
Jenkins [Wed, 2 Sep 2015 16:04:56 +0000 (16:04 +0000)]
Merge "Earlier authority check for create volume API"

9 years agoMerge "Check before add lun to QoS in Huawei driver"
Jenkins [Wed, 2 Sep 2015 16:04:42 +0000 (16:04 +0000)]
Merge "Check before add lun to QoS in Huawei driver"

9 years agoMerge "Minor optimization"
Jenkins [Wed, 2 Sep 2015 16:04:30 +0000 (16:04 +0000)]
Merge "Minor optimization"

9 years agoMerge "Add additional SSC extra specs to E-Series driver"
Jenkins [Wed, 2 Sep 2015 13:23:05 +0000 (13:23 +0000)]
Merge "Add additional SSC extra specs to E-Series driver"

9 years agoMerge "Add delete_snapshot and update_snapshot rules"
Jenkins [Wed, 2 Sep 2015 12:27:32 +0000 (12:27 +0000)]
Merge "Add delete_snapshot and update_snapshot rules"

9 years agoMerge "Implement AutoSupport for NetApp E-Series driver"
Jenkins [Wed, 2 Sep 2015 12:27:12 +0000 (12:27 +0000)]
Merge "Implement AutoSupport for NetApp E-Series driver"

9 years agoMerge "Add support for volume groups and netapp_raid_type"
Jenkins [Wed, 2 Sep 2015 12:25:02 +0000 (12:25 +0000)]
Merge "Add support for volume groups and netapp_raid_type"

9 years agoMerge "Fix backup metadata import missing fields"
Jenkins [Wed, 2 Sep 2015 06:37:01 +0000 (06:37 +0000)]
Merge "Fix backup metadata import missing fields"

9 years agoMerge "Fix a merge problem in VMAX driver"
Jenkins [Wed, 2 Sep 2015 06:36:19 +0000 (06:36 +0000)]
Merge "Fix a merge problem in VMAX driver"

9 years agoMerge "Add instructions on how to deploy API under Apache"
Jenkins [Wed, 2 Sep 2015 06:14:57 +0000 (06:14 +0000)]
Merge "Add instructions on how to deploy API under Apache"

9 years agoMerge "Sync volume versionedobject to ORM"
Jenkins [Wed, 2 Sep 2015 05:31:26 +0000 (05:31 +0000)]
Merge "Sync volume versionedobject to ORM"

9 years agoCloudbyte fix create_cloned_volume parent id
Walter A. Boring IV [Wed, 2 Sep 2015 02:10:43 +0000 (02:10 +0000)]
Cloudbyte fix create_cloned_volume parent id

The CloudByte driver is reading the parent's volume id from the
new volume's source_volid.  There are some cases when this isn't set.
The source volume object/dict is passed in, so just access the id
from there.

Change-Id: If6d3f50d11e36434e194a355e874d44f9d79f553
Closes-Bug: 1491206

9 years agoScheduler-based over-subscription for NFS drivers
Tom Barron [Mon, 17 Aug 2015 18:08:28 +0000 (14:08 -0400)]
Scheduler-based over-subscription for NFS drivers

Add support to the NFS drivers for over-subscription/overprovisioning.
This allows the Cinder scheduler to more accurately represent the
remaining space on a pool when thin-provisioned Cinder Volumes are in
use on an NFS backend.

DocImpact
Co-Authored-By: Clinton Knight <cknight@netapp.com>
Co-Authored-By: Mike Rooney <rooneym@netapp.com>
Implements: blueprint nfs-over-subscription-thin-provisioning

Change-Id: Ib94d5131554466709e168c18d1b8690dddd55ff0

9 years agoScaleIO driver should use os-brick connector
Xing Yang [Wed, 19 Aug 2015 02:16:03 +0000 (22:16 -0400)]
ScaleIO driver should use os-brick connector

Currently the ScaleIO Cinder volume driver contains the connect_volume logic
inside the driver itself. This code is redundant with the code in the os-brick
connector. This patch modifies the driver to use the os-brick connector and
removes the redundant code.

Change-Id: Ic26880f133c0ce10f9a67acd6e16b0d88cb2a242
Closes-Bug: #1486315

9 years agoMerge "Allow specified backend capabilities to be retrieved"
Jenkins [Tue, 1 Sep 2015 19:29:42 +0000 (19:29 +0000)]
Merge "Allow specified backend capabilities to be retrieved"

9 years agoAdd instructions on how to deploy API under Apache
Anton Arefiev [Wed, 29 Jul 2015 12:23:41 +0000 (15:23 +0300)]
Add instructions on how to deploy API under Apache

Add new documentation with steps how to deploy Cinder API under Apache.

Implements: blueprint non-eventlet-wsgi-app

Change-Id: I25335991206a2563d266baac6730d130890777db

9 years agoSync volume versionedobject to ORM
Thang Pham [Fri, 28 Aug 2015 14:02:50 +0000 (07:02 -0700)]
Sync volume versionedobject to ORM

The following patch syncs the volume object to match the
ORM.  More specifically, it adds metadata, admin_metdata,
volume_attachment, and volume_type to the volume object.
These fields are required to convert cinder internals to
use volume versionedobject.  It was originally part of
a large patch, but is broken up to make reviews more
bearable.

Change-Id: I80c1734072cb26acbe207914e812a3b169b69dfb
Partial-Implements: blueprint cinder-objects

9 years agoCheck before add lun to QoS in Huawei driver
Wilson Liu [Tue, 1 Sep 2015 11:22:41 +0000 (19:22 +0800)]
Check before add lun to QoS in Huawei driver

Check whether the lun_id has already been
added into the QoS before we add it.

Also some very small code clean in this patch.

Closes-Bug: #1490935
Change-Id: Ie0a2e4debe229d2f5ad8c66cfd1f0bf5522e4733

9 years ago * Align with MOS packaging:
Thomas Goirand [Tue, 1 Sep 2015 13:50:44 +0000 (15:50 +0200)]
  * Align with MOS packaging:
    - Bumped EPOCH to 2 instead of 1.
    - Some Ubuntu version lower bounds for dependencies.
    - Added a cinder-doc package.

9 years agoFix backup metadata import missing fields
Gorka Eguileor [Sun, 12 Jul 2015 11:30:03 +0000 (13:30 +0200)]
Fix backup metadata import missing fields

When importing backup metadata only required fields were being imported,
and all other fields were being ignored.

This led to some serious problems when importing backups back, since
you would lose not only the original Volume ID, but also relevant parent
id information needed to restore incremental backups.

This patch fixes this by importing everything back and creating backup
records with the right ID.

Closes-Bug: #1455043
Closes-Bug: #1476416
Depends-On: Id7ab6e174c1fe85772477f03059c4f457c5c8b17
Change-Id: Ia42ba73e9078d993c63f8e16308151ad11721ea9

9 years agoMerge "Service object"
Jenkins [Tue, 1 Sep 2015 12:45:32 +0000 (12:45 +0000)]
Merge "Service object"

9 years agoMerge "Add support for file I/O volume migration"
Jenkins [Tue, 1 Sep 2015 09:52:47 +0000 (09:52 +0000)]
Merge "Add support for file I/O volume migration"

9 years agoService object
Michal Dulko [Wed, 8 Jul 2015 09:27:30 +0000 (11:27 +0200)]
Service object

Add versionedobjects abstraction layer to services. Distinguish time
zone aware DateTime fields. The object derives from
CinderObjectDictCompat, so it supports both object (obj.prop) and dict
(obj['prop']) syntax to access properties. Complete move to object
notation will be made in a follow up clean up patch.

Co-Authored-By: Michal Dulko <michal.dulko@intel.com>
Change-Id: I09f593f9f9aa8befa40d989b731159b78a429071
Partial-Implements: blueprint cinder-objects

9 years agoMerge "Remove the method delete_volume_admin_metadata"
Jenkins [Tue, 1 Sep 2015 06:51:46 +0000 (06:51 +0000)]
Merge "Remove the method delete_volume_admin_metadata"

9 years agoMerge "Add pagination to backups"
Jenkins [Tue, 1 Sep 2015 06:51:35 +0000 (06:51 +0000)]
Merge "Add pagination to backups"

9 years agoMerge "3PAR update driver to store stats"
Jenkins [Tue, 1 Sep 2015 06:37:07 +0000 (06:37 +0000)]
Merge "3PAR update driver to store stats"

9 years agoMerge "Enhance FC zone support for Huawei driver"
Jenkins [Tue, 1 Sep 2015 06:36:59 +0000 (06:36 +0000)]
Merge "Enhance FC zone support for Huawei driver"

9 years agoMerge "force_detach terminate_connection needs connector"
Jenkins [Tue, 1 Sep 2015 06:36:48 +0000 (06:36 +0000)]
Merge "force_detach terminate_connection needs connector"

9 years agoMerge "Add cinder.conf.sample to gitignore"
Jenkins [Tue, 1 Sep 2015 06:35:28 +0000 (06:35 +0000)]
Merge "Add cinder.conf.sample to gitignore"

9 years agoMerge "Add debug logging before attaching volume in driver"
Jenkins [Tue, 1 Sep 2015 06:26:26 +0000 (06:26 +0000)]
Merge "Add debug logging before attaching volume in driver"

9 years agoMerge "Adding delete-wait-loop for CloudByte Volumes"
Jenkins [Tue, 1 Sep 2015 05:51:31 +0000 (05:51 +0000)]
Merge "Adding delete-wait-loop for CloudByte Volumes"

9 years agoMerge "Reduce runtime of E-Series iSCSI tests"
Jenkins [Tue, 1 Sep 2015 05:46:58 +0000 (05:46 +0000)]
Merge "Reduce runtime of E-Series iSCSI tests"

9 years agoAllow specified backend capabilities to be retrieved
Mitsuhiro Tanino [Mon, 10 Aug 2015 20:44:25 +0000 (16:44 -0400)]
Allow specified backend capabilities to be retrieved

This change adds a new admin-api extension to allow admin to
fetch specified backend capabilities.
With this extension, admin can obtain what the current deployed
backend in Cinder is able to do from the endpoint.

The extension takes "host" as an parameter.
GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/capabilities/<host>

DocImpact
Implements: blueprint get-volume-type-extra-specs
Change-Id: Ie8c3a3e554983f2e0819d52cf6d2db5efe7a0983

9 years agoAdd cinder.conf.sample to gitignore
John Griffith [Sun, 23 Aug 2015 18:20:54 +0000 (12:20 -0600)]
Add cinder.conf.sample to gitignore

Now that we have some sort of conf checking again in the
tox ini file, we should make sure we don't inadvertenly
commit a generated sample (which I've done twice now).

Change-Id: I51124971ee52a1caf48123c5c2df2759bbcc045d

9 years agoAdd delete_snapshot and update_snapshot rules
Anna Sortland [Thu, 16 Jul 2015 16:14:04 +0000 (11:14 -0500)]
Add delete_snapshot and update_snapshot rules

delete_snapshot and update_snapshot APIs from cinder/volume/api.py
are missing policy rules in default /etc/cinder/policy.json.
This change adds them.

Change-Id: Ie732fccd578a35e1f1f8bf1c59d5a55a2b4e928b
Closes-Bug: #1472003

9 years agoFix a merge problem in VMAX driver
Xing Yang [Fri, 28 Aug 2015 18:56:13 +0000 (14:56 -0400)]
Fix a merge problem in VMAX driver

SMI-S v8.0.3 support was added to VMAX driver, but some of the
code was merged out. This patch adds them back.

(Pulled from gate, cinder can no longer pass unit tests)

Change-Id: Ie2cd2ba12d72d27e6ea71de86911cfca83d105c0
Closes-Bug: #1487616

9 years agoDon't require OpenSSL for unit tests
Eric Harney [Mon, 31 Aug 2015 18:12:53 +0000 (14:12 -0400)]
Don't require OpenSSL for unit tests

This allows unit tests to run w/o PyOpenSSL installed.

Closes-Bug: #1490668

Change-Id: I820875ca66d23327218cc5787ee357e78c812d7f

9 years agoAdd pagination to backups
wanghao [Wed, 22 Jul 2015 08:30:00 +0000 (16:30 +0800)]
Add pagination to backups

Backups list/detail does not support pagination now.
Add pagination support like volume does by using marker,
limit, sort_key and sort_order.

Partial-Implements: blueprint extend-limit-implementations

DocImpact
APIImpact
Use marker, limit, etc. in list url like volume does.

(Pulled from gate, cinder can no longer pass unit tests)

Change-Id: I33dbdc34c61f78eab2a78a9cda08780068867a03

9 years agoEnhance FC zone support for Huawei driver
Liu Xinguo [Tue, 14 Jul 2015 14:36:57 +0000 (22:36 +0800)]
Enhance FC zone support for Huawei driver

Currently, when using FC switch, there are manual operations
necessary to enable the Huawei driver to work. This change
makes it so those manual operations are no longer required
any more. Huawei driver can choose the appropriate
FC ports and manage FC zone automatically.

(Pulled from gate, cinder can no longer pass unit tests)

Implements: blueprint huawei-driver-fc-zone-enhancement
Change-Id: Iabdbf294074f68f0f3a01860cc43a486af91d3ba

9 years agoAdd support for file I/O volume migration
Jon Bernard [Mon, 1 Jun 2015 18:09:30 +0000 (14:09 -0400)]
Add support for file I/O volume migration

This patch changes the generic volume migration logic to support
non-attachable volumes.  Non-attachable refers to volume drivers that do
not support attachment via the typical iSCSI or similar protocols where
a block device is made available on the host machine.  Device drivers
such as RBD make volumes available to cinder via a file handle that
proxies read() and write() calls to the Ceph cluster.

This patch improves the generic migration logic to determine whether a
migration operation can proceed with dd using block device paths or file
operations on handles returned from the os-brick connectors.

Changes to the RBD driver are included to correctly rename the target
volume during the completion phase of a successful migration.

It appears there is still some work to be done for attached in-use
volume migration for certain configurations.  Successful tests were seen
for:

  LVM to LVM (available and in-use)
  LVM to/from NFS (available and in-use)
  LVM to/from Ceph (available)
  Ceph to LVM (in-use)
  NFS to/from Ceph (available)
  Ceph to NFS (in-use)

Failures were seen (due to Nova) for the following:

  LVM to Ceph (in-use)
  NFS to Ceph (in-use)

(Pulled from gate, cinder can no longer pass unit tests)

Blueprint: generic-volume-migration
Closes-Bug: #1489335
Closes-Bug: #1489337
Change-Id: Iece2776fa751152f97b389ddab426e50c6f79bea

9 years agoAdd debug logging before attaching volume in driver
Matt Riedemann [Sun, 30 Aug 2015 15:27:45 +0000 (08:27 -0700)]
Add debug logging before attaching volume in driver

It'd be helpful to log the volume/instance/mount/host
information in attach_volume before calling the volume
driver to do the attachment to know we have the right
values.

Change-Id: I8e1111e900032d19d5c46bad266b79b050b40851
Related-Bug: #1205344

9 years agoRemove executable bits on files
Eric Harney [Fri, 28 Aug 2015 16:18:45 +0000 (12:18 -0400)]
Remove executable bits on files

Unit test and driver files should not be executable.

Change-Id: I50d3f93525024f63cf983d48a0192cb273018fe9

9 years agoNetApp DOT block driver over-subscription support
Tom Barron [Mon, 17 Aug 2015 10:36:24 +0000 (06:36 -0400)]
NetApp DOT block driver over-subscription support

Add support to the NetApp Data ONTAP block drivers for over-
subscription/overprovisioning.  This allows the Cinder scheduler
to more accurately represent the remaining space on a pool when
thin-provisioned Cinder Volumes are in use on a Data ONTAP
backend.

DocImpact
Co-Authored-By: Clinton Knight <cknight@netapp.com>
Partially implements: blueprint netapp-block--over-subscription-thin-provisioning

Change-Id: Ib86512b976e6ba0364b80c536c711c779ca11136

9 years agoCleanup for SnapshotObject
Daniel Tadrzak [Thu, 2 Jul 2015 13:44:39 +0000 (15:44 +0200)]
Cleanup for SnapshotObject

Mostly switched from dictionary notation (obj['prop']) to object
notation (obj.prop).
This patch doesn't contain changes for drivers. Drivers need to be
fixed in other patch.

Partial-Implements: blueprint cinder-objects
Change-Id: I98dd519e6dc84315df6caa768ce3f5fc4274431c

9 years agoAdd additional SSC extra specs to E-Series driver
Michael Price [Fri, 24 Jul 2015 17:49:04 +0000 (12:49 -0500)]
Add additional SSC extra specs to E-Series driver

This patch adds support for several new extra-specs in the E-Series
driver that can be used when defining a Storage Service Catalog.

Partially-Implements blueprint netapp-eseries-additional-extra-specs
DocImpact
Change-Id: I05cd931097c9ab3f2b6cb6f6c3b8ceb111579d0a

9 years agoMerge "Fix url in API response to get original"
Jenkins [Mon, 31 Aug 2015 12:36:30 +0000 (12:36 +0000)]
Merge "Fix url in API response to get original"

9 years agoMinor optimization
lisali [Fri, 28 Aug 2015 09:50:14 +0000 (09:50 +0000)]
Minor optimization

Remove the unnecessary comparison statements in manager.py.

Change-Id: If276aa78be089e75aa56310eb606ba3dccb9b9b1

9 years agoMerge "Clean up line continuation in Storwize driver"
Jenkins [Sun, 30 Aug 2015 14:19:37 +0000 (14:19 +0000)]
Merge "Clean up line continuation in Storwize driver"

9 years agoMerge "Enhance deletion efficiency when backup init host"
Jenkins [Sun, 30 Aug 2015 12:57:46 +0000 (12:57 +0000)]
Merge "Enhance deletion efficiency when backup init host"

9 years agoMerge "Add the ability to update type public status"
Jenkins [Sun, 30 Aug 2015 09:19:27 +0000 (09:19 +0000)]
Merge "Add the ability to update type public status"

9 years agoMerge "Validate filters in snapshot*, backup* in db.api"
Jenkins [Sat, 29 Aug 2015 23:56:56 +0000 (23:56 +0000)]
Merge "Validate filters in snapshot*, backup* in db.api"

9 years agoMerge "get_replication_updates call to driver is wrong"
Jenkins [Sat, 29 Aug 2015 23:56:46 +0000 (23:56 +0000)]
Merge "get_replication_updates call to driver is wrong"

9 years agoMerge "Volume status management during migration"
Jenkins [Sat, 29 Aug 2015 21:55:01 +0000 (21:55 +0000)]
Merge "Volume status management during migration"

9 years agoAdding delete-wait-loop for CloudByte Volumes
Abhishek Shrivastava [Mon, 13 Jul 2015 11:00:59 +0000 (16:30 +0530)]
Adding delete-wait-loop for CloudByte Volumes

Deleting volumes in CloudByte Storage is an asynchronous process.
So, the driver needs to wait till the job/process is completed.
The driver uses the jobid in a wait loop for a configured interval
of time, till the volume deletion is completed.

Added two new config options for this operation:

"cb_confirm_volume_delete_retry_interval"
"cb_confirm_volume_delete_retries"

DocImpact

Change-Id: I8139ecfb1b49c0b69ed956e3a53b5bb895ffc1fa

9 years agoMerge "Dell SC: init_volume stale volume info fix"
Jenkins [Sat, 29 Aug 2015 18:28:40 +0000 (18:28 +0000)]
Merge "Dell SC: init_volume stale volume info fix"

9 years agoMerge "Efficient volume copy for generic volume migration"
Jenkins [Sat, 29 Aug 2015 16:19:23 +0000 (16:19 +0000)]
Merge "Efficient volume copy for generic volume migration"

9 years agoMerge "Adds framework for get_capabilities() feature"
Jenkins [Sat, 29 Aug 2015 16:19:12 +0000 (16:19 +0000)]
Merge "Adds framework for get_capabilities() feature"

9 years agoMerge "Cinder Nested Quota Driver"
Jenkins [Sat, 29 Aug 2015 16:18:41 +0000 (16:18 +0000)]
Merge "Cinder Nested Quota Driver"

9 years agoMerge "Add retries to delete a volume in the RBD driver"
Jenkins [Sat, 29 Aug 2015 16:18:30 +0000 (16:18 +0000)]
Merge "Add retries to delete a volume in the RBD driver"

9 years agoMerge "Update volume status AFTER terminate_connection is done"
Jenkins [Sat, 29 Aug 2015 02:43:57 +0000 (02:43 +0000)]
Merge "Update volume status AFTER terminate_connection is done"

9 years agoMerge "Prevent that all backup objects are deleted"
Jenkins [Sat, 29 Aug 2015 02:43:40 +0000 (02:43 +0000)]
Merge "Prevent that all backup objects are deleted"

9 years agoMerge "Sheepdog: improve create and delete operation"
Jenkins [Sat, 29 Aug 2015 02:42:28 +0000 (02:42 +0000)]
Merge "Sheepdog: improve create and delete operation"

9 years agoMerge "Sheepdog: Add class for dog command executor"
Jenkins [Sat, 29 Aug 2015 02:41:24 +0000 (02:41 +0000)]
Merge "Sheepdog: Add class for dog command executor"

9 years agoMerge "Allow CG without snapshot to be deleted"
Jenkins [Sat, 29 Aug 2015 02:41:14 +0000 (02:41 +0000)]
Merge "Allow CG without snapshot to be deleted"

9 years agoMerge "Local cache feature of Oracle ZFSSA drivers"
Jenkins [Fri, 28 Aug 2015 23:26:39 +0000 (23:26 +0000)]
Merge "Local cache feature of Oracle ZFSSA drivers"

9 years agoMerge "Add manage/unmanage volume support for Nimble"
Jenkins [Fri, 28 Aug 2015 23:24:49 +0000 (23:24 +0000)]
Merge "Add manage/unmanage volume support for Nimble"

9 years agoMerge "LeftHand: Adding Consistency Group Support"
Jenkins [Fri, 28 Aug 2015 23:17:31 +0000 (23:17 +0000)]
Merge "LeftHand: Adding Consistency Group Support"

9 years agoMerge "Imported Translations from Transifex"
Jenkins [Fri, 28 Aug 2015 23:13:47 +0000 (23:13 +0000)]
Merge "Imported Translations from Transifex"

9 years agoMerge "Rework Scality SOFS driver to use RemoteFS class"
Jenkins [Fri, 28 Aug 2015 22:51:22 +0000 (22:51 +0000)]
Merge "Rework Scality SOFS driver to use RemoteFS class"

9 years agoget_replication_updates call to driver is wrong
John Griffith [Fri, 28 Aug 2015 15:19:34 +0000 (09:19 -0600)]
get_replication_updates call to driver is wrong

The call to driver.get_replication_updates in manager.py
omitted the context argument from the call.

This fixes that by adding the context argument to the call.

Change-Id: I1e59e4a7e64fee8f26ac27a3eb79683d7bccdce4
Closes-Bug: #1489931

9 years agoMerge "Skip intermittent VMDK tests"
Jenkins [Fri, 28 Aug 2015 19:38:32 +0000 (19:38 +0000)]
Merge "Skip intermittent VMDK tests"

9 years agoEarlier authority check for create volume API
Anna Sortland [Thu, 27 Aug 2015 20:36:11 +0000 (15:36 -0500)]
Earlier authority check for create volume API

create() API in cinder/volume/api.py does the authority check
in cinder/volume/flows/api/create_volume.py.
This creates potential for disclosing information during error checking
prior to user authorization being checked.
This fix will do authority check to create() itself, so that
it is done before proceeding with the rest of code flow.

Change-Id: I27dbdf5f3ae4e3d681cdbf77df10706721254ffc
Closes-Bug: #1472031

9 years agoMerge "Fix volume copy for 'virtual' volumes in DotHill"
Jenkins [Fri, 28 Aug 2015 16:40:46 +0000 (16:40 +0000)]
Merge "Fix volume copy for 'virtual' volumes in DotHill"

9 years agoFix url in API response to get original
Takeaki Matsumoto [Tue, 25 Aug 2015 07:47:01 +0000 (16:47 +0900)]
Fix url in API response to get original

This changes the url in the API response to get the original value of
redirection if the header 'X-Forwarded-Host' exists.

Change-Id: I10877522db5df66d14c01487de6297f1336cecaf
Closes-Bug: 1488373

9 years agoEfficient volume copy for generic volume migration
Mitsuhiro Tanino [Mon, 27 Jul 2015 03:15:58 +0000 (23:15 -0400)]
Efficient volume copy for generic volume migration

Currently Cinder uses dd command for data copy of volume migration,
but the copy always copy full blocks even if the source data contains
many null and zero blocks. The dd command has an option conv=sparse
to skip null or zero blocks for more efficient data copy.

However, if the destination volume is not zero cleared beforehand,
we should copy full block from source to dest volume to cleanup dest
volume in order to avoid security issue.
If the volume pre-initilization(zero cleared) is ensured beforehand,
we can skip copy of null and zero blocks to destination volume by
using sparse copy.

In order to use this option properly, we have to check
sparse_copy_volume capability for destination backend driver via
RPC API before volume copy.

This patch also adds sparse_copy_volume capability flag into volume
stats of LVM and NFS drivers to enable efficient copy for these
backends.

Implements: blueprint efficient-volume-copy-for-cinder-assisted-migration
Change-Id: Ic343860d37276907724fce3a9c0f7c9d034c4aaa

9 years agoMerge "Add unit test for backup get_all"
Jenkins [Fri, 28 Aug 2015 09:43:47 +0000 (09:43 +0000)]
Merge "Add unit test for backup get_all"

9 years agoMerge "Incremental backup improvements for L"
Jenkins [Fri, 28 Aug 2015 02:10:21 +0000 (02:10 +0000)]
Merge "Incremental backup improvements for L"

9 years agoVolume status management during migration
Vincent Hou [Thu, 28 May 2015 03:18:09 +0000 (11:18 +0800)]
Volume status management during migration

This patch proposes a new implementation for the status and
the migration_status for volumes.

* The initial migration_status is None, meaning no migration has been
done; Migration_status 'error' means the previous migration failed.
Migration_status 'success' means the previous migration succeeded.

* If the key 'lock_volume' is set to True from the request, the volume
status should be set to 'maintenance' during migration and goes
back to its original status after migration. Otherwise, if the
key 'lock_volume' is set to False, the volume status will remain the
same as its original status. The default value for lock_volume is
False and it applies to the available volume.

* From the REST's perspectives, all the create, update and delete
actions are not allowed if the volume is in 'maintenance', because
it means the volume is out of service. If it is not in maintenance
mode, the migration can be interrupted if other requests are
issued, e.g. attach. For the termination of migration, another
patch will target to resolve it.

DocImpact
APIImpact The key 'lock_volume' has been added into the API,
telling the volume to change the status to 'maintenance' or not.
The migration_status has been added into results returned
from volume list command, if the request is from an admin.

Change-Id: Ia86421f2d6fce61dcfeb073f8e7b9c9dde517373
Partial-implements: blueprint migration-improvement