]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
9 years agoMerge "NetApp E-series: Do not log passwords in requests"
Jenkins [Tue, 23 Dec 2014 13:47:58 +0000 (13:47 +0000)]
Merge "NetApp E-series: Do not log passwords in requests"

9 years agoMerge "Add error handling to _connect function in PureISCSIDriver"
Jenkins [Tue, 23 Dec 2014 08:08:03 +0000 (08:08 +0000)]
Merge "Add error handling to _connect function in PureISCSIDriver"

9 years agoFix format errors in brick/iscsi LOG messages
John Griffith [Fri, 19 Dec 2014 19:25:30 +0000 (19:25 +0000)]
Fix format errors in brick/iscsi LOG messages

Currently in cinder.brick.iscsi.iscs:LioADM.create_iscsi_target
The Log message for the exception is:
  LOG.error("%s" % e),

This rightfully results in:
  *** UnicodeError: UnicodeError(u'Message objects
      do not support str() because they may contain
      non-ascii characters. Please use unicode() or
      translate() instead.',)

In some cases this causes the Volume service to stop and
doesn't help a ton with debug. While looking at this also
noticed a number of other similar cases where invalid LOG
messages were set up.  Following the i8n guidelines here:
http://docs.openstack.org/developer/oslo.i18n/guidelines.html

Went ahead and cleaned the bulk of the LOG messages in this
file up to adhere to the guidelines as well as fixing the
UnicodeError described in the bug.

Change-Id: I33adf99ca25a2d8f869de5bfa85b4ca8429be05e

9 years agoMerge "Set iet_conf to nonexistent file in unit test"
Jenkins [Mon, 22 Dec 2014 16:25:10 +0000 (16:25 +0000)]
Merge "Set iet_conf to nonexistent file in unit test"

9 years agoMerge "Rename oslo.concurrency to oslo_concurrency"
Jenkins [Mon, 22 Dec 2014 16:19:35 +0000 (16:19 +0000)]
Merge "Rename oslo.concurrency to oslo_concurrency"

9 years agoOutputs the message about failing to bind to IPv6
Yuriy Nesenenko [Wed, 17 Dec 2014 14:26:36 +0000 (16:26 +0200)]
Outputs the message about failing to bind to IPv6

Change-Id: I85d9bffc4f848a38fd11784e6634fd014cc43001

9 years agoNetApp E-series: Do not log passwords in requests
Alex Meade [Sun, 19 Oct 2014 18:31:55 +0000 (14:31 -0400)]
NetApp E-series: Do not log passwords in requests

Previously, requests to the backend that contained passwords were
not scrubbed prior to logging.

Closes-bug: 1383444

Change-Id: I389d5115e4a6ffbae6f0463a62015f6ac01ec2e9

9 years agoMerge "Sync request_utils module from oslo-incubator"
Jenkins [Mon, 22 Dec 2014 01:57:31 +0000 (01:57 +0000)]
Merge "Sync request_utils module from oslo-incubator"

9 years agoMerge "Make GPFS driver compliant with logging standards"
Jenkins [Sun, 21 Dec 2014 22:20:19 +0000 (22:20 +0000)]
Merge "Make GPFS driver compliant with logging standards"

9 years agoSet iet_conf to nonexistent file in unit test
John Griffith [Sat, 20 Dec 2014 00:45:16 +0000 (17:45 -0700)]
Set iet_conf to nonexistent file in unit test

The Iet test in test_iscsi isn't setup to deal with
an actual iet.conf file.  The result is that if you happen
to be on a system that has an iet.conf file the test will fail
when it gets to the os.stat check.

This patch just uses a tempdir with a bogus file name that is
set as the iet_conf option to make sure the test never runs into
a situation where the file is actually there.

Change-Id: I5c8653a17250063660ca8aa369c537cc340bc4e9
Closes-Bug: #1400780

9 years agoMerge "Persist volume uuid on VMAX array"
Jenkins [Sun, 21 Dec 2014 06:30:01 +0000 (06:30 +0000)]
Merge "Persist volume uuid on VMAX array"

9 years agoMerge "Fixed a problem in terminate_connection in VMAX driver"
Jenkins [Sun, 21 Dec 2014 01:23:38 +0000 (01:23 +0000)]
Merge "Fixed a problem in terminate_connection in VMAX driver"

9 years agoMerge "Add a provider_id column to Volumes and Snapshots"
Jenkins [Sun, 21 Dec 2014 01:20:29 +0000 (01:20 +0000)]
Merge "Add a provider_id column to Volumes and Snapshots"

9 years agoMerge "LVM: Volume is deleted unexpectedly during volume migration"
Jenkins [Sat, 20 Dec 2014 07:04:55 +0000 (07:04 +0000)]
Merge "LVM: Volume is deleted unexpectedly during volume migration"

9 years agoMerge "Mock leaked _execute() calls in driver tests"
Jenkins [Sat, 20 Dec 2014 06:44:48 +0000 (06:44 +0000)]
Merge "Mock leaked _execute() calls in driver tests"

9 years agoMerge "Add support for Purity Protection Groups to PureISCSIDriver"
Jenkins [Sat, 20 Dec 2014 02:59:09 +0000 (02:59 +0000)]
Merge "Add support for Purity Protection Groups to PureISCSIDriver"

9 years agoMerge "encryption_id needs to be non-nullable"
Jenkins [Sat, 20 Dec 2014 02:43:11 +0000 (02:43 +0000)]
Merge "encryption_id needs to be non-nullable"

9 years agoMerge "rtstool on Ubuntu installs in /usr/local/bin"
Jenkins [Sat, 20 Dec 2014 02:42:55 +0000 (02:42 +0000)]
Merge "rtstool on Ubuntu installs in /usr/local/bin"

9 years agoMerge "Sync install_venv_common from oslo-incubator"
Jenkins [Sat, 20 Dec 2014 02:42:46 +0000 (02:42 +0000)]
Merge "Sync install_venv_common from oslo-incubator"

9 years agoRename oslo.concurrency to oslo_concurrency
Mike Perez [Fri, 19 Dec 2014 23:38:11 +0000 (15:38 -0800)]
Rename oslo.concurrency to oslo_concurrency

oslo.concurrency-0.3.0 has moved its path to oslo_concurrency,
the old path oslo.concurrency can still work but is deprecated now.

Closes-Bug: #1398656
Change-Id: I52211d7b7e1db3454c99d27042dae506adb2c41c

9 years agoAdd a provider_id column to Volumes and Snapshots
John Griffith [Fri, 19 Dec 2014 22:14:22 +0000 (15:14 -0700)]
Add a provider_id column to Volumes and Snapshots

There are a number of cases where there's some really ugly mapping
work in drivers to try and map the backend device-id to the
Cinder ID of a Volume or Snapshot.  Most drivers seem to work around this in
their own creative ways using their own mechanisms (metadata,
naming schemes etc).

It seems like it would be useful for a number of reasons however to
go ahead and add a simple column to the Volumes table that could be
used for storing a backend ID for the Volume and Snapshot.

Change-Id: Id07cdd1e03feac71ff34325d5abc68c5adc48266

9 years agoMock leaked _execute() calls in driver tests
Mike Perez [Fri, 19 Dec 2014 23:44:04 +0000 (15:44 -0800)]
Mock leaked _execute() calls in driver tests

Some drivers have _execute() calls being linked, causing tests to prompt
for password and eventual fail for time out. This prevents those
_execute calls from happening.

Closes-Bug: #1404414
Change-Id: I43a11c065799efe6f5b81dc15e1f7232c80d1070

9 years agoSync request_utils module from oslo-incubator
Jay S. Bryant [Fri, 19 Dec 2014 23:24:58 +0000 (17:24 -0600)]
Sync request_utils module from oslo-incubator

The request_utils module hasn't had a sync done since shortly
after the module was added.  This patch brings us up to date
with the latest oslo-incubator code.

This sync is needed to enable removal of the old gettextutils
and i18n code.

Current HEAD in OSLO:
---------------------
commit 36b0e8570b449129d6d474c03b02ceb62edb78df
Date:   Thu Dec 11 11:27:08 2014 +0100
We shouldn't replace `oslo-incubator` in comments

Changes being merged with this patch:
---------------------
5d40e143 - Remove code that moved to oslo.i18n
39625e18 - Set pbr 'warnerrors' option for doc build

Change-Id: Ib5b75d6ff38ff6f9571a0fdc30e854e046e66dd7

9 years agoPersist volume uuid on VMAX array
Xing Yang [Wed, 17 Dec 2014 04:58:36 +0000 (23:58 -0500)]
Persist volume uuid on VMAX array

This change saves the volume uuid in the ElementName field of
a SMI-S volume object so that it persists on the array.

Closes-Bug: #1395903
Change-Id: I53945f2864e6cfab756afdaeb17d45dfdac38c02

9 years agoFixed a problem in terminate_connection in VMAX driver
Xing Yang [Mon, 15 Dec 2014 16:47:44 +0000 (11:47 -0500)]
Fixed a problem in terminate_connection in VMAX driver

The VMAX driver unmaps the volume from the wrong VM in
terminate_connection during live migration. This patche
fixed this problem.

Closes-Bug: #1395845
Change-Id: Ida7136165b959a9e0d7d50c240b447bf237caa6c

9 years agoLVM: Volume is deleted unexpectedly during volume migration
Mitsuhiro Tanino [Thu, 18 Dec 2014 14:07:24 +0000 (09:07 -0500)]
LVM: Volume is deleted unexpectedly during volume migration

When using LVMISCSIDriver, a volume is unexpectedly deleted during
volume migration operation. This problem only occurs when the
volume_group of backend A and backend B is same value such as
misconfiguration. Even if the configuration is wrong, cinder should
not delete the volume unexpectedly for user.

Closes-Bug: 1404013
Change-Id: I010be0c70589459a488cdef7cd83380eab27c61c

9 years agoSync install_venv_common from oslo-incubator
Jay S. Bryant [Fri, 19 Dec 2014 20:37:45 +0000 (14:37 -0600)]
Sync install_venv_common from oslo-incubator

The install_venv_common modules hasn't had a sync done
since early in the icehouse release.  This sync brings
Cinder's version up to date with the latest code.

Current HEAD in OSLO:
---------------------
commit 36b0e8570b449129d6d474c03b02ceb62edb78df
Date:   Thu Dec 11 11:27:08 2014 +0100
We shouldn't replace `oslo-incubator` in comments

Change being merged with this patch:
---------------------
fe3389e5 - Improve help strings

Change-Id: I66fd66650a7106b8d20e4fc483dabb91184922f9

9 years agortstool on Ubuntu installs in /usr/local/bin
John Griffith [Fri, 19 Dec 2014 19:32:02 +0000 (19:32 +0000)]
rtstool on Ubuntu installs in /usr/local/bin

The cinder-rtstool which is required to use LIO iscsi_helper
installs in /usr/local/bin on Ubuntu and /usr/bin on RHEL
variants.  Currently the rootwrap.conf only has /usr/bin
configured, as a result LIO can't be used on Ubuntu without
modifying the rootwrap file.

This patch just adds /usr/local/bin to the rootwrap.conf; Honestly
I'm not sure if this is good, bad or doesn't matter.  May be able
to address this via documentation, or upstream in the packaging of
cinder-rtstool instead?  Not sure what's preferred.

Change-Id: I577e10df25181c7d4ca8189b10640a8e6e39b047
Closes-Bug: #1402076

9 years agoencryption_id needs to be non-nullable
jun xie [Fri, 19 Dec 2014 16:24:22 +0000 (00:24 +0800)]
encryption_id needs to be non-nullable

DB2 10.5 doesn't support primary key constraints over
nullable columns, so we have to make this column
non-nullable.

Change-Id: I3f6ded20cd8cf1902347f58f91c05446739b48f5
Closes-Bug: #1404303

9 years agoFix files in Cinder with execute bit set
Jay S. Bryant [Fri, 19 Dec 2014 15:37:19 +0000 (09:37 -0600)]
Fix files in Cinder with execute bit set

I noticed there were a number of files in the cinder/volume
directory tree that have the execute bit set for no apparent
reason.  I think in all cases it was because that was just
they way the permissions on the file were originally set based
on the user's umask settings.

This patch changes the permissions to be consistent with the other
python files in the cinder/volume directory.

Change-Id: Ib52cbe16ed426392c3b296b56b4d2592b4808e65

9 years agoMerge "Fix typo that escaped review in connector.py"
Jenkins [Fri, 19 Dec 2014 11:04:03 +0000 (11:04 +0000)]
Merge "Fix typo that escaped review in connector.py"

9 years agoAdd error handling to _connect function in PureISCSIDriver
Daniel Wilson [Wed, 17 Dec 2014 20:05:44 +0000 (12:05 -0800)]
Add error handling to _connect function in PureISCSIDriver

The driver was throwing an exception when trying to connect a volume
to a host when they were already connected.  This change catches the
exception and looks up the existing connection information to use as
a return value.

Change-Id: Id0e6b1d3c3cd1e51745e97f99eef88a15e285526
Closes-Bug:  1403631

9 years agoMerge "Fix HNAS driver initialization"
Jenkins [Fri, 19 Dec 2014 02:01:59 +0000 (02:01 +0000)]
Merge "Fix HNAS driver initialization"

9 years agoMerge "Isolate Cinder Attach and Connect in Base Driver"
Jenkins [Fri, 19 Dec 2014 00:44:56 +0000 (00:44 +0000)]
Merge "Isolate Cinder Attach and Connect in Base Driver"

9 years agoMerge "Remove redundant args for clone_image method"
Jenkins [Fri, 19 Dec 2014 00:02:07 +0000 (00:02 +0000)]
Merge "Remove redundant args for clone_image method"

9 years agoFix typo that escaped review in connector.py
Jay S. Bryant [Thu, 18 Dec 2014 23:16:16 +0000 (17:16 -0600)]
Fix typo that escaped review in connector.py

There was a typo (cann't) that escaped review of the
Huawei SDSHypervisor connector.  This patch fixes that
typo.

It also adds a period to one of the log messages to be
consistent with the rest of the messages.

Change-Id: Iddb6639ebdbb5facdf47800fc783330d674bff2f

9 years agoMerge "Add Oracle ZFSSA NFS Cinder Driver Support"
Jenkins [Thu, 18 Dec 2014 18:57:44 +0000 (18:57 +0000)]
Merge "Add Oracle ZFSSA NFS Cinder Driver Support"

9 years agoMerge "Logging updates to properly use ',' instead of '%'"
Jenkins [Thu, 18 Dec 2014 17:10:45 +0000 (17:10 +0000)]
Merge "Logging updates to properly use ',' instead of '%'"

9 years agoRemove redundant args for clone_image method
John Griffith [Thu, 18 Dec 2014 16:26:12 +0000 (09:26 -0700)]
Remove redundant args for clone_image method

The clone_image method takes both image_id and image_meta
as arguments.  No big deal, except the image id is included
in the image_meta; so there's really no reason to have both.

This patch removes the image_id argument and updates those
drivers that implement clone_image to extract the image ID
from the provided image_metadata.

Change-Id: Ibf3d3f7520f0e6d30081e98bdcbf1a07ebdb44ab

9 years agoAdd Oracle ZFSSA NFS Cinder Driver Support
kedar-vidvans [Tue, 9 Dec 2014 19:48:08 +0000 (14:48 -0500)]
Add Oracle ZFSSA NFS Cinder Driver Support

This change will add a new Oracle ZFSSA NFS Driver to Cinder.
This driver supports all minimum features required by a driver for the kilo release.
This driver uses the base nfs driver methods for creating and deleting volumes.

Certification test results: https://bugs.launchpad.net/cinder/+bug/1400406

Change-Id: Id61fe3319172c8ff19ed421ead618e583a8d9263
Implements: blueprint oracle-zfssa-nfs-cinder-driver

9 years agoFix HNAS driver initialization
Erlon R. Cruz [Thu, 27 Nov 2014 18:45:10 +0000 (16:45 -0200)]
Fix HNAS driver initialization

In iSCSI driver, when CHAP authentication is enabled, the driver would throw
an error message in the attempt to create the first volume after the driver
initialization. This is fixed by passing the right value to set_targetsecret.

Closes-Bug: #1402773
Change-Id: I554a67a2e19edb2e09c12febc339522719dfbe00

9 years agoMerge "Updated from global requirements"
Jenkins [Thu, 18 Dec 2014 11:42:48 +0000 (11:42 +0000)]
Merge "Updated from global requirements"

9 years agoMerge "Convert test_image_utils tests to mock"
Jenkins [Thu, 18 Dec 2014 10:52:51 +0000 (10:52 +0000)]
Merge "Convert test_image_utils tests to mock"

9 years agoMerge "Catch ImageNotFound exception when deleting rbd volume"
Jenkins [Thu, 18 Dec 2014 10:48:24 +0000 (10:48 +0000)]
Merge "Catch ImageNotFound exception when deleting rbd volume"

9 years agoMerge "Improve use of temporary_file and temporary_dir"
Jenkins [Thu, 18 Dec 2014 10:48:15 +0000 (10:48 +0000)]
Merge "Improve use of temporary_file and temporary_dir"

9 years agoMerge "Fixed wait for job completion in VMAX driver"
Jenkins [Thu, 18 Dec 2014 10:47:47 +0000 (10:47 +0000)]
Merge "Fixed wait for job completion in VMAX driver"

9 years agoMerge "Remove iscsi_helper calls from base iscsi driver"
Jenkins [Thu, 18 Dec 2014 09:47:49 +0000 (09:47 +0000)]
Merge "Remove iscsi_helper calls from base iscsi driver"

9 years agoMerge "Uncouple scheduler stats from volume creation"
Jenkins [Thu, 18 Dec 2014 09:46:20 +0000 (09:46 +0000)]
Merge "Uncouple scheduler stats from volume creation"

9 years agoMerge "Update global requirements"
Jenkins [Thu, 18 Dec 2014 04:22:26 +0000 (04:22 +0000)]
Merge "Update global requirements"

9 years agoMerge "Implement Huawei SDSHypervisor driver"
Jenkins [Thu, 18 Dec 2014 04:22:17 +0000 (04:22 +0000)]
Merge "Implement Huawei SDSHypervisor driver"

9 years agoMerge "Implement Huawei SDSHypervisor connector"
Jenkins [Thu, 18 Dec 2014 04:22:07 +0000 (04:22 +0000)]
Merge "Implement Huawei SDSHypervisor connector"

9 years agoMerge "Fibrechannel and iSCSI for Violin Memory 6000 Series Arrays"
Jenkins [Thu, 18 Dec 2014 04:19:58 +0000 (04:19 +0000)]
Merge "Fibrechannel and iSCSI for Violin Memory 6000 Series Arrays"

9 years agoMerge "Add Scality SRB driver"
Jenkins [Thu, 18 Dec 2014 04:19:53 +0000 (04:19 +0000)]
Merge "Add Scality SRB driver"

9 years agoMake GPFS driver compliant with logging standards
Jay S. Bryant [Wed, 26 Nov 2014 00:10:15 +0000 (18:10 -0600)]
Make GPFS driver compliant with logging standards

This patch adds the log level markers (_LI, _LE or _LW) where they
were missing.  It also changes the use of '%' to ',' for inserting
variables into log messages.  These changes are made based on the
guidelines in:
http://docs.openstack.org/developer/oslo.i18n/guidelines.html

Change-Id: I46dc4855776638a133a65451c7e32269dd09b8d1
Partial-Bug: 1384312

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Thu, 18 Dec 2014 01:21:15 +0000 (01:21 +0000)]
Updated from global requirements

Change-Id: I90b81f0c11fa7e7d0bb9a0e24dd9c9a4dd90de34

9 years agoFixed wait for job completion in VMAX driver
Xing Yang [Sun, 7 Dec 2014 19:57:27 +0000 (14:57 -0500)]
Fixed wait for job completion in VMAX driver

The VMAX driver used non-thread-safe variables in the wait for job
completion routines, resulting in failures or timeouts during concurrent
operations. This patch fixed the problem.

Closes-Bug: #1393568
Change-Id: I444b961a6543886da35fb44127b1cf7c509ce8d8

9 years agoLogging updates to properly use ',' instead of '%'
Jay S. Bryant [Tue, 2 Dec 2014 21:17:38 +0000 (15:17 -0600)]
Logging updates to properly use ',' instead of '%'

The i18n logging standards recommend using ',' for
the addition of variables to log strings.  This patch
implements that change for the ibmnas driver.

Change-Id: Ia3b79ffa1d9f812848d9b00837b0f92fb16619f5

9 years agoAdd support for Purity Protection Groups to PureISCSIDriver
Patrick East [Fri, 5 Dec 2014 18:18:46 +0000 (10:18 -0800)]
Add support for Purity Protection Groups to PureISCSIDriver

We will be needing access to the Protection Group features of Purity to
enable features like Replication and Consistency Groups. To do this we
need to add new helpers for the FlashArray object for the required REST
API methods.

DocImpact: To bring in pgroup support we will need to bump up the
required REST API version to 1.2+ and remove support for 1.0 and 1.1

Implements: blueprint pure-iscsi-add-pgroup-support
Change-Id: Ia446615e0c03b91fc1da75489855e77c29639efa

9 years agoCatch ImageNotFound exception when deleting rbd volume
Jordan Tardif [Mon, 15 Sep 2014 21:59:06 +0000 (17:59 -0400)]
Catch ImageNotFound exception when deleting rbd volume

When deleting a rbd volume it is possible for remove() to
throw a ImageNotFound exception. In this case we should
catch the exception, so the volume delete can continue.

Closes-Bug: 1403172
Change-Id: I32cf9d3774c129cda4449996ceeb4b43b7e42904

9 years agoIsolate Cinder Attach and Connect in Base Driver
John Griffith [Mon, 15 Dec 2014 22:59:12 +0000 (22:59 +0000)]
Isolate Cinder Attach and Connect in Base Driver

The base Cinder Driver combines the Attach process and the
actual Connect process all under the Attach method.  This makes
sense, but the method can be split between the parts that perform
things like DB updates and RPC calls and those that just take iqn
info and actually make connections to the Cinder Volume Node.

This would allow Drivers to utilize the connector portion of the
code to add enhancements of their own.

Change-Id: I9e3cd24dc978e7c7672bf1eb09626428d2ba144d

9 years agoUncouple scheduler stats from volume creation
Gary W. Smith [Mon, 15 Dec 2014 22:38:26 +0000 (14:38 -0800)]
Uncouple scheduler stats from volume creation

Capture and report scheduler stats independently from volume creation.
Without this scheduler stats were not reported until the first volume
creation and were subsequently only updated each time a volume was
created.

Change-Id: Ia1a809ba10e0595e6c255fde683f7c252377ac09
Fixes-bug: 1402790
Fixes-bug: 1402806

9 years agoFibrechannel and iSCSI for Violin Memory 6000 Series Arrays
Ryan Lucio [Sat, 6 Dec 2014 11:33:27 +0000 (03:33 -0800)]
Fibrechannel and iSCSI for Violin Memory 6000 Series Arrays

This patch adds both Fibrechannel and iSCSI driver support for Violin
Memory 6000 Series All-Flash Arrays.

Certification results posted at:
https://bugs.launchpad.net/cinder/+bug/1399911

Change-Id: I9f62fe79e892cff01abdb02dbd95be8e432f8ab7
Implements: blueprint violinmemory-v6000-storage-drivers

9 years agoAdd Scality SRB driver
David Pineau [Mon, 1 Dec 2014 11:21:35 +0000 (12:21 +0100)]
Add Scality SRB driver

This patch implements the `srb-driver` blueprint. It uses a similar
approach as Ceph's RBD in the way it exposes a block device to the
system.

The driver controls the SRB Linux kernel driver through a sysfs
interface and leverages LVM for snapshot management. The native block
driver talks to Scality's storage system (or any other vendor exposing
a compatible CDMI interface) through a HTTP-based RESTful protocol.

