]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
11 years agoSet vg_thin_pool to pool name instead of pool_path
Flaper Fesp [Tue, 3 Sep 2013 16:26:42 +0000 (18:26 +0200)]
Set vg_thin_pool to pool name instead of pool_path

create_thin_pool is setting vg_thin_pool to the pool path instead of the
pool_name. This makes volumes creation fail when the create_thin_pool
method is called. This happens because create_volume builds the pool
path itself as create_thin_pool does.

Keeping the pool name in vg_thin_pool instead of the path makes more
sense and allows it to be used in other places in the brick. Also, most
commands return both vg_name and pool_name separated.

Change-Id: Ibf5cd746fc050eab5ce6aff13dd70c1e8066b228
Closes-Bug: #1220286

11 years agoMerge "Add Fibre Channel drivers for Huawei storage systems"
Jenkins [Tue, 3 Sep 2013 09:29:41 +0000 (09:29 +0000)]
Merge "Add Fibre Channel drivers for Huawei storage systems"

11 years agoMerge "Don't need to init testr explicitly"
Jenkins [Tue, 3 Sep 2013 09:26:17 +0000 (09:26 +0000)]
Merge "Don't need to init testr explicitly"

11 years agoMerge "Refactor huawei Dorado array iSCSI driver"
Jenkins [Tue, 3 Sep 2013 06:57:21 +0000 (06:57 +0000)]
Merge "Refactor huawei Dorado array iSCSI driver"

11 years agoMerge "Refactor Huawei iSCSI driver"
Jenkins [Tue, 3 Sep 2013 05:48:06 +0000 (05:48 +0000)]
Merge "Refactor Huawei iSCSI driver"

11 years agoAdd Fibre Channel drivers for Huawei storage systems
zhangchao010 [Sat, 31 Aug 2013 02:24:43 +0000 (10:24 +0800)]
Add Fibre Channel drivers for Huawei storage systems

This is the third patch, changes as follows:
1.Add Fibre Channel drivers for huawei OceanStor T series and Dorado
series arrays. Dorado FC driver inherits codes from FC driver of T.
The FC drivers call module ssh_common which has been defined in
the preview patch: https://review.openstack.org/#/c/41721/
2.Add unit test for the changes.

Implements: blueprint huawei-fibre-channel-volume-driver
Change-Id: Iee20d9746004b57777a7161827b4a23cb10f0859

11 years agoRefactor huawei Dorado array iSCSI driver
zhangchao010 [Sat, 31 Aug 2013 02:23:35 +0000 (10:23 +0800)]
Refactor huawei Dorado array iSCSI driver

This is the second patch, changes as follows:
1.Add ISCSIDriver for Dorado arrays. The ISCSIDriver inherit from T.
1.Add a common class DoradoCommon for both FC and iSCSI drivers. The common class
inherit from T common for they have many common functions.
2.Add unit test for Dorado drivers.

Change-Id: I7ff2cc1e0d058b7a3d9e55644769ec74075f962f

11 years agoRefactor Huawei iSCSI driver
zhangchao010 [Thu, 29 Aug 2013 02:33:52 +0000 (10:33 +0800)]
Refactor Huawei iSCSI driver

We plan to refactor Huawei iSCSI drivers and add Huawei FC
drivers. For that's a huge change, we break the codes into
three patches:
1.Refactor T iSCSI driver
2.Refactor Dorado iSCSI driver
3.Add FC drivers for both T and Dorado arrays.

This is the first patch, changes as follows:
1.Define a common class for both FC and iSCSI drivers, and
also provide a unified class HuaweiVolumeDriver for users.
The unified driver will call HuaweiTISCSIDriver according to
users' configuration. The HuaweiTISCSIDriver is a subclass of
driver.ISCSIDriver, so it could get good inheritance.
2.Support volume type.
3.Refactor unit test to make it more logic clear and add more
test cases to get higher coverage rate.

Change-Id: I79b7bac7f38f2dcbb22c5db6207d8b55906fdad1

11 years agoEnable gating on F811
Dirk Mueller [Tue, 27 Aug 2013 20:43:38 +0000 (22:43 +0200)]
Enable gating on F811

Avoid name clashes of local variables with
imported modules.

Change-Id: I1c5508902f89ad5dd9d160a4d163cd91bec41333

11 years agoMerge "Pass db into driver as constructor's parameter"
Jenkins [Mon, 2 Sep 2013 13:35:02 +0000 (13:35 +0000)]
Merge "Pass db into driver as constructor's parameter"

11 years agoMerge "Utilizes assertIn and assertNotIn"
Jenkins [Mon, 2 Sep 2013 11:58:13 +0000 (11:58 +0000)]
Merge "Utilizes assertIn and assertNotIn"

11 years agoMerge "copy_image_to_volume for Nexenta volume driver"
Jenkins [Mon, 2 Sep 2013 11:25:03 +0000 (11:25 +0000)]
Merge "copy_image_to_volume for Nexenta volume driver"

