]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
9 years agoMerge "remotefs: Fix doc string for _create_snapshot"
Jenkins [Tue, 9 Jun 2015 20:13:04 +0000 (20:13 +0000)]
Merge "remotefs: Fix doc string for _create_snapshot"

9 years agoMerge "Fixes 3PAR snapshot failure with optional params"
Jenkins [Tue, 9 Jun 2015 14:10:55 +0000 (14:10 +0000)]
Merge "Fixes 3PAR snapshot failure with optional params"

9 years agoMerge "ConsistencyGroup: Return 400 instead of 500 for invalid body"
Jenkins [Mon, 8 Jun 2015 17:34:35 +0000 (17:34 +0000)]
Merge "ConsistencyGroup: Return 400 instead of 500 for invalid body"

9 years agoMerge "Remove unused find_attribute_or_element()"
Jenkins [Mon, 8 Jun 2015 17:34:22 +0000 (17:34 +0000)]
Merge "Remove unused find_attribute_or_element()"

9 years agoFixes 3PAR snapshot failure with optional params
Kurt Martin [Mon, 8 Jun 2015 17:26:20 +0000 (10:26 -0700)]
Fixes 3PAR snapshot failure with optional params

Create snapshot fails when HP3PAR hp3par_snapshot_retention and/or
hp3par_snapshot_expiration parameters were set in cinder.conf. The
params were being sent to the backend as strings instead on integers.

Change-Id: I24d0bc133c48b47a27f5c112e9cd924dd0fa3bcc
Closes-bug: #1461640

9 years agoMerge "Prophetstor driver needs to return snapshot objects"
Jenkins [Mon, 8 Jun 2015 15:39:00 +0000 (15:39 +0000)]
Merge "Prophetstor driver needs to return snapshot objects"

9 years agoConsistencyGroup: Return 400 instead of 500 for invalid body
PranaliDeore [Mon, 25 May 2015 09:14:26 +0000 (02:14 -0700)]
ConsistencyGroup: Return 400 instead of 500 for invalid body

If invalid request body is passed to the delete
consistencygroups api, then it returns 500 error.

Validated request body using 'is_valid_body()' method
and also added validation to check 'force' is of bool type.

APIImpact

Closes-Bug: #1458868
Change-Id: Iaaa4409233bfed6ae3e67be5df8cc5ada28e054f

9 years agoMerge "Dell SC: Added support for alternate iscsi portals"
Jenkins [Sat, 6 Jun 2015 03:35:37 +0000 (03:35 +0000)]
Merge "Dell SC: Added support for alternate iscsi portals"

9 years agoMerge "Revert "Adds drivers for DotHill Storage Arrays.""
Jenkins [Sat, 6 Jun 2015 01:02:52 +0000 (01:02 +0000)]
Merge "Revert "Adds drivers for DotHill Storage Arrays.""

9 years agoMerge "Handle ineffective backup compression"
Jenkins [Sat, 6 Jun 2015 00:16:29 +0000 (00:16 +0000)]
Merge "Handle ineffective backup compression"

9 years agoRevert "Adds drivers for DotHill Storage Arrays."
Mike Perez [Fri, 5 Jun 2015 23:14:33 +0000 (16:14 -0700)]
Revert "Adds drivers for DotHill Storage Arrays."

Coordinating with the DotHill folks on some corrections that need to be
made for this patch.

This reverts commit f09c4b1aa0d76d5063d63b12a597da7fead0b93e.

Change-Id: I24a8892ae97b7d874fdfeab50065577f7857c8c6

9 years agoMerge "Windows SMBFS: Fix image resize errors during volume creation"
Jenkins [Fri, 5 Jun 2015 22:57:00 +0000 (22:57 +0000)]
Merge "Windows SMBFS: Fix image resize errors during volume creation"

9 years agoMerge "Fix exception parameter name"
Jenkins [Fri, 5 Jun 2015 22:25:01 +0000 (22:25 +0000)]
Merge "Fix exception parameter name"

9 years agoDell SC: Added support for alternate iscsi portals
Tom Swanson [Wed, 13 May 2015 17:00:54 +0000 (12:00 -0500)]
Dell SC: Added support for alternate iscsi portals

Added support for returning alternate target portals,
luns and iqns in a non multipath setup.  This was done
per https://review.openstack.org/#/c/140877/  Tests
were modified to support this change.

The iscsi initialize_connection and find_iscsi_properties
functions took the brunt of this.  The full list of portals,
luns and iqns are returned along with the preferred portal,
lun and iqn rather than a single iqn, lun and portal.

Some minor log message changes for clarity.  (Removed the
one character vars.)

Comment cleanup and clarification.

Implements: blueprint dell-sc-add-alternate-iscsi-portals
Change-Id: I40ad7c2e9b92fd6c6780ad181fcbccd25021d312

9 years agoMerge "Complete switch to snapshot objects"
Jenkins [Fri, 5 Jun 2015 22:21:09 +0000 (22:21 +0000)]
Merge "Complete switch to snapshot objects"