iSCSI export to Nova is provided.

Driver cert results are provided in bug #1400327.

Implements: blueprint srb-driver
See: https://blueprints.launchpad.net/cinder/+spec/srb-driver
Related-Bug: #1400327
See: https://bugs.launchpad.net/cinder/+bug/1400327
Co-Authored-By: Nicolas Trangez <ikke@nicolast.be>
Co-Authored-By: JordanP <jordan.pittier@scality.com>
Change-Id: Id8d00df9db4004d5aeb8c0269d114ef50e0b8f8e

9 years agoUpdate volume driver for Huawei storage system
Bob-OpenStack [Mon, 24 Nov 2014 02:11:22 +0000 (18:11 -0800)]
Update volume driver for Huawei storage system

This driver is similar to the previous one, but contains
the following differences:
1. Remove smart tier support because that our product does not
   support smart tier any more. 18000 does not support smart
   tier, so this has no problem with 18000 series.
2. Update qos support implementation.
3. Add synchronization because that our tests show that when we
   create volumes or snapshots in batch in a shell script with cli
   command, our array may occur error.
Certification test result for Huawei storage drivers:
https://bugs.launchpad.net/cinder/+bug/1399038

Implements: blueprint huawei-storage-drivers
Change-Id: I69c32ef3225c23881be522eac451b8855805e35d