11 years agoMerge "Sync rpc fix from oslo-incubator"
Jenkins [Mon, 2 Sep 2013 07:36:34 +0000 (07:36 +0000)]
Merge "Sync rpc fix from oslo-incubator"

11 years agoMerge "Fixes bug to allow for encrypted volume deletion"
Jenkins [Sun, 1 Sep 2013 14:06:39 +0000 (14:06 +0000)]
Merge "Fixes bug to allow for encrypted volume deletion"

11 years agoMerge "Remove _create_volume function from several tests"
Jenkins [Sun, 1 Sep 2013 14:06:37 +0000 (14:06 +0000)]
Merge "Remove _create_volume function from several tests"

11 years agoMerge "Increase test coverage for cinder.image.image_utils"
Jenkins [Sun, 1 Sep 2013 14:06:35 +0000 (14:06 +0000)]
Merge "Increase test coverage for cinder.image.image_utils"

11 years agoMerge "Add support for Havana missing features in Windows driver"
Jenkins [Sun, 1 Sep 2013 14:05:40 +0000 (14:05 +0000)]
Merge "Add support for Havana missing features in Windows driver"

11 years agoMerge "Fix pep8 violation in backup"
Jenkins [Sun, 1 Sep 2013 08:39:49 +0000 (08:39 +0000)]
Merge "Fix pep8 violation in backup"

11 years agoMerge "Clone volume with right size with SolidFire"
Jenkins [Sun, 1 Sep 2013 07:14:14 +0000 (07:14 +0000)]
Merge "Clone volume with right size with SolidFire"

11 years agoAdd support for Havana missing features in Windows driver
Pedro Navarro Perez [Mon, 26 Aug 2013 11:09:41 +0000 (13:09 +0200)]
Add support for Havana missing features in Windows driver

The following features were added:

-copy_volume_to_image (Havana)
-copy_image_to_volume (Havana)
-get_volume_stats (Havana)
-extend_volume (Icehouse)

The test mocking based on binary pickled files were replaced by mox.

Change-Id: I92c681280d6f7b85bcba7a5e3513f2bdb6c13f1d
Implements: blueprint windows-storage-driver-extended

11 years agoMerge "Add venv wrapper for check_uptodate.sh"
Jenkins [Sat, 31 Aug 2013 23:02:16 +0000 (23:02 +0000)]
Merge "Add venv wrapper for check_uptodate.sh"

11 years agoAdd venv wrapper for check_uptodate.sh
Kui Shi [Sat, 31 Aug 2013 11:24:38 +0000 (19:24 +0800)]
Add venv wrapper for check_uptodate.sh

tools/conf/check_uptodate.sh is added in run_tests.sh

For simple, run "run_tests.sh -p" will call it, and get following error:

Failed to collect options from module
cinder.volume.drivers.san.hp.hp_3par_common: No module named hp3parclient

Actually, the hp3parclient is listed in test-requirements.txt, and it is
installed in venv.

the check_uptodate.sh should run in venv to get correct result.

update the error message to update the cindier.conf.sample correctly.

-----------
Test method
-----------
$ pwd
/opt/stack/cinder

$ source .venv/bin/activate; tools/conf/generate_sample.sh

(.venv)$ deactivate

$ ./run_tests.sh  -p
Running flake8 ...
// no error emitted here

Fixes Bug #1219197

Change-Id: I9b3eaf3c1a5eb395eefed28bb907685cdef147aa

11 years agoClone volume with right size with SolidFire
Mathieu Gagné [Sat, 31 Aug 2013 01:59:59 +0000 (21:59 -0400)]
Clone volume with right size with SolidFire

It is possible to clone a volume with a size greater than
the source volume. When using the SolidFire driver, the volume size
was not passed in the call made to the SolidFire API when
cloning a volume.

It resulted in a cloned volume having the same size as the source
volume but the correct size in the Cinder database.

This changes makes sure the cloned volume has the correct size
by explicitly passing the requested size when calling
the SolidFire API and cloning the volume.

Fixes: bug #1219105
Change-Id: I5628c7fa922780d6b0601e2daa79310a61085edc

11 years agoFixes bug to allow for encrypted volume deletion
Kaitlin Farr [Fri, 30 Aug 2013 19:38:38 +0000 (15:38 -0400)]
Fixes bug to allow for encrypted volume deletion

delete_key in cinder/volume/api.py was called with incorrect parameters.
The error prevented encrypted volumes from being deleted, but the fix
has been applied and unittests written to prove the functionality.

Change-Id: I3b93da84f97efe2a3afa057907bbfa10336eb9de
Implements: blueprint encrypt-cinder-volumes

11 years agoSync rpc fix from oslo-incubator
Russell Bryant [Fri, 30 Aug 2013 19:36:36 +0000 (15:36 -0400)]
Sync rpc fix from oslo-incubator