9 years agoMerge "Dell: Added verify cert option for REST calls"
Jenkins [Fri, 5 Jun 2015 22:18:51 +0000 (22:18 +0000)]
Merge "Dell: Added verify cert option for REST calls"

9 years agoMerge "Don't send heartbeats if Manager reports a problem"
Jenkins [Fri, 5 Jun 2015 17:23:23 +0000 (17:23 +0000)]
Merge "Don't send heartbeats if Manager reports a problem"

9 years agoMerge "Multiple pools support enhancement in VNX cinder driver"
Jenkins [Fri, 5 Jun 2015 17:23:06 +0000 (17:23 +0000)]
Merge "Multiple pools support enhancement in VNX cinder driver"

9 years agoDell: Added verify cert option for REST calls
Tom Swanson [Tue, 12 May 2015 17:37:43 +0000 (12:37 -0500)]
Dell: Added verify cert option for REST calls

If one goes through the trouble to create a cert and
install it on the Dell Data Collector and on the cinder
node then we can enable certificate verification on the
request calls to the Dell REST API.

This simply makes dell_sc_verify_cert a cinder.conf option
for a Dell backend and directly uses that as the verify
option on the REST requests.  Default is False.

The update_migrated_volume function arrived via a rebase
and had a merge issue that was fixed.  Specifically the
dell_sc_ssn value is no longer part of the api.find_sc
call.

Spelling error also corrected in a LOG message.

SecImpact

Change-Id: I22348d5e0b55d56f44f1fc4f0c830790a6670494
Implements: blueprint dell-sc-add-verify-cert

9 years agoMerge "Move Dothill tests out of root test directory"
Jenkins [Fri, 5 Jun 2015 15:30:39 +0000 (15:30 +0000)]
Merge "Move Dothill tests out of root test directory"

9 years agoMerge "Add Pure Storage FibreChannel driver"
Jenkins [Fri, 5 Jun 2015 14:45:39 +0000 (14:45 +0000)]
Merge "Add Pure Storage FibreChannel driver"

9 years agoHandle ineffective backup compression
Tom Barron [Thu, 7 May 2015 19:46:06 +0000 (15:46 -0400)]
Handle ineffective backup compression

Don't compress chunks when compressed length is not a gain over
original, uncompressed length.

With incremental backups, where chunks can be built from short
"extents", the likelihood of this situation has significantly
increased.

Closes-Bug: 1462268
Change-Id: Id960cb22ae74f19154f49a0c19ee07a00145067f

9 years agoMerge "Non-admin user to query volume filter by az"
Jenkins [Fri, 5 Jun 2015 04:57:25 +0000 (04:57 +0000)]
Merge "Non-admin user to query volume filter by az"

9 years agoMerge "Fix remaining memory issues with nfs backup unit tests"
Jenkins [Fri, 5 Jun 2015 04:55:16 +0000 (04:55 +0000)]
Merge "Fix remaining memory issues with nfs backup unit tests"

9 years agoProphetstor driver needs to return snapshot objects
rick.chen [Tue, 26 May 2015 04:47:27 +0000 (12:47 +0800)]
Prophetstor driver needs to return snapshot objects

Use snapshot objects instead of snapshot dictionaries of
create_cgsnapshot and delete_cgsnapshot.

Change-Id: I416cb53483c9106ff434dc659667c398868c91e6
Partially-Closes-Bug: #1458127

9 years agoComplete switch to snapshot objects
Thang Pham [Thu, 12 Mar 2015 17:18:05 +0000 (13:18 -0400)]
Complete switch to snapshot objects

The following patch switches the remainder of cinder internals
to use snapshot object instead of direct db calls.  Note that
db calls within cinder drivers were not switched over.  This
is left to driver maintainers to do themselves and to
properly test out the changes on their hardware.

Also, note that there are three occurrences of
db.snapshot_update and one of db.snapshot_destroy left in
cinder/volume/manager.py.  This is intentional because
driver.create_cgsnapshot and driver.delete_cgsnapshot returns
a list of snapshot dicts.  Each driver needs to switched over
occurences of db.snapshot_get_all_for_cgsnapshot() to
SnapshotList.get_all_for_cgsnapshot() in create_cgsnapshot
and delete_cgsnapshot.  Once each driver has done so, a follow
up patch can be created to remove db.snapshot_update and
db.snapshot_destroy in cinder/volume/manager.py.  There are
bugs filed for these to be fixed -
https://bugs.launchpad.net/cinder/+bugs?field.tag=
cgsnapshot-objects.

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

9 years agoMerge "DriverFilter: don't check volume_backend_name"
Jenkins [Fri, 5 Jun 2015 03:00:12 +0000 (03:00 +0000)]
Merge "DriverFilter: don't check volume_backend_name"

9 years agoDriverFilter: don't check volume_backend_name
Zhiteng Huang [Thu, 4 Jun 2015 18:23:58 +0000 (11:23 -0700)]
DriverFilter: don't check volume_backend_name