9 years agoImplement Huawei SDSHypervisor driver
zhangni [Fri, 5 Dec 2014 02:57:45 +0000 (10:57 +0800)]
Implement Huawei SDSHypervisor driver

It uses socket and CLI to communicate with SDSHypervisor
to perform the following:
* Create/Delete Volume
* Extend Volume
* Create/Delete Snapshot
* Create Volume from Snapshot
* Delete Volume Snapshot
* Attach/Detach Volume
* Get Volume Stats
* Clone Volume

Certification test result for Huawei SDSHypervisor:
https://bugs.launchpad.net/cinder/+bug/1368064

Implements: blueprint huawei-sdshypervisor-driver
Change-Id: Ied72c5568875eae2387cf6271f31ddc5eebcc4bb

9 years agoMerge "Fix HNAS driver confusing error message"
Jenkins [Wed, 17 Dec 2014 08:45:10 +0000 (08:45 +0000)]
Merge "Fix HNAS driver confusing error message"

9 years agoMerge "Added volume type description for volume type API"
Jenkins [Wed, 17 Dec 2014 07:59:57 +0000 (07:59 +0000)]
Merge "Added volume type description for volume type API"

9 years agoMerge "Correct default service_name for nova_catalog*_info config option"
Jenkins [Wed, 17 Dec 2014 07:08:59 +0000 (07:08 +0000)]
Merge "Correct default service_name for nova_catalog*_info config option"