Sync the following fix from oslo-incubator:

76972e2 Support a new qpid topology

This includes one other commit, so that the above fix could be brought
over cleanly:

5ff534d Add config for amqp durable/auto_delete queues

Change-Id: I1fd5aaf87ec87836df3e44e83247bf82301475f5
Closes-bug: #1178375

11 years agoMove comment back to right place
Zhiteng Huang [Fri, 30 Aug 2013 18:59:47 +0000 (02:59 +0800)]
Move comment back to right place

The comment about skipping schedule for create volume from snapshot
in cast_create_volume() was mis-placed when this code was ported to
taskflow.  This patch moves the comment back to where it belongs.

Change-Id: I329c78a05143bf8589d9665dc4ff03fa80da6ec9

11 years agocopy_image_to_volume for Nexenta volume driver
Victor Rodionov [Fri, 23 Aug 2013 21:59:27 +0000 (01:59 +0400)]
copy_image_to_volume for Nexenta volume driver

This patch implements copy_image_to_volume in Nexenta volume
driver, because volume must be exported before copying image
to it.

Change-Id: I9dc725095944d166fee415f3f605268c7fcbbd3a

11 years agoFix pep8 violation in backup
Victor Rodionov [Tue, 27 Aug 2013 21:50:55 +0000 (01:50 +0400)]
Fix pep8 violation in backup

Change-Id: I0bbc7923c3bea9b918c243d2c7b59510fd26deb5

11 years agoUtilizes assertIn and assertNotIn
Zhongyue Luo [Fri, 30 Aug 2013 05:33:22 +0000 (13:33 +0800)]
Utilizes assertIn and assertNotIn

Using assertTrue and the 'in' operator to test if an element is in a sequence
is too python2.4. Our unit testing framework 'testtools' support assertIn and
assertNotIn, included from python 2.7, which were created for these types of
tests. Let's use assertIn or assertNotIn for these tests.

Change-Id: I8b43f7ff5f306e1ce57296d89679333ce24e4b64

11 years agoMerge "Implements APIs for VMDK driver"
Jenkins [Fri, 30 Aug 2013 12:39:35 +0000 (12:39 +0000)]
Merge "Implements APIs for VMDK driver"

11 years agoMerge "Add missing LH SAN driver features for Havana"
Jenkins [Fri, 30 Aug 2013 10:58:05 +0000 (10:58 +0000)]
Merge "Add missing LH SAN driver features for Havana"

11 years agoImplements APIs for VMDK driver
Kartik Bommepally [Tue, 13 Aug 2013 04:42:59 +0000 (21:42 -0700)]
Implements APIs for VMDK driver

- Implemented APIs: create_volume, delete_volume, initialize_connection,
  create_snapthot, delete_snapshot, create_volume_from_snapshot,
  create_cloned_volume
- Modified etc/cinder/cinder.conf.sample adding details for the driver
- Added suds dependency in requirements.txt
- create_volume: does no work. Volume's backing is created lazily
- delete_volume: delete backing if present
- initialize_connection: if backing, not present, create backing, else
  provide backing details to nova to perform attach
  Nova BP/vmware-nova-cinder-support
- create_snapshot: Creates the snapshot of the backing
- delete_snapshot: Deletes the snapshot of the backing
- create_volume_from_snapshot: Creates a full/linked clone from the snapshot
  point in VC. In ESX, copies the VM backing files, registers and reverts to
  the appropriate snapshot point.
- create_cloned_volume: Creates a full/linked clone in VC. In ESX, copies the
  VM backing files and registers as a new backing.
- Written appropriate unit tests
- Work item in BP/vmware-vmdk-cinder-driver

Implements: blueprint vmware-vmdk-cinder-driver
Change-Id: Ib11f2878f8f656209d1ba5e2cbfadae1ac1999b4

11 years agoRemove _create_volume function from several tests
Julia Varlamova [Thu, 29 Aug 2013 07:56:17 +0000 (11:56 +0400)]
Remove _create_volume function from several tests

Remove _create_volume function from
- db/test_transfers.py
- api/contrib/test_backups.py
- test_gpfs.py
- test_volume_transfer.py
- test_volume.py
And use create_volume from tests/utils.py instead

Change-Id: I446220d0cfaa2850a5262a968ed35b7827b90a03

11 years agoDon't need to init testr explicitly
Kui Shi [Fri, 30 Aug 2013 07:18:10 +0000 (15:18 +0800)]
Don't need to init testr explicitly

In run_tests.sh, function init_testr will initialize testr if the
directory .testrepository is not existed. Actually, testr will do
the check before run the test:

In Python package testrepository, setuptools_command.py:Testr.run

68 def run(self):
69     """Set up testr repo, then run testr"""
70     if not os.path.isdir(".testrepository"):
71         self._run_testr("init")

So, init_testr can be removed safely.