Currently DriverFilter checks if host_state.volume_backend_name
matches type.extra_specs.volume_backend_name.  The same check has
already been done in CapabilitiesFilter and done more thoroughly and
gracefully, for example, volume_backend_name can be a set of names
not limited to one to one match.  DriverFilter should just do one
thing, that is evaluating filter_function supplied by backend.

This change removes the volume_backend_name check from DriverFilter
without touching its core function, thus has no impact on existing
documentation because the checking of volume_backend_name is an
undocumented side-effect of this filter.  This change also reduces
one warning log to debug log when no filter_function found in
host_state, for the reason it would generate a lot of warning log
for those backends don't supply filter_function.

UpgradeImpact:
DriverFilter had an undocumented side-effect before it evaluates
filter_function - it checked if volume_backend_name in host_state
reported by backend matches volume_backend_name in volume type
extra specs, and if they don't, the backend would fail to pass
the filter.  Now that this side-effect has been removed, it
would impact users only under following circumstance: 1) user
enabled DriverFilter but not CapabilitiesFilter; 2) user relied
on DriverFilter to filter backends based on exact match of
'volume_backend_name' in type extra spec.  If unfortunately this
is the case for user, enabling CapabilitiesFilter by adding
it to 'scheduler_default_filters' configure option and restart
cinder scheduler service then everything should work just fine.
CapabilitiesFilter actually does a much better job checking
volume_backend_name.

Change-Id: Ie5c48587368856faa538eebb1b6611d464bd69bd
Closes-bug: #1461770

9 years agoMerge "Changes in rally-jobs/README.rst"
Jenkins [Thu, 4 Jun 2015 22:12:54 +0000 (22:12 +0000)]
Merge "Changes in rally-jobs/README.rst"

9 years agoAdd Pure Storage FibreChannel driver
Daniel Wilson [Tue, 12 May 2015 17:47:35 +0000 (10:47 -0700)]
Add Pure Storage FibreChannel driver

    This commit adds a FibreChannel driver for Pure Storage. The driver shares
    the majority of functionality with base driver and only has the code
    necessary to support connection to FibreChannel.

Implements: blueprint pure-fc-driver
Change-Id: Ia4ce76d6a2ec754951c13d3620f9f47d6920058b

9 years agoMerge "Refactor scheduler's create_volume flow"
Jenkins [Thu, 4 Jun 2015 22:01:39 +0000 (22:01 +0000)]
Merge "Refactor scheduler's create_volume flow"

9 years agoFix exception parameter name
Earle F. Philhower, III [Thu, 4 Jun 2015 21:57:50 +0000 (14:57 -0700)]
Fix exception parameter name

Trivial fix for an exception parameter being passed in via the
wrong named parameter.

Change-Id: I55cb8b181dea58b7feea8f715ae06942d6e4c784
Closes-Bug: 1462096

9 years agoMove Dothill tests out of root test directory
John Griffith [Thu, 4 Jun 2015 21:39:13 +0000 (15:39 -0600)]
Move Dothill tests out of root test directory

The Dothill code merged but unfortunately had it's
unit tests in the base tests directory.

This patch just moves it to tests/unit/volume/drivers

Change-Id: I010ed2f784384e272599ec3139957989f8838e6f
Closes-Bug: #1462106

9 years agoFix remaining memory issues with nfs backup unit tests
Tom Barron [Thu, 19 Mar 2015 23:10:54 +0000 (19:10 -0400)]
Fix remaining memory issues with nfs backup unit tests

Here we fix another place in the nfs backup unit tests where
the configured file size was larger than the chunk size in
the corresponding Swift backup tests.  I missed this one in

   https://review.openstack.org/#/c/165394

and even though code with that fix ran fine in a bare 1GB VM,
there are still memory issues when run in CI with a VM of that
size.

Closes-Bug: 1452811
Change-Id: I20dcfb657699e1b415ae2e36ec63f8c6b0049285

9 years agoMerge "Removed explicit return from __init__ method"
Jenkins [Thu, 4 Jun 2015 16:51:06 +0000 (16:51 +0000)]
Merge "Removed explicit return from __init__ method"

9 years agoDon't send heartbeats if Manager reports a problem
Michal Dulko [Thu, 4 Jun 2015 15:25:24 +0000 (17:25 +0200)]
Don't send heartbeats if Manager reports a problem

This commit adds is_working method to base Manager class that can be
used to indicate that service has some problems and isn't running
correctly. This is used to block refreshing Service heartbeats if
Manager will return False from is_working.

The method is implemented in c-vol Manager to return initialization
state of the underlying volume driver.

Closes-Bug: 1446750
DocImpact

Change-Id: I809b2b777a0f84d12f39f2233920ec961f74f846

9 years agoChanges in rally-jobs/README.rst
Alexander Maretskiy [Thu, 4 Jun 2015 12:22:06 +0000 (15:22 +0300)]
Changes in rally-jobs/README.rst

Changes:
 * fix broken links
 * add link to release notes

Change-Id: I01b360bab2ea08f3f940ea5992ac6981b68074b5