9 years agoMerge "Fix 3PAR driver hang on SSH calls"
Jenkins [Wed, 17 Dec 2014 07:02:11 +0000 (07:02 +0000)]
Merge "Fix 3PAR driver hang on SSH calls"

9 years agoMerge "ZFSSA iSCSI driver should support extra specs"
Jenkins [Wed, 17 Dec 2014 04:43:33 +0000 (04:43 +0000)]
Merge "ZFSSA iSCSI driver should support extra specs"

9 years agoImplement Huawei SDSHypervisor connector
zhangni [Thu, 4 Dec 2014 08:38:18 +0000 (16:38 +0800)]
Implement Huawei SDSHypervisor connector

Huawei SDSHypervisor uses a private key-value data protocal,
so we add a new connector inherited from InitiatorConnector
and implement connect_volume and disconnect_volume.

The connector uses sds_cli cmd to implement attach/detach/querydev vol,
sds_cli will be put to a specific dir and the path is registered as a
system environment variable when sds is installed.

Change-Id: I4fa3306df982347afb5fb8e5d4d14612024b643a
Implements: blueprint huawei-sdshypervisor-driver

9 years agoAdded volume type description for volume type API
Gloria Gu [Fri, 5 Dec 2014 01:59:10 +0000 (17:59 -0800)]
Added volume type description for volume type API