Fixes Bug #1216820
Change-Id: Id9815033c0cb0e1aa6693a4c14bf9a5d490c8883

11 years agoMerge "Fix typo in bin/cinder-volume-usage-audit"
Jenkins [Fri, 30 Aug 2013 02:19:45 +0000 (02:19 +0000)]
Merge "Fix typo in bin/cinder-volume-usage-audit"

11 years agoMerge "Update the version for the FC and iSCSI driver"
Jenkins [Fri, 30 Aug 2013 01:18:35 +0000 (01:18 +0000)]
Merge "Update the version for the FC and iSCSI driver"

11 years agoMerge "Add kwargs to create_volume in tests/utils.py"
Jenkins [Fri, 30 Aug 2013 00:51:30 +0000 (00:51 +0000)]
Merge "Add kwargs to create_volume in tests/utils.py"

11 years agoMerge "Add NFS/GlusterFS support to brick library"
Jenkins [Fri, 30 Aug 2013 00:51:23 +0000 (00:51 +0000)]
Merge "Add NFS/GlusterFS support to brick library"

11 years agoMerge "Remove unused methods from cinder.utils"
Jenkins [Fri, 30 Aug 2013 00:42:50 +0000 (00:42 +0000)]
Merge "Remove unused methods from cinder.utils"

11 years agoMerge "Multi storage backend support for Nexenta driver"
Jenkins [Fri, 30 Aug 2013 00:40:59 +0000 (00:40 +0000)]
Merge "Multi storage backend support for Nexenta driver"

11 years agoAdd missing LH SAN driver features for Havana
Kurt Martin [Wed, 28 Aug 2013 21:08:49 +0000 (14:08 -0700)]
Add missing LH SAN driver features for Havana

The LeftHand driver did not support snapshot or extend volume.
The following features are part of the minimum driver features
that should be implemented in every cinder driver. This patch
adds the following missing features;
create snapshot
delete snapshot
create volume from snapshot
extend volume
It also fixes the DocStrings in the unit test so they pass the
checks.

Change-Id: Icda790fcddf4ea11782a8d6ec57b1e8f871eb167
Fixes: bug 1217118
11 years agoMulti storage backend support for Nexenta driver
Victor Rodionov [Fri, 23 Aug 2013 18:25:36 +0000 (22:25 +0400)]
Multi storage backend support for Nexenta driver

Recover nexenta prefix for host, user, password and iscsi_port
config options.

Change-Id: I8bdc54f391145193b7813e0e411afa39d07d9aad

11 years agoFix typo in bin/cinder-volume-usage-audit
scott-dangelo [Thu, 29 Aug 2013 15:36:55 +0000 (15:36 +0000)]
Fix typo in bin/cinder-volume-usage-audit

Fixes bug #1218383

Change-Id: Ie1545736aee43805e8e3f8c3b9b7d5b3a7f36a67

11 years agoRemove unused methods from cinder.utils
Vladislav Kuzmin [Thu, 29 Aug 2013 12:15:29 +0000 (16:15 +0400)]
Remove unused methods from cinder.utils

These methods and class  were left over from the split from Nova and are unused still.

Remove methods:
debug()
utf8()
map_dict_keys()
check_isinstance()
timefunc()
logging_error()
temporary_mutation()
generate_mac_address()

Remove class:
UndoManager

Change-Id: Id3a94ff9066627b5c0efef068f8c569423f1e9d8

11 years agoMerge "Adding Read-Only volume attaching support to Cinder"
Jenkins [Thu, 29 Aug 2013 12:36:55 +0000 (12:36 +0000)]
Merge "Adding Read-Only volume attaching support to Cinder"

11 years agoIncrease test coverage for cinder.image.image_utils
Vladislav Kuzmin [Fri, 23 Aug 2013 12:30:36 +0000 (16:30 +0400)]
Increase test coverage for cinder.image.image_utils

Add new tests for:
convert_image()
qemu_img_info()
fetch_to_raw()
fetch_verify_image()
upload_volume()

Change-Id: Ie69af94433b4c61a493d6c38b4c9439a367f7af8

11 years agoMerge "Pass MB size on copy_volume_data call copy_volume"
Jenkins [Thu, 29 Aug 2013 10:17:15 +0000 (10:17 +0000)]
Merge "Pass MB size on copy_volume_data call copy_volume"

11 years agoAdd kwargs to create_volume in tests/utils.py
Julia Varlamova [Thu, 29 Aug 2013 07:41:34 +0000 (11:41 +0400)]
Add kwargs to create_volume in tests/utils.py

Add availability_zone parameter and kwargs to make create_volume
function more flexible in order to use this function in
unit tests.
The goal is to remove inner _create_volume function in:
- db/test_transfers.py
- api/contrib/test_backups.py
- test_gpfs.py
- test_volume_transfer.py
- test_volume.py
and to use create_volume from tests/utils instead.