9 years agoMerge "Tintri Cinder Volume driver"
Jenkins [Thu, 4 Jun 2015 14:39:59 +0000 (14:39 +0000)]
Merge "Tintri Cinder Volume driver"

9 years agoRemoved explicit return from __init__ method
Rajesh Tailor [Thu, 4 Jun 2015 12:29:02 +0000 (05:29 -0700)]
Removed explicit return from __init__ method

As per python documentation [1], removed explicit return keyword
from __init__ method.

[1] https://docs.python.org/2/reference/datamodel.html#object.__init__

Closes-Bug: 1461931
Change-Id: I654d7786e1971304789bbb376f8ced2b5646370e

9 years agoMerge "Return provider_id in SolidFire model update"
Jenkins [Thu, 4 Jun 2015 04:25:53 +0000 (04:25 +0000)]
Merge "Return provider_id in SolidFire model update"

9 years agoMerge "Clean up unused exceptions"
Jenkins [Thu, 4 Jun 2015 03:34:07 +0000 (03:34 +0000)]
Merge "Clean up unused exceptions"

9 years agoMerge "Fix issues with extra specs in VMAX driver"
Jenkins [Thu, 4 Jun 2015 03:33:56 +0000 (03:33 +0000)]
Merge "Fix issues with extra specs in VMAX driver"

9 years agoMerge "Port ProphetStor driver to use ABCMeta driver model"
Jenkins [Thu, 4 Jun 2015 03:33:46 +0000 (03:33 +0000)]
Merge "Port ProphetStor driver to use ABCMeta driver model"

9 years agoMerge "Remove un-used import at test_volume_transfer.py"
Jenkins [Thu, 4 Jun 2015 03:29:53 +0000 (03:29 +0000)]
Merge "Remove un-used import at test_volume_transfer.py"

9 years agoMerge "Adds FC and ISCSI Cinder drivers for DotHill Storage Arrays."
Jenkins [Thu, 4 Jun 2015 00:44:33 +0000 (00:44 +0000)]
Merge "Adds FC and ISCSI Cinder drivers for DotHill Storage Arrays."

9 years agoMerge "Allow provisioning to reach max oversubscription"
Jenkins [Thu, 4 Jun 2015 00:31:27 +0000 (00:31 +0000)]
Merge "Allow provisioning to reach max oversubscription"

9 years agoReturn provider_id in SolidFire model update
John Griffith [Mon, 1 Jun 2015 15:33:14 +0000 (15:33 +0000)]
Return provider_id in SolidFire model update

The provider_id field was added in
commit: 9f34d34d0ab92400223e3cc87285d0d4fbdf21f9

This patch adds provider_id to the returned model
update and uses it to provide the internal SolidFire
volume ID mapping.

Next step will be to rewrite the awkward list search
of volume names to find the corresponding volume on
the SolidFire backend.

Change-Id: Ia44d46362bb1b688c4ac266afecca9ce66dcef25

9 years agoDeprecate the HPLeftHandISCSIDriver CLIQ driver
Kurt Martin [Tue, 2 Jun 2015 22:30:00 +0000 (15:30 -0700)]
Deprecate the HPLeftHandISCSIDriver CLIQ driver

This patch adds a deprecation message to the HPLeftHandISCSIDriver CLIQ
driver with the plan of removing it in the 2016.1 release. The
HPLeftHandISCSIDriver REST based driver should be used instead.

Change-Id: I9eb1fc71d7be4848f116e0585964af97cae210b5

9 years agoAllow provisioning to reach max oversubscription
Xing Yang [Wed, 3 Jun 2015 14:40:26 +0000 (10:40 -0400)]
Allow provisioning to reach max oversubscription

Currently if provisioned ratio is equal to max_over_subscription_ratio,
the capacity filter does not allow any more thin provisioning. This patch
makes a change so that thin provisioning is allowed if provisioned ratio
is equal to max_over_subscription_ratio; it will only stop provisioning
if provisioned ratio is greater than max_over_subscription_ratio.

Change-Id: Ibf13ef97472b80a1b59ffd4389a4ed2eacf67205
Partial-Bug: #1458976

9 years agoPort ProphetStor driver to use ABCMeta driver model
rick.chen [Thu, 30 Apr 2015 09:30:17 +0000 (17:30 +0800)]
Port ProphetStor driver to use ABCMeta driver model

Use new ABCMeta driver model for ProphetStor driver.

Change-Id: Ic8ecbecb661971a4535a6899b0d104ef5bdf0011
Implements: blueprint abc-driver-update

9 years agoClean up unused exceptions
Sean McGinnis [Wed, 3 Jun 2015 04:29:01 +0000 (23:29 -0500)]
Clean up unused exceptions

Over the last cycle several drivers were removed. There
have also been changes over time in the code. As a
result, there were quite a few exception class declarations
that were no longer being used anywhere in the code base.

This removes Exception classes that were not referenced.

Change-Id: Ieed6e6e81196e7fe62d0ce22bab5620ac4a1269d