- Added the following APIs and tests for volume type
* update volume type
PUT http://<openstackhost>:8776/v2/${tenant_id}/types/${vol_type_id}
body
{
    "volume_type": {
      "description":"updated_desc"
    }
}
** user can update description.
** if update description, descripiton can be empty spaces.
** description can not be None
** only admin can access this API

*get default volume type
GET http://<openstackhost>:8776/v2/${tenant_id}/types/default
** if default_volume_type is specified in cinder.conf and is valid,
the default volume type will be returned.
** if default_volume_type is not specified in cinder.conf or is not
valid, it will return 404 with a message saying default volume type
can not be found.

- Updated the following APIs and tests for volume type
* create volume type should take description as an option.
* list volume types or get one volume type will include description for
volume type if the description is not None.

- Upgraded the database cinder on table volume_types to include
the description. database upgrade/downgrade scripts and tests
are added.

- update API should send a notification to the message bus when
updating succeeds or fails.

- as of 12/5/2014, had to rebase with master which has volume type
access change, I also fixed the tests in that area in order to get
the unit tests pass.

Implements: blueprint volume-type-description
Change-Id: I3100a8f74fa1c0cc8d9293bf30e17b6ac4c72edb

9 years agoMerge "Delete default volume size 100M in drivers"
Jenkins [Wed, 17 Dec 2014 02:13:23 +0000 (02:13 +0000)]
Merge "Delete default volume size 100M in drivers"