Change-Id: I2d9456ff3ff1cd945042f19c47e40f9f0ec0fe8a

11 years agoMerge "Move create_volume flow to a subfolder"
Jenkins [Thu, 29 Aug 2013 01:44:51 +0000 (01:44 +0000)]
Merge "Move create_volume flow to a subfolder"

11 years agoUpdate the version for the FC and iSCSI driver
Walter A. Boring IV [Wed, 28 Aug 2013 23:05:46 +0000 (16:05 -0700)]
Update the version for the FC and iSCSI driver

We also now have a version for the common class,
and report that version at startup time.

Change-Id: Ia1b6698450d151d6b4a8bc13bf3b92c72e8c0ab0

11 years agoPass MB size on copy_volume_data call copy_volume
Bill Owen [Wed, 28 Aug 2013 22:54:54 +0000 (15:54 -0700)]
Pass MB size on copy_volume_data call copy_volume

Modify cinder/volume/driver.py method copy_volume_data
to pass size in MB when calling cinder/volume/utils/copy_volume.py

Closes-Bug #1218054

Change-Id: I5430f015ef0f0077b4794f1ff458e3f54cc4dc06

11 years agoMerge "Modified 3PAR drives to support 3parclient 2.0.0"
Jenkins [Wed, 28 Aug 2013 20:59:22 +0000 (20:59 +0000)]
Merge "Modified 3PAR drives to support 3parclient 2.0.0"

11 years agoMerge "Migrate manage script needs import of db session module"
Jenkins [Wed, 28 Aug 2013 19:18:45 +0000 (19:18 +0000)]
Merge "Migrate manage script needs import of db session module"

11 years agoAdding Read-Only volume attaching support to Cinder
Zhi Yan Liu [Fri, 19 Jul 2013 22:18:24 +0000 (06:18 +0800)]
Adding Read-Only volume attaching support to Cinder

1. Adding an API extension to allow clients set volume Read-Only flag on
demand.
2. Require client to provide and be aware of volume attaching mode when
they call 'os-attach' API.
3. Adding a 'access_mode' field to connection info which
'os-initialize_connection' API returned. This field should be used by
client such as Nova to use correct mode accessing attached volume.
Currently access mode can be 'rw' or 'ro'.
4. In future, the driver within Cinder need to ensure the volume be
exposed under the correct access mode which connection info described,
for example backend should set volume to readonly mode when connection
info ask client using 'ro' access mode consume attached volume. That
means Read-Only is not only a attaching mode but also a status for a
volume.

blueprint read-only-volumes

Change-Id: I4c84614d6541d5f7c358abadb957da7b8c3d9c48
Signed-off-by: Zhi Yan Liu <zhiyanl@cn.ibm.com>
11 years agoAdd NFS/GlusterFS support to brick library
Ben Swartzlander [Wed, 28 Aug 2013 04:43:20 +0000 (21:43 -0700)]
Add NFS/GlusterFS support to brick library

Refactor NFS driver to use the brick library to perform mounts
rather than duplicating the mount code. Some of the NFS unit
test code was rewritten to test the brick implementation because
the old mount code was moved.

The Gluster driver was slightly affected in the refactoring, but
does not yet use brick to perform attaches.

bug 1214748

Change-Id: Ib29f83fabe407f9591191e9fd19e6306ca9960cf

11 years agoPass db into driver as constructor's parameter
Ann Kamyshnikova [Mon, 26 Aug 2013 13:13:06 +0000 (17:13 +0400)]
Pass db into driver as constructor's parameter

This will be required when code specific for target admin moves to
brick.

Change-Id: Ia48ea927f2efb2c551c359f7e7f98bf586919ab3

11 years agoMerge "Add optimized volume migration to Storwize/SVC"
Jenkins [Wed, 28 Aug 2013 07:10:28 +0000 (07:10 +0000)]
Merge "Add optimized volume migration to Storwize/SVC"

11 years agoMerge "Fix cinder error for deprecated Netapp drivers"
Jenkins [Wed, 28 Aug 2013 07:09:58 +0000 (07:09 +0000)]
Merge "Fix cinder error for deprecated Netapp drivers"

11 years agoMerge "Imported Translations from Transifex"
OpenStack Jenkins [Wed, 28 Aug 2013 05:39:45 +0000 (05:39 +0000)]
Merge "Imported Translations from Transifex"

11 years agoMerge "Migration for attached volumes"
Jenkins [Wed, 28 Aug 2013 05:11:59 +0000 (05:11 +0000)]
Merge "Migration for attached volumes"

11 years agoMerge "Fix quota update validation for non-int types"
Jenkins [Tue, 27 Aug 2013 22:10:14 +0000 (22:10 +0000)]
Merge "Fix quota update validation for non-int types"

11 years agoModified 3PAR drives to support 3parclient 2.0.0
Jim Branen [Mon, 19 Aug 2013 23:36:16 +0000 (16:36 -0700)]
Modified 3PAR drives to support 3parclient 2.0.0