9 years agoRefactor scheduler's create_volume flow
Michal Dulko [Wed, 3 Jun 2015 06:29:47 +0000 (08:29 +0200)]
Refactor scheduler's create_volume flow

Removing duplicated code path in exception handling and fixing untrue
or unclear statements in the comments.

Change-Id: I4e3a05b503fa3b3fd20acd43571995da4c48d491

9 years agoAdds FC and ISCSI Cinder drivers for DotHill Storage Arrays.
nikeshm [Mon, 27 Apr 2015 06:53:11 +0000 (12:23 +0530)]
Adds FC and ISCSI Cinder drivers for DotHill Storage Arrays.

DocImpact
Implements: blueprint dothill-fc-cinder-driver
Implements: blueprint dothill-iscsi-cinder-driver

Change-Id: I6a852ee6f1df29606aca5fe6fe3c5ef427359b5c

9 years agoMerge "Bump SolidFire version number"
Jenkins [Wed, 3 Jun 2015 01:33:58 +0000 (01:33 +0000)]
Merge "Bump SolidFire version number"

9 years agoMerge "Dell SC: update_volume_stats could use uninitialized vars"
Jenkins [Wed, 3 Jun 2015 00:16:39 +0000 (00:16 +0000)]
Merge "Dell SC: update_volume_stats could use uninitialized vars"

9 years agoBump SolidFire version number
John Griffith [Tue, 2 Jun 2015 16:14:03 +0000 (10:14 -0600)]
Bump SolidFire version number

Should have bumped version in this commit:
    Ia67b2b9e3c0bf3b0b1f991e958f8eac13830f9cc

Forgot, so do it now.

Change-Id: If3ef470c8d5c3b2c178d8f7f7ad6bed1df68fef9

9 years agoMerge "Disable backup progress notifications for unit tests"
Jenkins [Tue, 2 Jun 2015 23:31:08 +0000 (23:31 +0000)]
Merge "Disable backup progress notifications for unit tests"

9 years agoDell SC: update_volume_stats could use uninitialized vars
Tom Swanson [Tue, 2 Jun 2015 19:20:55 +0000 (14:20 -0500)]
Dell SC: update_volume_stats could use uninitialized vars

In _update_volume_stats in dell_storagecenter_common.py totalcapacitygb
and freespacegb are not necessarily initialized in the LOG.debug call.
Changed to data['total_capacity_gb'] and data['free_capacity_gb'].

Also initialized to total_capacity_gb and free_capacity_gb dict entries
to 'unavailable' which allowed the removal of two conditionals in the
same function.

Change-Id: Ib699e0d1cf67645298628aa96656888193843509
Closes-Bug: #1461230

9 years agoMerge "Fix assertRaisesRegexp deprecation warnings in UT"
Jenkins [Tue, 2 Jun 2015 21:48:39 +0000 (21:48 +0000)]
Merge "Fix assertRaisesRegexp deprecation warnings in UT"

9 years agoMerge "Switch get_all_snapshots to use objects"
Jenkins [Tue, 2 Jun 2015 21:22:09 +0000 (21:22 +0000)]
Merge "Switch get_all_snapshots to use objects"

9 years agoDisable backup progress notifications for unit tests
Eric Harney [Tue, 2 Jun 2015 20:26:58 +0000 (16:26 -0400)]
Disable backup progress notifications for unit tests

We have code somewhere which is firing backup createprogress
notifications into the notifier, which causes random unit
test failures.

Until we determine exactly why this happening, attempt to
avoid this problem in the gate by disabling these notifications.

Related-Bug: #1412513

Change-Id: I50b7946562e757ee26cb68b17b4a5ffcd5f3fabd

9 years agoTintri Cinder Volume driver
Sean Chen [Tue, 12 May 2015 21:59:30 +0000 (14:59 -0700)]
Tintri Cinder Volume driver

* Volume Create/Delete
* Volume Attach/Detach
* Snapshot Create/Delete
* Create Volume from Snapshot
* Get Volume Stats
* Copy Image to Volume
* Copy Volume to Image
* Clone Volume
* Extend Volume

Implements: blueprint tintri-cinder-driver

Change-Id: I4d9f2805e02524e0e271a263376b446565294d28

9 years agoMerge "Refactor PureISCSIDriver into base and iSCSI classes."
Jenkins [Tue, 2 Jun 2015 18:56:26 +0000 (18:56 +0000)]
Merge "Refactor PureISCSIDriver into base and iSCSI classes."

9 years agoMerge "EMC VMAX Manage/Unmanage Volume"
Jenkins [Tue, 2 Jun 2015 18:53:14 +0000 (18:53 +0000)]
Merge "EMC VMAX Manage/Unmanage Volume"

9 years agoFix assertRaisesRegexp deprecation warnings in UT
Michal Dulko [Tue, 2 Jun 2015 16:48:26 +0000 (18:48 +0200)]
Fix assertRaisesRegexp deprecation warnings in UT

This commit changes assertRaisesRegexp occurrences to
assertRaisesRegex to fix deprecation warnings.