9 years agoMerge "Added UUID as primary key for Encryption model"
Jenkins [Wed, 17 Dec 2014 02:10:55 +0000 (02:10 +0000)]
Merge "Added UUID as primary key for Encryption model"

9 years agoMerge "Add the StorPool block storage driver."
Jenkins [Tue, 16 Dec 2014 22:45:40 +0000 (22:45 +0000)]
Merge "Add the StorPool block storage driver."

9 years agoMerge "Symantec NFS cinder driver"
Jenkins [Tue, 16 Dec 2014 22:40:24 +0000 (22:40 +0000)]
Merge "Symantec NFS cinder driver"

9 years agoMerge "Remove commented out code from cinder/test.py"
Jenkins [Tue, 16 Dec 2014 22:11:50 +0000 (22:11 +0000)]
Merge "Remove commented out code from cinder/test.py"

9 years agoMerge "Add Support for Dell Storage Center"
Jenkins [Tue, 16 Dec 2014 22:06:21 +0000 (22:06 +0000)]
Merge "Add Support for Dell Storage Center"

9 years agoAdded UUID as primary key for Encryption model
Ivan Kolodyazhny [Thu, 4 Sep 2014 10:24:12 +0000 (13:24 +0300)]
Added UUID as primary key for Encryption model

volume_type_id could not be used as PK because
soft deletes are using for Encryption

Change-Id: I5c4423da4442f2458417dc3492750412a74ebe09
Closes-Bug: #1316540

9 years agoMerge "Send the notifications to the Ceilometer for backup service"
Jenkins [Tue, 16 Dec 2014 21:03:12 +0000 (21:03 +0000)]
Merge "Send the notifications to the Ceilometer for backup service"

9 years agoMerge "DB migration tests"
Jenkins [Tue, 16 Dec 2014 19:55:54 +0000 (19:55 +0000)]
Merge "DB migration tests"

9 years agoMerge "Ensure that lun_id is an int for NetApp Drivers"
Jenkins [Tue, 16 Dec 2014 19:15:13 +0000 (19:15 +0000)]
Merge "Ensure that lun_id is an int for NetApp Drivers"