Replaced ssh calls to remove host, show host,
show port, show vlun and create vlun with the
new hp3parclient calls.

Change-Id: I917b4263389331597103d2fe6c9a73994165051b
Fixes: bug #1211994
11 years agoMove create_volume flow to a subfolder
Joshua Harlow [Wed, 21 Aug 2013 01:06:32 +0000 (18:06 -0700)]
Move create_volume flow to a subfolder

In order to start splitting up the create_volume flow into
smaller files we will start by moving the create_volume.py
file to a folder with just __init__.py and this will then
act as the base for create_volume task modules.

Also add in a utils file that contains to start the commonly
used debug listener attachment mechanism.

Change-Id: Ie2fd0c77bb04f8153afecdce75588614b48fed8a

11 years agoMerge "Import order cleanup"
Jenkins [Tue, 27 Aug 2013 17:00:38 +0000 (17:00 +0000)]
Merge "Import order cleanup"

11 years agoImport order cleanup
Zhongyue Luo [Tue, 27 Aug 2013 02:04:47 +0000 (10:04 +0800)]
Import order cleanup

According to
https://github.com/openstack-dev/hacking/blob/master/HACKING.rst#imports
imports must be ordered by the full module path by the below template

{{stdlib imports in human alphabetical order}}
\n
{{third-party lib imports in human alphabetical order}}
\n
{{project imports in human alphabetical order}}
\n
\n
{{begin your code}}

Change-Id: Ia517e629d557133fca1a4927020a93e9e2abf3f9

11 years agoMerge "Fix except in lvm.py"
Jenkins [Tue, 27 Aug 2013 12:39:25 +0000 (12:39 +0000)]
Merge "Fix except in lvm.py"

11 years agoMerge "Removes exception instance creation on execute()"
Jenkins [Tue, 27 Aug 2013 12:11:48 +0000 (12:11 +0000)]
Merge "Removes exception instance creation on execute()"

11 years agoMigrate manage script needs import of db session module
Michael Kerrin [Tue, 27 Aug 2013 10:48:45 +0000 (10:48 +0000)]
Migrate manage script needs import of db session module

This import looks like it is not used but importing this module as
the side effect of defining the olso configuration. Without it the
script will not work.

Change-Id: Id65f726f34aa2fb86fda13fd65e2e512b3a899ac

11 years agoMigration for attached volumes
Avishay Traeger [Mon, 19 Aug 2013 10:45:38 +0000 (13:45 +0300)]
Migration for attached volumes