Change-Id: I22fb6224057716f734a8ac69da72ccdb9b464289
Closes-Bug: 1461171

9 years agoRefactor PureISCSIDriver into base and iSCSI classes.
Patrick East [Tue, 14 Apr 2015 20:45:22 +0000 (13:45 -0700)]
Refactor PureISCSIDriver into base and iSCSI classes.

This adds in a new class called PureBaseVolumeDriver that contains
all of the generic shared methods that utilize the management REST API.

The PureISCSIDriver now inherits from the base driver and implements
the functionality required for iSCSI hosts/initiators.

As part of this we’ve cleaned up some of the logging where it would
previously have hard coded the drivers class name in it, and moved some
static non-class helper methods into the base class.

These changes will ease future work to add additional drivers or split
them into separate files.

Implements: blueprint pure-base-driver
Change-Id: Iaf3979e5cccc150d09ca00daa3d9c3471f9795a0

9 years agoMerge "Use SolidFire snapshots for Cinder snapshots"
Jenkins [Tue, 2 Jun 2015 14:59:36 +0000 (14:59 +0000)]
Merge "Use SolidFire snapshots for Cinder snapshots"

9 years agoNon-admin user to query volume filter by az
wanghao [Sun, 15 Feb 2015 07:40:53 +0000 (15:40 +0800)]
Non-admin user to query volume filter by az

Now cinder limits non-admin user to query volume just filtered by 'name',
'status', and 'metadata', those are hard coded in cinder-api. So improve
this using config option and allow non-admin to query volume filtered by
'availability zone'.

DocImpact

Change-Id: Ia4a324959e16d7e6effe7afb18fe57562231d879
Implements: blueprint allow-non-admin-to-query-volume-filter-by-az

9 years agoMerge "Fix volume creation from image with allowed_direct_url_schemes"
Jenkins [Tue, 2 Jun 2015 03:55:21 +0000 (03:55 +0000)]
Merge "Fix volume creation from image with allowed_direct_url_schemes"

9 years agoMerge "Add chap support to CloudByte cinder driver"
Jenkins [Mon, 1 Jun 2015 20:29:23 +0000 (20:29 +0000)]
Merge "Add chap support to CloudByte cinder driver"

9 years agoMerge "NetApp FC driver shims missing manage/unmanage"
Jenkins [Mon, 1 Jun 2015 20:00:42 +0000 (20:00 +0000)]
Merge "NetApp FC driver shims missing manage/unmanage"

9 years agoFix cinder concurrency issues on rtstool
Gorka Eguileor [Mon, 1 Jun 2015 16:30:01 +0000 (18:30 +0200)]
Fix cinder concurrency issues on rtstool

Since there's no synchronized access to configfs in rtslib it can happen
that rtstool or rtslib access an element that no longer exists because
it has been removed just in the middle of a loop by another Cinder
request.

This results in quite a different number of exceptions:
- .dump()
- KeyError
- IOError
- RTSLibError on storage_object

This patch synchronizes access to all rtstool calls that access or
modify configfs using utils.synchronized decorator.

Change-Id: I341a10da54ab01be68a0cae843f35e5c841c6d81
Closes-Bug: #1460692

9 years agoUse SolidFire snapshots for Cinder snapshots
John Griffith [Fri, 29 May 2015 23:41:25 +0000 (23:41 +0000)]
Use SolidFire snapshots for Cinder snapshots

This patch just replaces the use of clones on the SolidFire
backend for SolidFire Snapshot objects.  This isn't necessarily
an issue, but it is important necessary to do things like
consistency group snaps.

Note, that we have to keep compatability for things like
create_from_snapshot where the system may have clones that
were used for snapshots prior to updating the driver.

While we're here, we also removed the logging calls in the test
which shouldn't really be there, as well as the overly chatty
debug messages like "entering/leaving".  More cleanup work
can be done to logs but should be in their own patch.

Change-Id: Ia67b2b9e3c0bf3b0b1f991e958f8eac13830f9cc

9 years agoSwitch get_all_snapshots to use objects
Thang Pham [Wed, 4 Mar 2015 03:10:52 +0000 (22:10 -0500)]
Switch get_all_snapshots to use objects

The following patch switches direct db calls in
volume/api.py get_all_snapshots to use SnapshotList
instead.

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

9 years agoMerge "Add volume ID to fake volumes in Gluster tests"
Jenkins [Sun, 31 May 2015 20:02:18 +0000 (20:02 +0000)]
Merge "Add volume ID to fake volumes in Gluster tests"

9 years agoMerge "Notification with volume and snapshot metadata"
Jenkins [Sun, 31 May 2015 09:50:54 +0000 (09:50 +0000)]
Merge "Notification with volume and snapshot metadata"

9 years agoMerge "VMware: insecure option should be exposed"
Jenkins [Sun, 31 May 2015 03:27:12 +0000 (03:27 +0000)]
Merge "VMware: insecure option should be exposed"

9 years agoNotification with volume and snapshot metadata
wanghao [Wed, 6 May 2015 04:08:00 +0000 (12:08 +0800)]
Notification with volume and snapshot metadata