9 years agoMerge "First version of Cinder driver for Quobyte USP"
Jenkins [Tue, 16 Dec 2014 18:57:46 +0000 (18:57 +0000)]
Merge "First version of Cinder driver for Quobyte USP"

9 years agoMerge "RemoteFS: Move Nova snapshot code into RemoteFSSnapDriver"
Jenkins [Tue, 16 Dec 2014 18:52:08 +0000 (18:52 +0000)]
Merge "RemoteFS: Move Nova snapshot code into RemoteFSSnapDriver"

9 years agoFix 3PAR driver hang on SSH calls
Kurt Martin [Mon, 15 Dec 2014 23:14:42 +0000 (15:14 -0800)]
Fix 3PAR driver hang on SSH calls

In removing the 3PAR driver local file locks, part of the fix included
making a new SSH connection for each call in the hp3parclient as
oppose to leaving a connection open. Older hp3parclients(3.1.1 and
later) will result in the SSH calls hanging at driver initilization time.

This patch will now check against the correct minimum hp3parclient version
and remove the need for checking of the SSH args version since the minimum
hp3parclient is now greater than 3.1.1
Closes-Bug: #1402115

Change-Id: Ic162a1a469e85fa36501d4de245fe16738d3aefa

9 years agoDelete default volume size 100M in drivers
Anton Arefiev [Mon, 15 Dec 2014 10:33:38 +0000 (12:33 +0200)]
Delete default volume size 100M in drivers

There is check: if volume size == 0 we set default value to 100M,
it uses only in tests and it's little bit confusing.Use code only
for tests in drivers is bad practice.

Also the create volume flow already won't let user to create
a volume  with size 0. So it was decided to remove this check.

Change-Id: I620ae8fff4634c60a02329f22d1a0343b27aa955

9 years agoSend the notifications to the Ceilometer for backup service
Vincent Hou [Thu, 3 Jul 2014 03:32:11 +0000 (23:32 -0400)]
Send the notifications to the Ceilometer for backup service

* Add the notification send-out for create_backup, delete_backup
  and restore_backup.
* Add the progress notification to Swift backup service.

DocImpact

Change-Id: I9835073a39aa8b2ffbec12d84147cce027ff731b
implements-bp: backup-notification

9 years agoAdd the StorPool block storage driver.
Peter Pentchev [Wed, 3 Dec 2014 12:49:23 +0000 (14:49 +0200)]
Add the StorPool block storage driver.

StorPool is distributed data storage software running on standard x86
servers.  StorPool aggregates the performance and capacity of all drives
into a shared pool of storage distributed among the servers.  Within
this storage pool the user creates thin-provisioned volumes that are
exposed to the clients as block devices.  StorPool consists of two parts
wrapped in one package - a server and a client.  The StorPool server
allows a hypervisor to act as a storage node, while the StorPool client
allows a hypervisor node to access the storage pool and act as a compute
node.  In OpenStack terms the StorPool solution allows each hypervisor
node to be both a storage and a compute node simultaneously.

To make full use of StorPool's native network communication protocol,
the Nova compute nodes will need to use the StorPool libvirt volume
attachment driver, nova.virt.libvirt.storpool.LibvirtStorPoolVolumeDriver.

DocImpact
Change-Id: I64adbca724a52771b68e4838749f8896e6e56019
Implements: blueprint storpool-block-driver

9 years agoUpdate global requirements
John Griffith [Mon, 15 Dec 2014 21:40:03 +0000 (14:40 -0700)]
Update global requirements

Manual push to sync global req.  Just need the setuptools
pin, further detail here: http://goo.gl/c9RmSE

Change-Id: I75e7c8829153e10b81d2ce5dbfca84fdde14a3ff

9 years agoRemove commented out code from cinder/test.py
Jay S. Bryant [Mon, 15 Dec 2014 21:10:51 +0000 (15:10 -0600)]
Remove commented out code from cinder/test.py

There was a line of code left from previous development that
was left commented out.  This change removes the unnecessary
line of code.

Change-Id: I8a78e051e946f4cad7ec4b26d1a590a7e97cb613

9 years agoFix HNAS driver confusing error message
Erlon R. Cruz [Thu, 11 Dec 2014 10:46:31 +0000 (08:46 -0200)]
Fix HNAS driver confusing error message

The error message shown when the parser finds a parser error
says, 'file not found' which causes confusion on the user when
he/she needs to debug the real cause o the problem. This patch fix
this by testing first if the file exist and then throwing a
proper error message.

Closes-Bug: #1402775
Change-Id: I91c7a24d5da37735787e8fc0da544c8ba8204884

9 years agoRemove iscsi_helper calls from base iscsi driver
John Griffith [Sun, 14 Dec 2014 19:02:30 +0000 (12:02 -0700)]
Remove iscsi_helper calls from base iscsi driver

There are a number of drivers that inherit from the base
iscsi driver, using the base implementation of initialize_connection
and terminate_connection.  These drivers also don't have iscsi_helper
defined.

We've kept all iscsi_helper specific code in the tgt helpers
themselves, or in the various versions of the LVM driver
which is where they belong.

Over time however there have been some iscsi_helper specific
calls that have crept in to the base volume.driver:ISCSIDriver
class.  These were LIO specific calls and as a result when a
configuration is set with multi-backend to use lioadm as the
target helper, or even if it's not used but the default iscsi_helper
is set to lioadm the initialize_connection and terminate_connection
calls will try and access the LIO specific calls and raise because
the drivers inheriting from this class don't have target_helper
members.