Enable migration for attached volumes by calling Nova to have the
hypervisor copy the data (Nova's swap_volume feature). A new API
function is added for Nova to call once it is done copying to finish
the Cinder side of the migration.

The overall 'generic' migration flow (i.e., not performed by a driver)
is as follows:
1. Creates a new volume
2a. If the source volume's state is 'available', attach both volumes
    and run 'dd' to copy, then detach both. When finished, call the
    migrate_volume_completion function.
2b. If the source volume's state is 'in-use', call Nova to perform the
    copy. Nova will attach the new volume, copy the data from the
    original volume to the new one, and detach the original volume.
    When the copy completes, Nova will call Cinder's new
    migrate_volume_completion function.
3. The migrate_volume_completion function deletes the original volume,
   and calls the database API's finish_volume_migration function. This
   copies all of the new volume's information to the original, and
   deletes the new volume's row, and thus we can keep using the
   original volume_id (the user sees no change).

We also don't change the original volume's status, and instead add a
migration_status column which only selected users can see (e.g., admin).
The migration status is None when no migration is in progress, whether
it succeeded or failed. The admin should check the volume's current
host to determine success or failure. This is meant to simplify
operations. The user will only be aware of a migration if they try to
change the volume's state during the course of a migration.

As mentioned, we change the volume while keeping the original volume
ID. Because a volume's name depends on its ID, the new volume will have
a different name than the original. This is the purpose of the name_id
field in the database - the name is now based on name_id. So although
we keep the original volume's ID, we use the new volume's ID as the
name_id. Thus we can remove the rename_volume function - it is no
longer necessary because the name_id field in the database already
allows for the volume's name on the backend to not rely on its ID.
The user than can see the migration_status can also see the
name_id, in case they need to find it on the backend.

There were a few other places throughout the code that relied on
constructing a volume's name from its ID, and those were fixed.

DocImpact

Implements: bp online-volume-migration

Change-Id: I8daaee174e426fbd450fa75f04f9c8e6fa09f01a

11 years agoAdd optimized volume migration to Storwize/SVC
Avishay Traeger [Wed, 10 Jul 2013 10:59:51 +0000 (13:59 +0300)]
Add optimized volume migration to Storwize/SVC

Add an optimized migration path for when the source and destination are
managed by the same storage. If the source and destination pools have
the same extent_size, it will use the optimal migratevdisk command.
Otherwise, it will use addvdiskcopy and rmvdiskcopy, which must be
watched until the copies are sync'ed.

Change-Id: Ic6069422f5ac7f963f4b1268c0d632a038a8474f

11 years agoFix quota update validation for non-int types
Rohan Kanade [Fri, 23 Aug 2013 10:15:12 +0000 (03:15 -0700)]
Fix quota update validation for non-int types

Fixes lp bug #1215301

Change-Id: I4bf813579c128844884138ba49f074f81f96790a

11 years agoImported Translations from Transifex
OpenStack Jenkins [Tue, 27 Aug 2013 06:10:11 +0000 (06:10 +0000)]
Imported Translations from Transifex

Change-Id: I1831ed17f316a71ada1606555bf73c10eae62d71

11 years agoMerge "Remove deprecated code from Nexenta Exception class"
Jenkins [Tue, 27 Aug 2013 04:14:55 +0000 (04:14 +0000)]
Merge "Remove deprecated code from Nexenta Exception class"

11 years agoMerge "Extend volume for GlusterFS"
Jenkins [Tue, 27 Aug 2013 04:14:53 +0000 (04:14 +0000)]
Merge "Extend volume for GlusterFS"

11 years agoMerge "Sync up with global requirements"
Jenkins [Tue, 27 Aug 2013 02:56:32 +0000 (02:56 +0000)]
Merge "Sync up with global requirements"

11 years agoRemoves exception instance creation on execute()
Zhongyue Luo [Mon, 19 Aug 2013 07:39:00 +0000 (15:39 +0800)]
Removes exception instance creation on execute()

For every excption raised in utils.execute(), a new instance is created.
This patch removes this redundant step and directly uses exceptions
defined in Oslo.

Change-Id: I1425d7f1d69a8fde8fde29444fae4d12d045b730

11 years agoFix except in lvm.py
John Griffith [Tue, 27 Aug 2013 00:52:02 +0000 (00:52 +0000)]
Fix except in lvm.py

Consolidation of brick exceptions into a single
brick exception.py file neglected to updated files
that were using it:
    (see change I577d403f02c2fd0d727d2694776008e1e9791453)

The result is the lvm driver was doing an except on lvm.VolumeGroupNotFound
which didn't exist anymore as it's in brick/exception now.

We still need to clean up exceptions all through here, and this still
isn't handled by service init anyway, but at least with this we are
raising a valid exception.

Change-Id: I588e9ac6548823b291d284f68f6133879bf3dfbf
Fixes: bug 1216122
11 years agoAdd automated check of conf sample
John Griffith [Mon, 26 Aug 2013 18:23:49 +0000 (12:23 -0600)]
Add automated check of conf sample

This adds check_uptodate to run_tests and
tox.ini checks.

This also requires that we add novaclient to the
test-requires, since we try and poke at cinder/compute/nova.

There is another implementation in use to do this that
pulls in openstack.common.config.generator,
(see ceilometer project for a pretty slick impl), however
adding that also pulls in a rather large list of
updates and dependencies that quite frankly Cinder
doesn't need and the ones that we do use break
a number of things in Cinder.

There's also a number of additional options added
to generate_sample that I don't think we need right now.

In the future we'll probably want to go this route
but for now I'd just like to get automated checking
in place.

Change-Id: I91aa4d98f472ad5a3ece7773c75ee76d66adafc0

11 years agoMerge "Sync execute() related exceptions with oslo"
Jenkins [Mon, 26 Aug 2013 22:54:45 +0000 (22:54 +0000)]
Merge "Sync execute() related exceptions with oslo"

11 years agoMerge "Ensure that qpid connection is closed (from oslo)"
Jenkins [Mon, 26 Aug 2013 22:26:52 +0000 (22:26 +0000)]
Merge "Ensure that qpid connection is closed (from oslo)"

11 years agoMerge "Set bootable flag for volume cloned from image"
Jenkins [Mon, 26 Aug 2013 21:45:04 +0000 (21:45 +0000)]
Merge "Set bootable flag for volume cloned from image"

11 years agoRemove deprecated code from Nexenta Exception class
keystone [Mon, 26 Aug 2013 19:38:32 +0000 (12:38 -0700)]
Remove deprecated code from Nexenta Exception class

Change-Id: I4242fce8b3f10c863d38cd2f81c2aab9fea77e24

11 years agoMerge "Offline snapshots for GlusterFS volumes"
Jenkins [Mon, 26 Aug 2013 21:16:44 +0000 (21:16 +0000)]
Merge "Offline snapshots for GlusterFS volumes"

11 years agoSync up with global requirements
John Griffith [Sat, 24 Aug 2013 16:23:29 +0000 (10:23 -0600)]
Sync up with global requirements

This is a pull from openstack/requirements.

Note that pep8, pyflakes and flake8 are now specified
as deps in hacking, so we can remove those here.  Also
if we don't remove them then we run into version conflicts
when hacking tries to set things up.

Quick!!!  Before it changes again!

Change-Id: Ib35b58c01f8d5d066d559e8afe4ea02adf55db5d

11 years agoMerge "Re-enable a lot of cinder scheduler tests"
Jenkins [Mon, 26 Aug 2013 18:07:29 +0000 (18:07 +0000)]
Merge "Re-enable a lot of cinder scheduler tests"

11 years agoExtend volume for GlusterFS
Eric Harney [Sat, 17 Aug 2013 17:05:38 +0000 (13:05 -0400)]
Extend volume for GlusterFS

Add support for extend volume.

Change-Id: Ie9ba67d91de2da43e6b857b4256a445c5269c5cd

11 years agoOffline snapshots for GlusterFS volumes
Eric Harney [Wed, 3 Jul 2013 17:57:42 +0000 (13:57 -0400)]
Offline snapshots for GlusterFS volumes

Offline snapshots for the GlusterFS driver, based
on QCOW2 snapshotting.

This introduces the option to have volumes stored as
qcow2 files rather than raw files. (glusterfs_qcow2_volumes)

Bump driver version to 1.1.0.

This patch requires Nova to support loading qcow2 disks:
https://review.openstack.org/#/c/38321/

Online snapshot support (via Nova) is added in a
subsequent patch submitted in this series.

This patch also enables volume cloning for GlusterFS volumes.

Implements blueprint qemu-assisted-snapshots

Change-Id: I783a802574b835b495e343f555f7ecf9b46981dd

11 years agoEnsure that qpid connection is closed (from oslo)
Xavier Queralt [Mon, 26 Aug 2013 14:11:34 +0000 (16:11 +0200)]
Ensure that qpid connection is closed (from oslo)

This is commit a9bc62814d in oslo-incubator

Fixes bug 1172922

When reestablishing a session and a connection already exists the
existing connection will be closed prior to opening the new one.

Change-Id: I9a25800fe4b56eba89d550e3461ce095bf902f0a

11 years agoMerge "Ignore stmf target must be offline exception"
Jenkins [Mon, 26 Aug 2013 10:17:12 +0000 (10:17 +0000)]
Merge "Ignore stmf target must be offline exception"

11 years agoImported Translations from Transifex
OpenStack Jenkins [Mon, 26 Aug 2013 06:17:09 +0000 (06:17 +0000)]
Imported Translations from Transifex

Change-Id: I2b2ca85c56e774d40437cca45b60103d6f840734

11 years agoMerge "Imported Translations from Transifex"
OpenStack Jenkins [Mon, 26 Aug 2013 05:04:14 +0000 (05:04 +0000)]
Merge "Imported Translations from Transifex"

11 years agoMerge "Move the frequently injection task to the base folder."
Jenkins [Mon, 26 Aug 2013 04:56:01 +0000 (04:56 +0000)]
Merge "Move the frequently injection task to the base folder."

11 years agoMerge "Clean up the sqlalchemy migrate manage.py script."
Jenkins [Sun, 25 Aug 2013 13:30:29 +0000 (13:30 +0000)]
Merge "Clean up the sqlalchemy migrate manage.py script."

11 years agoMerge "Storwize/SVC: allow setting of I/O group"
Jenkins [Sun, 25 Aug 2013 10:11:52 +0000 (10:11 +0000)]
Merge "Storwize/SVC: allow setting of I/O group"

11 years agoTest WWNs with basestring
Avishay Traeger [Sun, 25 Aug 2013 07:45:14 +0000 (10:45 +0300)]
Test WWNs with basestring

Change to match Nova commit 52c0668548eb4a7e3536c241c9551cdf89f2d696

Change-Id: I96844ab293003e605412410969f8f26f5e9ac075

11 years agoMerge "emit warning while running flake8 without virtual env"
Jenkins [Sun, 25 Aug 2013 07:07:11 +0000 (07:07 +0000)]
Merge "emit warning while running flake8 without virtual env"

11 years agoMerge "Fix volume_glance_metadata deletion"
Jenkins [Sun, 25 Aug 2013 07:01:38 +0000 (07:01 +0000)]
Merge "Fix volume_glance_metadata deletion"

11 years agoMerge "Use a new rest client for every Coraid ESM command"
Jenkins [Sun, 25 Aug 2013 07:01:31 +0000 (07:01 +0000)]
Merge "Use a new rest client for every Coraid ESM command"

11 years agoMerge "The DB migration shouldn't populate types table"
Jenkins [Sun, 25 Aug 2013 06:55:48 +0000 (06:55 +0000)]
Merge "The DB migration shouldn't populate types table"

11 years agoMerge "Remove print statement in db api test"
Jenkins [Sun, 25 Aug 2013 06:24:58 +0000 (06:24 +0000)]
Merge "Remove print statement in db api test"