Now notify message to ceilometer do not contain volume
metadata/glance_metadata and snapshot metadata, which are
useful to bill and enrich resource information in ceilometer.

This feature will add the metadata/glance_metadata of volume
and metadata of snapshot to notification usage info.

Change-Id: I04097be9f2da1d6bc45a2d5770bcd543a3f41887
Implements: blueprint notification-with-volume-and-snapshot-metadata

9 years agoMerge "Create iSCSI lio portals with right IPs and port"
Jenkins [Sat, 30 May 2015 00:21:46 +0000 (00:21 +0000)]
Merge "Create iSCSI lio portals with right IPs and port"

9 years agoMerge "Fix capacity filter to allow oversubscription"
Jenkins [Fri, 29 May 2015 23:50:40 +0000 (23:50 +0000)]
Merge "Fix capacity filter to allow oversubscription"

9 years agoAdd volume ID to fake volumes in Gluster tests
John Griffith [Fri, 29 May 2015 18:57:59 +0000 (12:57 -0600)]
Add volume ID to fake volumes in Gluster tests

This adds the volume ID field to the fake volume objects
in the GlusterFS tests.  Turning up concurrency exposes some
issues where access of this field is attempted but doesn't
exist.

Parital-Bug: #1459854

Change-Id: I0edb4fc7f2d6d4a3c23f395b4c2a611c0e954425

9 years agoFix capacity filter to allow oversubscription
Xing Yang [Wed, 27 May 2015 16:58:04 +0000 (12:58 -0400)]
Fix capacity filter to allow oversubscription

Currently the capacity filter does not allow oversubscrition
if the free physical capacity is less than the new volume size.
This was based on the assumption that a new thinly provisioned
volume will be consumed right away. This assumption does not
allow us to take full advantage of thin provisioning.

The fix is to allow oversubscription if thin provisioning is
supported and max_over_subscription_ratio is greater than or
equal to 1. The free physical capacity will not be used to
compare with the new volume size for a backend that supports
oversubscription in thin provisioning. The oversubscription
ratio and virtual free capacity will still be used to decide
whether a backend can be chosen for thin provisioning.

Closes-Bug: #1458976
Change-Id: I4c8904445654db839c25ded420915f83c3756f94

9 years agoMerge "Fix response when querying host detail by host name"
Jenkins [Fri, 29 May 2015 17:12:20 +0000 (17:12 +0000)]
Merge "Fix response when querying host detail by host name"

9 years agoMerge "Fix expression-not-assigned pylint issues"
Jenkins [Fri, 29 May 2015 16:49:06 +0000 (16:49 +0000)]
Merge "Fix expression-not-assigned pylint issues"

9 years agoEMC VMAX Manage/Unmanage Volume
Xing Yang [Tue, 12 May 2015 21:40:27 +0000 (17:40 -0400)]
EMC VMAX Manage/Unmanage Volume

This patch adds support for manage/unmanage volume in
the VMAX driver.

implements blueprint emc-vmax-manage-unmanage
Change-Id: If944108526e75c34dccb1d4a071131feb4cd33e4

9 years agoAdd chap support to CloudByte cinder driver
yogeshprasad [Fri, 8 May 2015 10:37:22 +0000 (16:07 +0530)]
Add chap support to CloudByte cinder driver

CloudByte iSCSI cinder driver currently does not support
iSCSI CHAP security setting. This opens a security vulnerability
whereby any host machine can mount a CloudByte iSCSI volumes
created via OpenStack.

This patch adds CHAP authentication support for the CloudByte iSCSI
cinder driver.

Admin has to manually add the auth group and chap username/password in
CloudByte storage. Driver uses the first user found in auth group.

DocImpact
Change-Id: I2c4c8320c7471e5cf2e2e242dbe1729c8974bf28
Implements: blueprint add-chap-authentication-support-to-cloudbyte-cinder-driver

9 years agoMerge "Stop using deprecated timeutils.isotime()"
Jenkins [Fri, 29 May 2015 04:44:54 +0000 (04:44 +0000)]
Merge "Stop using deprecated timeutils.isotime()"

9 years agoMerge "Fix wrong response with version details"
Jenkins [Fri, 29 May 2015 04:44:44 +0000 (04:44 +0000)]
Merge "Fix wrong response with version details"

9 years agoMultiple pools support enhancement in VNX cinder driver
Tina [Mon, 18 May 2015 01:12:10 +0000 (21:12 -0400)]
Multiple pools support enhancement in VNX cinder driver

This introduced a new option "storage_vnx_pool_names" which
replaced the existing option "storage_vnx_pool_name". The new option
allows user specify more than one pools to be managed by a vnx
cinder back end.

DocImpact
This change will introduce a new configuration option, so that the
documentation need to be updated.

Change-Id: Id6c3a1ecb32484fbd35dbb5814262103b322249e
Closes-Bug: 1456062