This went unnoticed mostly because there's no significant LIO testing
in place and there were no distros setting LIO as the default iscsi_helper,
it appears that this has changed however.

This patch moves the LIO specific calls back where they belong
and keeps the base ISCSIDriver generic.  I've also added a test
case for this in the SolidFire driver because it's impacted by
this.

Change-Id: Ibe010b62bb2518685753dd515326e56ffcc99cea
Closes-Bug: #1400804

9 years agoAdd unit test for commit 22abe9081
Matt Riedemann [Mon, 15 Dec 2014 19:23:42 +0000 (11:23 -0800)]
Add unit test for commit 22abe9081

Commit 22abe9081 fixed a bug in commit d7bd65e8e which we could have
found the first time with a simple unit test.

This change adds the unit test to cover that new error handling block.

Related-Bug: #1398078

Change-Id: I86d2fd477f3ae5590c5f079a4c806d1f50eb96d0

9 years agoMerge "Convert mox to mock: tests/compute/test_nova.py"
Jenkins [Mon, 15 Dec 2014 18:18:30 +0000 (18:18 +0000)]
Merge "Convert mox to mock: tests/compute/test_nova.py"

9 years agoAdd Support for Dell Storage Center
Tom Swanson [Wed, 3 Dec 2014 19:24:39 +0000 (13:24 -0600)]
Add Support for Dell Storage Center

This driver implements cinder FC and iSCSI volume drivers.
The file dell_storagecenter_api.py is called to interface with the
Dell Storage Center backend via a REST interface.
Dell_storagecenter_common.py is the base class implementation with
dell_storagecenter_fc.py and dell_storagecenter_iscsi.py being providing
fc and iscsi specific support respectivly.

https://bugs.launchpad.net/cinder/+bug/1398951

Implements: blueprint dell-storage-center-block-storage-driver
Change-Id: Ic483e54b40349ede20e078c6406f5bab8d7d7cc2

9 years agoEnsure that lun_id is an int for NetApp Drivers
Rushil Chugh [Tue, 18 Nov 2014 19:37:17 +0000 (14:37 -0500)]
Ensure that lun_id is an int for NetApp Drivers

Various NetApp drivers were treating the lun_id as a string
rather than an int.  This was causing attempts to mount NetApp
volumes to Hyper-V nodes to fail as they were checking an integer
type against a unicode type which would fail.

This change casts result_lun to an integer after the value has
gone through the ssh injection attack check.  This way Hyper-V
is able to verify if the found LUN is the target LUN, enabling
mounting of NetApp volumes to Hyper-V.

This change also refactors initialize_connection into some helper
methods so as to enable simpler unit testing of the patchset.

Closes-bug: 1372808

Change-Id: I308b3b2dff315ec33451fb45a30ecd53d5d4c353

9 years agoSymantec NFS cinder driver
sarat inuguri [Sun, 10 Aug 2014 19:56:38 +0000 (12:56 -0700)]
Symantec NFS cinder driver

Changes to support Symantec Storage Foundation Clustered File
System High Availability via NFS Cinder driver.

cert results at:
https://bugs.launchpad.net/cinder/+bug/1402147

implements: blueprint symantec-nfs-cinder-driver
Change-Id: Ie4b4785b7c93246147c8d9e6a172621f454301ae

9 years agoDB migration tests
Ivan Kolodyazhny [Wed, 29 Oct 2014 13:52:54 +0000 (15:52 +0200)]
DB migration tests

Refactored migration tests to use OpportunisticTestCase, removed
unused code and ``test_migrations.conf`` file.

The main feature of this approach is to create a new database with
random name for each migration test.  This will avoid migration tests of
race conditions and reduce tests intersection. After this change, database
``openstack_citest`` will be used only for initial connection to the database.

``test_migrations.conf`` file not required anymore, because we create test
database for migration test, so we no longer need to keep database credentials.

Implements blueprint: db-migration-tests
Related-bug: #1266595
Change-Id: I4febd485ff53936b636947c86773a23724e24c65

9 years agoConvert mox to mock: tests/compute/test_nova.py
Bala Gopal Raj [Fri, 12 Dec 2014 09:30:43 +0000 (04:30 -0500)]
Convert mox to mock: tests/compute/test_nova.py

Replace mox testing library by mock in the file
cinder/tests/compute/test_nova.py

Implements: blueprint mox-to-mock-conversion
Change-Id: Ic819afb4391708a0afebe4fc2855c93e3cb3f4c4

9 years agoCorrect default service_name for nova_catalog*_info config option
Trung Trinh [Mon, 15 Dec 2014 06:23:34 +0000 (20:23 +1400)]
Correct default service_name for nova_catalog*_info config option

The default service_name in config option (nova_catalog_info and
nova_catalog_admin_info) was mistakenly put as 'nova'. Consequently,
it is impossible to invoke novaclient APIs from Cinder code without
changing the default value of those config options.

The correct service_name defined in Keystone's config file
"/etc/keystone/default_catalog.templates" is:
catalog.RegionOne.compute.name = Compute Service.

This change replaces 'nova' with 'Compute Service' for default value
of 'nova_catalog*_info' config options.

Change-Id: Idee3585a08efa1d6af1f4ee2b74e8cefb05cc54f
Closes-Bug: 1401800