9 years agoMerge "Create consistgroup from cgsnapshot support in VNX driver"
Jenkins [Fri, 29 May 2015 04:21:16 +0000 (04:21 +0000)]
Merge "Create consistgroup from cgsnapshot support in VNX driver"

9 years agoRemove un-used import at test_volume_transfer.py
wanghao [Thu, 28 May 2015 03:33:34 +0000 (11:33 +0800)]
Remove un-used import at test_volume_transfer.py

There is an un-used import 'cinder.volume' at
ciner/tests/unit/api/contrib/test_volume_transfer.py.
Remove it, meanwhile there is using 'cinder.transfer.API'
at line #548 and line #581, so make the import consistent
by changed 'from cinder import transfer' to 'import cinder.transfer'.

Change-Id: I989c7b0a07e5e2836e41c0c922975f0c25b9ccdb
Closes-Bug: #1459497

9 years agoMerge "Updating cmd/manage.py get_arg_string() argument parser and adding unit test"
Jenkins [Fri, 29 May 2015 01:58:17 +0000 (01:58 +0000)]
Merge "Updating cmd/manage.py get_arg_string() argument parser and adding unit test"

9 years agoMerge "Add standard QoS spec support to cDOT drivers"
Jenkins [Fri, 29 May 2015 01:46:52 +0000 (01:46 +0000)]
Merge "Add standard QoS spec support to cDOT drivers"

9 years agoNetApp FC driver shims missing manage/unmanage
Clinton Knight [Wed, 15 Apr 2015 14:50:49 +0000 (10:50 -0400)]
NetApp FC driver shims missing manage/unmanage

The NetApp FC drivers' passthrough shim layers are missing the
manage/unmanage methods, causing the manage/unmanage functions
to fail.  The necessary functionality is already present in
the underlying library layer, so the trivial fix is to add the
functions to the passthrough layers. This patch also adds a
unit test to ensure the four block storage driver interfaces
remain in sync.

Change-Id: I0fa7e16b23e5148f82a8b51bf4380f4384c35759
Closes-Bug: #1444517

9 years agoUpdating cmd/manage.py get_arg_string() argument parser and adding unit test
Daniel Allegood [Wed, 27 May 2015 17:27:06 +0000 (10:27 -0700)]
Updating cmd/manage.py get_arg_string() argument parser and adding unit test

Looks like get_arg_string() would improperly chop off the first two characters
of an argument that was passed in with one dash.  For example,
passing '-option foo' would return 'tion foo' instead of 'option foo'.

Change-Id: Ib9aee601711b22c5243aca35f5c6196f494d23a9
Closes-Bug: #1459453

9 years agoMerge "Display NOTIFICATIONS on assert failure"
Jenkins [Thu, 28 May 2015 17:28:55 +0000 (17:28 +0000)]
Merge "Display NOTIFICATIONS on assert failure"

9 years agoFix expression-not-assigned pylint issues
Rajesh Tailor [Wed, 27 May 2015 09:43:02 +0000 (02:43 -0700)]
Fix expression-not-assigned pylint issues

Fixed expression-not-assigned (warning code W0106: Expression "%s" is
assigned to nothing) pylint issues in cinder project.

Closes-Bug: 1459538
Change-Id: Ibb16bde9ff0e3ebc3f1b595ea402d27938b5cf32

9 years agoAdd standard QoS spec support to cDOT drivers
Tom Barron [Mon, 23 Feb 2015 13:51:13 +0000 (08:51 -0500)]
Add standard QoS spec support to cDOT drivers

This commit adds support for standard cinder QoS specs to
NetApp cDOT drivers, alongside our pre-existing support for
externally provisioned QoS policy groups via qualified
extra specs.

Implements-blueprint: add-qos-spec-support

Change-Id: I4bd123020d00866a346ad02919ac1d82f7236134

9 years agoMerge "Avoid LUN ID collisions in NetApp iSCSI drivers"
Jenkins [Wed, 27 May 2015 20:46:55 +0000 (20:46 +0000)]
Merge "Avoid LUN ID collisions in NetApp iSCSI drivers"

9 years agoAvoid LUN ID collisions in NetApp iSCSI drivers
Rushil Chugh [Wed, 22 Apr 2015 22:40:18 +0000 (18:40 -0400)]
Avoid LUN ID collisions in NetApp iSCSI drivers

Previously, the logic to calculate the LUN ID only considered a single attached
host. Because multiple hosts can be attached to a LUN, the logic needs to
consider multiple hosts. This patchset proposes to choose non-conflicting
LUN IDs across the whole array. This patch first checks for an empty LUN ID
across the array. If it doesn't find one, then it looks for the least used
LUN ID across the whole array.
The value of MAX_LUNS_PER_HOST has been changed here as the range function
iterates from 0 to n-1 LUN IDs. With Eseries backend, a maximum of 256 LUN_IDS
are supported, thus a value of 256 MAX_LUNS_PER_HOST is required.

Closes-bug: 1433825
Closes-bug: 1457995
Change-Id: I033368c12c90d7fbbaf81b065f1a1c8c5975006a