]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
9 years agoFix broken format string in vol mgr log
Eric Harney [Mon, 5 Oct 2015 16:55:52 +0000 (12:55 -0400)]
Fix broken format string in vol mgr log

"Detected volume stuck in" message is
not formatted correctly.

Change-Id: Ia2b3797508d8bcbc00f2c85d1d9f8172d923a062

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Sun, 4 Oct 2015 22:40:02 +0000 (22:40 +0000)]
Updated from global requirements

Change-Id: Id75e695e0e25ad4505391dc1a5b131f8f2a9e9b8

9 years agoMerge "Delete a temporary volume in DB with admin context"
Jenkins [Sun, 4 Oct 2015 16:42:42 +0000 (16:42 +0000)]
Merge "Delete a temporary volume in DB with admin context"

9 years agoMerge "Implement extend_volume method to Block Device driver"
Jenkins [Sun, 4 Oct 2015 10:59:00 +0000 (10:59 +0000)]
Merge "Implement extend_volume method to Block Device driver"

9 years agoDelete a temporary volume in DB with admin context
Masaki Kanno [Sun, 4 Oct 2015 06:57:22 +0000 (15:57 +0900)]
Delete a temporary volume in DB with admin context

Non-disruptive backup creates a temporary volume. Information
of the volume will be deleted from DB if the volume cannot be
created by drivers. volume_destroy method is used in order to
delete the information. We must elevate the context to admin
context because the method requests admin context.

Change-Id: Ie5cd935cdd9e13c261708e504fa6fb2622a8aebb
Closes-Bug: 1502460

9 years agoMerge "Small optimization in Block Device driver"
Jenkins [Sun, 4 Oct 2015 02:34:17 +0000 (02:34 +0000)]
Merge "Small optimization in Block Device driver"

9 years agoMerge "DRBD: new option "drbdmanage_devs_on_controller"."
Jenkins [Sun, 4 Oct 2015 01:50:15 +0000 (01:50 +0000)]
Merge "DRBD: new option "drbdmanage_devs_on_controller"."

9 years agoMerge "Use of ast for integers doesn't changes type"
Jenkins [Sat, 3 Oct 2015 19:00:50 +0000 (19:00 +0000)]
Merge "Use of ast for integers doesn't changes type"

9 years agoMerge "Cleanup orphaned code from cinder root directory"
Jenkins [Sat, 3 Oct 2015 17:04:33 +0000 (17:04 +0000)]
Merge "Cleanup orphaned code from cinder root directory"

9 years agoMerge "VMAX Truncate Storage Group Name"
Jenkins [Sat, 3 Oct 2015 04:35:05 +0000 (04:35 +0000)]
Merge "VMAX Truncate Storage Group Name"

9 years agoMerge "Tests: print fake_notifier queue upon mismatch"
Jenkins [Fri, 2 Oct 2015 20:01:06 +0000 (20:01 +0000)]
Merge "Tests: print fake_notifier queue upon mismatch"

9 years agoMerge "Fix enable/disable_replication raise InvalidVolume"
Jenkins [Fri, 2 Oct 2015 19:24:26 +0000 (19:24 +0000)]
Merge "Fix enable/disable_replication raise InvalidVolume"

9 years agoMerge "Fix various Python 3 issues"
Jenkins [Fri, 2 Oct 2015 16:37:51 +0000 (16:37 +0000)]
Merge "Fix various Python 3 issues"

9 years agoVMAX Truncate Storage Group Name
Xing Yang [Fri, 2 Oct 2015 14:17:40 +0000 (10:17 -0400)]
VMAX Truncate Storage Group Name

In the VMAX driver, it generates a storage group name using
the short host name, pool name, etc. However the storage
group name has an upper limit of 64 characters. So it fails
if the length of the name exceeds the limit. This patch
fixes it by truncating the name to fix within the limit.

Change-Id: I18258933591a389691a7b33af2d30a40bb34f09c
Closes-Bug: #1501925

9 years agoMerge "Fix volume throttling to Python 3"
Jenkins [Fri, 2 Oct 2015 14:59:28 +0000 (14:59 +0000)]
Merge "Fix volume throttling to Python 3"

9 years agoFix various Python 3 issues
Victor Stinner [Fri, 2 Oct 2015 07:43:44 +0000 (09:43 +0200)]
Fix various Python 3 issues

* Drop exceptions import. Replace exceptions.OSError with OSError.
  The exceptions module was removed in Python 3.
* Replace 8l with 8
* Replace generator.next() with next(generator)
* convert_uuid_to_es_fmt(): use bytes
* Replace function.func_name with function.__name__

This change helps to run tests using "testr run" instead of
testtools.run.

Blueprint cinder-python3
Change-Id: I36476199ef336069669c5bc6cb5c285b21d8116b

9 years agoFix volume throttling to Python 3
Victor Stinner [Thu, 1 Oct 2015 16:04:30 +0000 (18:04 +0200)]
Fix volume throttling to Python 3

BlkioCgroup._set_limits(): sort devices before iterating on them to
have a reliable behaviour.

The devs variable is a dictionary. On Python 3, the hash function is
now randomized, so iterating on a dictionary gives items in a random
order. Use sorted() to iterate on the list of sorted devices instead.

tox.ini: add cinder.tests.unit.test_volume_throttling to Python 3.

Blueprint cinder-python3
Partial-Bug: #1348818
Change-Id: Icf7141f772397c7ac08f0f1e21ad74cb86a06351

9 years agoMerge "Image cache tests: use fake_notifier"
Jenkins [Fri, 2 Oct 2015 04:13:54 +0000 (04:13 +0000)]
Merge "Image cache tests: use fake_notifier"

9 years agoFix enable/disable_replication raise InvalidVolume
Walter A. Boring IV [Thu, 1 Oct 2015 22:47:44 +0000 (15:47 -0700)]
Fix enable/disable_replication raise InvalidVolume

In both enable_replication and disable_replication,
it tests to see the replication_state is in the correct
state.  When it's not it was raising InvalidVolume()
InvalidVolume requires a reason text message.

This patch adds the missing reason=msg when creating
the InvalidVolume exception

Change-Id: I66a3e4dc4359457e9669c5ddaa4b0529645334f9
Closes-Bug: 1501942

9 years agoTests: print fake_notifier queue upon mismatch
Eric Harney [Thu, 1 Oct 2015 20:25:17 +0000 (16:25 -0400)]
Tests: print fake_notifier queue upon mismatch

If these tests fail, output more information
so it's easier to figure out where things
went wrong.

Related-Bug: #1501745
Related-Bug: #1501839

Change-Id: Id78802834821c791a22c22f49260a8480122cc06

9 years agoCleanup orphaned code from cinder root directory
Sean McGinnis [Thu, 1 Oct 2015 14:18:43 +0000 (09:18 -0500)]
Cleanup orphaned code from cinder root directory

There were several methods in the root directory source files
that were no longer being used anywhere. While some of these
have potential for being useful, they are not in use and should
not be sitting around the codebase waiting for someone to need them.

This patch removes unused methods from utils as well as their
associated unit tests.

Change-Id: Iee5bac44b41a2696ab972a2fbfe0281ec423b393

9 years agoImage cache tests: use fake_notifier
Eric Harney [Thu, 1 Oct 2015 19:31:54 +0000 (15:31 -0400)]
Image cache tests: use fake_notifier

Use the same method for testing notifications that's
used in test_volume.

This may resolve the bug below, but that isn't
really clear yet.  Either way, it seems less risky.

Closes-Bug: #1501745

Change-Id: I566d27e70bcfaaa0f863cdfacaef6fe11236f9e6

9 years agoMerge "LVM: Make sparse_copy_volume private, use for capabilities"
Jenkins [Thu, 1 Oct 2015 17:54:18 +0000 (17:54 +0000)]
Merge "LVM: Make sparse_copy_volume private, use for capabilities"

9 years agoMerge "Obtain target authentication from database same as LIO target"
Jenkins [Thu, 1 Oct 2015 13:39:37 +0000 (13:39 +0000)]
Merge "Obtain target authentication from database same as LIO target"

9 years agoImplement extend_volume method to Block Device driver
Yuriy Nesenenko [Thu, 1 Oct 2015 10:39:39 +0000 (13:39 +0300)]
Implement extend_volume method to Block Device driver

This patch adds the extend_volume method to Block Device driver
to get the minimum features for this driver.

Related blueprint: block-device-driver-minimum-features-set
Change-Id: I6ca7ba4a407ab7d8171fc7d5d6fcb60a29de8f6b

9 years agoSmall optimization in Block Device driver
Yuriy Nesenenko [Fri, 4 Sep 2015 15:25:44 +0000 (18:25 +0300)]
Small optimization in Block Device driver

Method _devices_sizes() in Block Device driver invokes N times
_get_device_size(device) to get devices sizes. It can be done by
executing one command: blockdev --getsize64 /dev/loop1 /dev/loop2.
In such a way we take the devices' sizes in bytes and convert them
to Megabytes.

Change-Id: I0aba86239b4c580a0b12202a8f7fc863dab6fecd

9 years agoDRBD: new option "drbdmanage_devs_on_controller".
Philipp Marek [Thu, 1 Oct 2015 07:58:34 +0000 (09:58 +0200)]
DRBD: new option "drbdmanage_devs_on_controller".

With this option set the c-vol node will have all volumes accessible,
via DRBD-client if no local copy already exists anyway.

This is handy for a) debugging b) maintenance c) iSCSI exports
and other use cases.

Change-Id: Ib347777d2f4bb8b46990d76e138e1dbf13ff95bb

9 years agoMerge "Sheepdog: Improve snapshot and clone operation"
Jenkins [Thu, 1 Oct 2015 03:10:48 +0000 (03:10 +0000)]
Merge "Sheepdog: Improve snapshot and clone operation"

9 years agoMerge "Port test_volume to Python 3"
Jenkins [Thu, 1 Oct 2015 02:56:29 +0000 (02:56 +0000)]
Merge "Port test_volume to Python 3"

9 years agoMerge "VMware: Remove VMDK driver for ESX server"
Jenkins [Thu, 1 Oct 2015 02:56:18 +0000 (02:56 +0000)]
Merge "VMware: Remove VMDK driver for ESX server"

9 years agoObtain target authentication from database same as LIO target
Mitsuhiro Tanino [Fri, 25 Sep 2015 22:09:59 +0000 (18:09 -0400)]
Obtain target authentication from database same as LIO target

Currently, tgt, iet and cxt obtain user and password for iSCSI
target by analyzing configuration file.
However this information is already stored in DB and LIO obtains
these authentication from provider_auth in DB.
This way is simple and robust instead of analyzing configuration
file directly.
This patch proposes these two changes:
- Change the way to obtain authentication from configuration
  file to DB at _get_target_chap_auth().
- Move _get_target_chap_auth() into iscsi.py and inherit
  the method at tgt, iet and cxt target because they can use
  same implementation to get authentication from DB.

Co-Authored-By: Anish Bhatt <anish@chelsio.com>
Change-Id: I5188ce5855d206c513f72e01f010175490ec89b2
Partial-Bug: #1499795

9 years agoMerge "Dell SC: cgsnapshot-delete doesn't actually delete"
Jenkins [Wed, 30 Sep 2015 21:52:21 +0000 (21:52 +0000)]
Merge "Dell SC: cgsnapshot-delete doesn't actually delete"

9 years agoLVM: Make sparse_copy_volume private, use for capabilities
Eric Harney [Wed, 23 Sep 2015 20:26:20 +0000 (16:26 -0400)]
LVM: Make sparse_copy_volume private, use for capabilities

This should be a private variable after the refactoring
done for
0982ad1 Efficient volume copy for generic volume migration

Additionally, just use the variable determined by the
config at init time when reporting capabilities rather
than having a separate calculation there.

Change-Id: I433e22f71b24afd10a879447d79ce1fda0a7bfa6

9 years agoDell SC: cgsnapshot-delete doesn't actually delete
Tom Swanson [Tue, 29 Sep 2015 15:26:48 +0000 (10:26 -0500)]
Dell SC: cgsnapshot-delete doesn't actually delete

dell_storagecenter_api.py was looking for the cgsnapshot for
cgsnapshot-delete via the wrong REST API call.  It was also only
looking for the first volume's snapshot rather than all snapshots
associated with a cgsnapshot.  It now locates the snapshots properly
and expires the associated replays on cgsnapshot-delete.

Tests updated appropriately.

Change-Id: I1e635db8b06d3d7a78573e6e8a2a4c25b7fb458d
Closes-Bug: #1500583

9 years agoMerge "Setup LVM_SYSTEM_DIR earlier in LVM.__init()"
Jenkins [Tue, 29 Sep 2015 20:20:42 +0000 (20:20 +0000)]
Merge "Setup LVM_SYSTEM_DIR earlier in LVM.__init()"

9 years agoMerge "Fix Python 3 issues in wsgi"
Jenkins [Tue, 29 Sep 2015 20:19:35 +0000 (20:19 +0000)]
Merge "Fix Python 3 issues in wsgi"

9 years agoMerge "Add manage_existing and unmanage to BaseVD"
Jenkins [Tue, 29 Sep 2015 20:19:25 +0000 (20:19 +0000)]
Merge "Add manage_existing and unmanage to BaseVD"

9 years agoMerge "GlusterFS: extend volume to the right path"
Jenkins [Tue, 29 Sep 2015 20:18:17 +0000 (20:18 +0000)]
Merge "GlusterFS: extend volume to the right path"

9 years agoFix typo in cinder-config-generator.conf
Thomas Goirand [Tue, 29 Sep 2015 13:29:59 +0000 (15:29 +0200)]
Fix typo in cinder-config-generator.conf

In cinder-config-generator.conf, I could see:
namesapce = oslo.i18n
instead of namespace. This patch fixes this.

Change-Id: Ice55b974d593f4eb24920805a751ee58ac0201f3

9 years agoMerge "Fix update Huawei driver issue"
Jenkins [Tue, 29 Sep 2015 12:55:58 +0000 (12:55 +0000)]
Merge "Fix update Huawei driver issue"

9 years agoMerge "Fix unreachable code pylint issues"
Jenkins [Tue, 29 Sep 2015 12:50:54 +0000 (12:50 +0000)]
Merge "Fix unreachable code pylint issues"

9 years agoPort test_volume to Python 3
Victor Stinner [Fri, 21 Aug 2015 16:47:50 +0000 (09:47 -0700)]
Port test_volume to Python 3

* don't use hasttr() to check if a lazy SQLAlchemy is loaded or not: use
  the obj_attr_is_set() method instead. On Python 3, hasattr() pass
  through SQLAlchemy exceptions which is unexpected.
* Replace a/b with a//b to use integer division, not float division.
* Replace filter() with list-comprehension using an if.
* Replace file() with open() and open /dev/null in binary mode (not text
  mode, so Unicode on Python 3).
* test_volume require "import cinder.volume.targets.tgt" on Python 3
* Use a key function to sort a list of dictionaries. Dictionaries are no
  more comparable on Python 3.
* tox.ini: add the following tests to Python 3.4.

  - cinder.tests.unit.keymgr.test_mock_key_mgr
  - cinder.tests.unit.test_volume

Note: test_list_availability_zones_enabled_service() of test_volume
was broken, the test checked that the result of .sort() is None...

Blueprint cinder-python3
Change-Id: If1a26acc0138db9bda7fde1cb1f40093d9b3c494

9 years agoMerge "Small cleanups in BaseVD/VolumeDriver"
Jenkins [Tue, 29 Sep 2015 10:16:30 +0000 (10:16 +0000)]
Merge "Small cleanups in BaseVD/VolumeDriver"

9 years agoMerge "Add "fast8" tox env"
Jenkins [Tue, 29 Sep 2015 10:15:51 +0000 (10:15 +0000)]
Merge "Add "fast8" tox env"

9 years agoFix unreachable code pylint issues
Rajesh Tailor [Tue, 29 Sep 2015 07:34:31 +0000 (00:34 -0700)]
Fix unreachable code pylint issues

Fixed unreachable code (warning code W0101) pylint issues.

TrivialFix
Change-Id: I1b26952609c609114dc23ffb34609b7a9aed2ebf

9 years agoFix update Huawei driver issue
Wilson Liu [Thu, 24 Sep 2015 10:05:11 +0000 (18:05 +0800)]
Fix update Huawei driver issue

If a volume is created with old version of Huawei driver,
there is no pool info related to the volume, but the new
version of Huawei driver assumes that the volume have the
pool info and will read the pool info from the volume,
and then the read fails. This will happen when we call
create_volume_from_snapshot() in new version of Huawei
driver when the volume is created by old version of Huawei
driver.

Closes-bug: #1499251
Change-Id: I296f6354340e1a3698d8a284c9aa2a444c73771d

9 years agoMerge "Fix VMAX live migration problem"
Jenkins [Tue, 29 Sep 2015 03:18:39 +0000 (03:18 +0000)]
Merge "Fix VMAX live migration problem"

9 years agoMerge "Report *real* free capacity in Huawei driver"
Jenkins [Tue, 29 Sep 2015 03:07:45 +0000 (03:07 +0000)]
Merge "Report *real* free capacity in Huawei driver"

9 years agoMerge "Use pbr wsgi_scripts to install Cinder WSGI entry point"
Jenkins [Tue, 29 Sep 2015 02:48:54 +0000 (02:48 +0000)]
Merge "Use pbr wsgi_scripts to install Cinder WSGI entry point"

9 years agoMerge "py3: Port pure driver test to Python 3"
Jenkins [Mon, 28 Sep 2015 22:22:20 +0000 (22:22 +0000)]
Merge "py3: Port pure driver test to Python 3"

9 years agoMerge "Fix volume related operation in CloudByte driver"
Jenkins [Mon, 28 Sep 2015 17:53:20 +0000 (17:53 +0000)]
Merge "Fix volume related operation in CloudByte driver"

9 years agoMerge "Imported Translations from Zanata"
Jenkins [Mon, 28 Sep 2015 17:48:58 +0000 (17:48 +0000)]
Merge "Imported Translations from Zanata"

9 years agoMerge "Fix Bad indentation pylint issues"
Jenkins [Mon, 28 Sep 2015 16:14:42 +0000 (16:14 +0000)]
Merge "Fix Bad indentation pylint issues"

9 years agoMerge "Remove the destination volume check in delete_volume"
Jenkins [Mon, 28 Sep 2015 16:00:24 +0000 (16:00 +0000)]
Merge "Remove the destination volume check in delete_volume"

9 years agoFix Python 3 issues in wsgi
Victor Stinner [Tue, 18 Aug 2015 23:03:51 +0000 (16:03 -0700)]
Fix Python 3 issues in wsgi

Fix unicode versus bytes issues in wsgi code, a HTTP body is a bytes
string. Changes:

* On Python 3, encode JSON to UTF-8.
* Replace file() with open(); file() was removed in Python 3.
* Use literal byte strings (b'...') for HTTP body.
* Use binary instead of text mode for HTTP body when getting a file from
  a socket (sock.makefile).

Blueprint cinder-python3
Change-Id: If46e0060371f5eb00fd33d5b58ec236d1ff4ace1

9 years agopy3: Port pure driver test to Python 3
Victor Stinner [Wed, 26 Aug 2015 22:13:51 +0000 (00:13 +0200)]
py3: Port pure driver test to Python 3

* Replace func.func_name with func.__name__: the func_name attribute
  was removed in Python 3, whereas the __name__ attribute exists on
  Python 2 and Python 3
* Create INITIATOR_TARGET_MAP using list(set()) to get the same order
  than the tested code. The exact order is not reliable, it depends
  on the hash function which is now randomized by default on
  Python 3. The hash function is also different between Python 2.7
  and 3.4.
* tox.ini: add test_pure to Python 3.4

Blueprint cinder-python3
Change-Id: I78601278259f1d34ad6ac3458d2dd0a3aca9d77a

9 years agoGlusterFS: extend volume to the right path
Einst Crazy [Thu, 24 Sep 2015 16:24:18 +0000 (00:24 +0800)]
GlusterFS: extend volume to the right path

Extend volume uses the wrong volume file path. It should
extend the active volume file path.

And set _active_volume_path as a common function, that
also change delete_volume() and backup_volume().

Closes-Bug: 1499452

Change-Id: I2f19a721f4d3e9b05601e820e10a6eb1328a68a9

9 years agoMerge "Show image metadata"
Jenkins [Mon, 28 Sep 2015 15:08:46 +0000 (15:08 +0000)]
Merge "Show image metadata"

9 years agoUse pbr wsgi_scripts to install Cinder WSGI entry point
Ivan Kolodyazhny [Mon, 28 Sep 2015 12:35:58 +0000 (15:35 +0300)]
Use pbr wsgi_scripts to install Cinder WSGI entry point

pbr 1.4.0 added support for wsgi_scripts that creates scripts for wsgi
servers on install.

Change-Id: Ifbab059001d1567b1f7b394c0411a9ca4629f846
Closes-Bug: #1500367

9 years agoReport *real* free capacity in Huawei driver
Wilson Liu [Thu, 24 Sep 2015 08:52:31 +0000 (16:52 +0800)]
Report *real* free capacity in Huawei driver

When we query capacity of a storage pool on Huawei storage,
there are two items in the result: one is "USERFREECAPACITY"
and the another one is "DATASPACE". In fact the "DATASPACE"
is the *real* space we can use to create LUN, the
"USERFREECAPACITY" contains some metadata that we can not use
to store user data.

Closes-Bug: #1499227
Change-Id: I34a8c67dea2a7b7f5a2a693a65c9303b2cc3d972

9 years agoMerge "Create a page of drivers with stevedore.sphinxext"
Jenkins [Mon, 28 Sep 2015 10:08:10 +0000 (10:08 +0000)]
Merge "Create a page of drivers with stevedore.sphinxext"

9 years agoMerge "Huawei driver add check before use a QoS"
Jenkins [Mon, 28 Sep 2015 09:53:46 +0000 (09:53 +0000)]
Merge "Huawei driver add check before use a QoS"

9 years agoImported Translations from Zanata
OpenStack Proposal Bot [Mon, 28 Sep 2015 06:19:29 +0000 (06:19 +0000)]
Imported Translations from Zanata

For more information about this automatic import see:
https://wiki.openstack.org/wiki/Translations/Infrastructure

Change-Id: Icc2ef9b5d5fe090baa7a3027cdc52ae1e2874e82

9 years agoFix Bad indentation pylint issues
Rajesh Tailor [Mon, 8 Jun 2015 11:52:49 +0000 (04:52 -0700)]
Fix Bad indentation pylint issues

Fixed Bad indentation (warning code W0311) issues in cinder project.

Closes-Bug: 1462992
Change-Id: Idf3c036b1826ed5c0efa2e13ddf289e6880323a6

9 years agoShow image metadata
Dave Chen [Mon, 3 Aug 2015 09:01:22 +0000 (17:01 +0800)]
Show image metadata

This patch implements the API to show the glance image metadata
for a specific volume.

DocImpact: May need to document this API.
APIImpact: Provided the API to show image metadata.
Partially implements: bp support-modify-volume-image-metadata

Change-Id: I2bcc9d3d44a784abaa0138397f553a825c92573a

9 years agoFix volume related operation in CloudByte driver
Abhishek Shrivastava [Fri, 25 Sep 2015 06:53:38 +0000 (12:23 +0530)]
Fix volume related operation in CloudByte driver

Currently the volume related operation in CloudByte driver does not:

* Update the ISCSI Initiator Group during volume deletion operation,
and
* During retry of any volume operation it does not catches the exact
cause of the failure happened.

So to deal with the following issues two changes has been done in
CloudByte Driver:

* Added a new method "_update_initiator_group"
ISCSI Initiator Group is one of the parameter added to the volumes
at the time of creation in CloudByte Storage. Using this the external
source can access the volumes easily. By default, Initiator Group
value is set to 'ALL', but it should be changed to 'None' before
deletion. Since the following is not happening, thus volume delete
operation fails from OpenStack. In order to avoid this the
"delete_volume" method now uses the "_update_initiator_group" which
update the volume ISCSI Initiatior Groupof the volumes to 'None'
before deletion, and thus volume delete operation will have no issues
while running from OpenStack.

* Added a check to "_retry_volume_operation"
The _retry_volume_operation method was not able to check the exact
cause of the failure happened during volume operation in CloudByte
Storage, which arises if some invalid parameters are provided in
"cinder.conf" against "cloudbyte backend" or if some anomaly happens
at CloudByte Storage during any volume operation from OpenStack. Due
to this, tracking the ERROR becomes a very difficult task to do. Thus
to resolve this issue a "check" has been added to the method which
will raise the exact cause of the error and thus making it easier to
solve.

Change-Id: Ie385df7c18520ea4abb5640fb354bdd18212c5a3
Closes-Bug: #1499297

9 years agoMerge "Add placholder for migration backports in Liberty"
Jenkins [Sat, 26 Sep 2015 00:11:23 +0000 (00:11 +0000)]
Merge "Add placholder for migration backports in Liberty"

9 years agoMerge "Remove duplicate keys from dictionary"
Jenkins [Fri, 25 Sep 2015 23:39:07 +0000 (23:39 +0000)]
Merge "Remove duplicate keys from dictionary"

9 years agoMerge "Revert use of netapp_lib from NetApp Drivers"
Jenkins [Fri, 25 Sep 2015 23:15:17 +0000 (23:15 +0000)]
Merge "Revert use of netapp_lib from NetApp Drivers"

9 years agoAdd placholder for migration backports in Liberty
John Griffith [Thu, 3 Sep 2015 02:54:08 +0000 (20:54 -0600)]
Add placholder for migration backports in Liberty

Adding 5 placeholders for migration backports.

Change-Id: Id3c4efbeee8bb1d800d71576d9de66ae9deb315a

9 years agoMerge "Python 3 incompatible expression fix"
Jenkins [Fri, 25 Sep 2015 17:25:11 +0000 (17:25 +0000)]
Merge "Python 3 incompatible expression fix"

9 years agoMerge "Port image_utils to Python 3"
Jenkins [Fri, 25 Sep 2015 17:02:30 +0000 (17:02 +0000)]
Merge "Port image_utils to Python 3"

9 years agoMerge "Port volume transfer to Python 3"
Jenkins [Fri, 25 Sep 2015 16:38:33 +0000 (16:38 +0000)]
Merge "Port volume transfer to Python 3"

9 years agoMerge "Missing configuration opts from cinder.sample.conf"
Jenkins [Fri, 25 Sep 2015 14:55:31 +0000 (14:55 +0000)]
Merge "Missing configuration opts from cinder.sample.conf"

9 years agoRevert use of netapp_lib from NetApp Drivers
Goutham Pacha Ravi [Fri, 25 Sep 2015 05:52:43 +0000 (01:52 -0400)]
Revert use of netapp_lib from NetApp Drivers

This patch cleanly reverts the changes made via the
commit: e681ba2a99995dcd999e6539bb1222f8a1ac8adc
cleanly and mitigates the conflicts that would
occur with git-revert on the said commit.

The revert is solely for changes pertaining to the use
of the external library, netapp_lib. Minor code refactors
from the prior change are retained.

Unit test coverage has been increased for ZAPI and REST
interface code in netapp/dataontap/client/api.py and
netapp/eseries/client.py.

Closes-Bug: #1499334
Change-Id: Icead7e168e1c7187840de87c69365d26aedd5924

9 years agoRemove the destination volume check in delete_volume
Vincent Hou [Tue, 1 Sep 2015 03:17:04 +0000 (11:17 +0800)]
Remove the destination volume check in delete_volume

* If the volume migration fails in the middle of the progress,
the destination volume will be cleaned up via
rpcapi.delete_volume. The method delete_volume in manager
should allow us to clean up the database record for the
destination volume.

* The variable update in migrate_volume_completion has been
assigned twice. Remove the second one.

Change-Id: Icb815476943053f1487268b33c28f3575c4fd0dc
Closes-Bug: #1490445

9 years agoHuawei driver add check before use a QoS
Wilson Liu [Wed, 23 Sep 2015 07:04:33 +0000 (15:04 +0800)]
Huawei driver add check before use a QoS

One QoS in Huawei storage array can contain at most 64 LUNs.
Do a check before adding LUN to QoS, if the number of the
LUNs in the QoS is already equal or larger than 64, then
this QoS should not be used.

Closed-Bug: #1498773
Change-Id: I9dd78cc1378051ded135a885cfc9347d42977311

9 years agoMerge "Use function capsulation in Huawei driver"
Jenkins [Fri, 25 Sep 2015 02:29:22 +0000 (02:29 +0000)]
Merge "Use function capsulation in Huawei driver"

9 years agoMerge "Check sio_storage_pools in check_for_setup_error"
Jenkins [Thu, 24 Sep 2015 21:16:24 +0000 (21:16 +0000)]
Merge "Check sio_storage_pools in check_for_setup_error"

9 years agoFix VMAX live migration problem
Xing Yang [Wed, 23 Sep 2015 15:22:43 +0000 (11:22 -0400)]
Fix VMAX live migration problem

Live migration fails for VMAX because the host is not taken into
account when determining whether a volume is masked or not. For
live migration it is necessary to know which host a volume is masked
to. This patch fixes the problem by checking which host the volume
is masked to.

Change-Id: I693e29f7b26145bd1fd357b7d98377e26bfdfed8
Closes-Bug: #1498964

9 years agoMissing configuration opts from cinder.sample.conf
Kendall Nelson [Mon, 21 Sep 2015 18:11:19 +0000 (13:11 -0500)]
Missing configuration opts from cinder.sample.conf

The logic for writing opts registered with register_opt() to the
auto-generated opts.py file was flawed in that the directories where
there were opts being registered with this method would be imported,
but the actual opt would be missed when looking through the file for
the name of the opt being registered. Now the singular opts are being
caught and written to opts.py for the oslo-config-generator to process.

The 'backend' section was added to generate_cinder_opts.py
due to some of the missing opts being a part of that section.

Also the way some of the opts that were being registered with groups
were incorrect and so this addresses those in both how they were
processed in generate_cinder_opts.py and the files in which they are being
registered.

There is also one change to the name of an opt in cinder/volume/api.py.
Instances such as this one will be caught by the in-progress hacking
check patch: https://review.openstack.org/#/c/223375/

Change-Id: I8d333d7529d40f3a3b3651ca3a52c0048d96b99a
Closes-Bug: #1498122

9 years agoUse function capsulation in Huawei driver
Wilson Liu [Sun, 13 Sep 2015 13:26:08 +0000 (21:26 +0800)]
Use function capsulation in Huawei driver

Use a function _get_id_from_result() instead of lots of
duplicated code.

Closes-Bug: #1495231
Change-Id: I8ae7d27cb977110109fa26bd6b3ddcbc7298fbc1

9 years agoMerge "Create volume in cg enhancement in VNX driver"
Jenkins [Thu, 24 Sep 2015 00:54:10 +0000 (00:54 +0000)]
Merge "Create volume in cg enhancement in VNX driver"

9 years agoMerge "Open Mitaka development"
Jenkins [Wed, 23 Sep 2015 19:06:21 +0000 (19:06 +0000)]
Merge "Open Mitaka development"

9 years agoMerge "Fix URL format in Huawei driver"
Jenkins [Wed, 23 Sep 2015 17:49:03 +0000 (17:49 +0000)]
Merge "Fix URL format in Huawei driver"

9 years agoOpen Mitaka development
Thierry Carrez [Wed, 23 Sep 2015 15:11:30 +0000 (17:11 +0200)]
Open Mitaka development

Bump preversion to mark the start of the Mitaka development branch.
The liberty release branch will be cut from the previous commit.

Change-Id: Icb57e22104f70a9b5d8c1c0b56b3156e51c60b4a

9 years agoCreate volume in cg enhancement in VNX driver
Tina [Thu, 17 Sep 2015 04:04:42 +0000 (00:04 -0400)]
Create volume in cg enhancement in VNX driver

VNX driver queries whether a LUN is in CG after adding it into
CG. However, as long as the LUN is added successfully, the LUN
will be in CG. The additional query is useless. This patch removes
the additional query.

Change-Id: I1ca43616d41169ceb1f8fde460f7ec4a616c5d56
Closes-Bug: #1497900

9 years agoMerge "Fixing create CG from Cgsnapshot bug in VNX driver"
Jenkins [Wed, 23 Sep 2015 06:31:27 +0000 (06:31 +0000)]
Merge "Fixing create CG from Cgsnapshot bug in VNX driver"

9 years agoRemove duplicate keys from dictionary
ankitagrawal [Tue, 22 Sep 2015 13:01:19 +0000 (06:01 -0700)]
Remove duplicate keys from dictionary

There are few places where duplicate keys are added in the dictionary.
Removed all such occurrences throughout the code.

TrivialFix

Change-Id: I5db553d4d9f161b513520c87b6ad17b7ca6a0782

9 years agoMerge "Make rpc_client method private for VolumeCommands"
Jenkins [Wed, 23 Sep 2015 04:31:59 +0000 (04:31 +0000)]
Merge "Make rpc_client method private for VolumeCommands"

9 years agoMerge "Allow c-vol backends to start when some backends fail to load"
Jenkins [Wed, 23 Sep 2015 04:24:55 +0000 (04:24 +0000)]
Merge "Allow c-vol backends to start when some backends fail to load"

9 years agoFix URL format in Huawei driver
Wilson Liu [Wed, 23 Sep 2015 03:43:06 +0000 (11:43 +0800)]
Fix URL format in Huawei driver

Some of the URL format are not standard,
this patch will fix them.

Change-Id: I3caf49e6ca7f5f6f2caa1b56ba2dc2af2cafdcea
Close-Bug: #1498484

9 years agoMerge "Fix use of wrong storage pools for NetApp Drivers"
Jenkins [Tue, 22 Sep 2015 23:59:53 +0000 (23:59 +0000)]
Merge "Fix use of wrong storage pools for NetApp Drivers"

9 years agoMerge "Replace soft_delete in volume_type_access_remove"
Jenkins [Tue, 22 Sep 2015 22:28:50 +0000 (22:28 +0000)]
Merge "Replace soft_delete in volume_type_access_remove"

9 years agoSetup LVM_SYSTEM_DIR earlier in LVM.__init()
Fergal Mc Carthy [Tue, 22 Sep 2015 20:39:48 +0000 (16:39 -0400)]
Setup LVM_SYSTEM_DIR earlier in LVM.__init()

When using a Cinder specific lvm.conf file, we need to setup the
LVM_SYSTEM_DIR setting in the LVM.LVM_CMD_PREFIX before issuing
any LVM commands to ensure that the correct lvm.conf is used.

The issue was uncovered when testing on a Cinder Volume host setup
as follows:
  * Cinder is configured to use an LVM backend, backed by the
    cinder-volumes VG, which already exists.
  * /etc/lvm/lvm.conf rejects all devices other than those on which
    the operating system is installed.
  * /etc/cinder/lvm.conf accepts only the devices backing the
    cinder-volumes LVM VG

The cinder-volume service would fail to initialise the specified LVM
backend because the cinder.brick.local_dev.lvm.LVM.__init__() call
checks for the existence of the specified VG before
    LVM_SYSTEM_DIR=/etc/cinder
has been added to the LVM.LVM_CMD_PREFIX, and thus fails to find the
VG, and raises an exception.

By moving the setup of the LVM_SYSTEM_DIR environment variable in
LVM.LVM_CMD_PREFIX to happen before any LVM commands are issued we
ensure that all subsequent LVM commands are run against the correct
lvm.conf file.

Change-Id: I6551b045ab48ee60c3ee4cd15c13058635c144c2
Closes-Bug: #1498480

9 years agoMerge "Ignore Forbidden error on quotas-get for nested projects"
Jenkins [Tue, 22 Sep 2015 19:55:25 +0000 (19:55 +0000)]
Merge "Ignore Forbidden error on quotas-get for nested projects"

9 years agoAdd "fast8" tox env
Eric Harney [Tue, 22 Sep 2015 19:43:51 +0000 (15:43 -0400)]
Add "fast8" tox env

This replicates the run_tests.sh -8 behavior, running
flake8 only on changes made in the last commit and
working tree.

Change-Id: Iebd5746c78e840225f0860843c77f4c638877c26

9 years agoAllow c-vol backends to start when some backends fail to load
Eric Harney [Mon, 21 Sep 2015 18:29:19 +0000 (14:29 -0400)]
Allow c-vol backends to start when some backends fail to load

Currently, if a c-vol backend fails to load due to an error in
the module startup process (like a volume driver's __init__ or
dependency import failure), the c-vol process halts completely.

Instead, catch that backend failure, log it, and allow other
backends in enabled_backends to still start up and run.

Note that this is not applicable for failures that allow
drivers to load and remain "uninitialized" -- this is for
failures that occur prior to that point.

Closes-Bug: #1497413

Change-Id: If183b9e3d21777cddf713c2dc88dc80ae7cfe01d

9 years agoFix use of wrong storage pools for NetApp Drivers
Goutham Pacha Ravi [Fri, 26 Jun 2015 16:32:06 +0000 (12:32 -0400)]
Fix use of wrong storage pools for NetApp Drivers

When using NetApp drivers, all available flexvols on
a datastore are being reported to the Cinder Scheduler
as available storage pools. This allows Cinder volumes
to be created on flexvols not designated for OpenStack.

This commit fixes the problem by delimiting which pools are
eligible for provisioning via a configuration parameter
'netapp_pool_name_search_pattern'. This allows
the Cinder drivers to operate against a restricted
set of storage containers.

DocImpact
Co-Authored-By: Rushil Chugh <rushil@netapp.com>
Co-Authored-By: Michael Price <michael.price@netapp.com>
Closes-Bug: #1493399
Change-Id: I7b6f2205470ecbbcb165889db19e1168117dd0b2

9 years agoVMware: Remove VMDK driver for ESX server
Vipin Balachandran [Fri, 14 Aug 2015 06:15:51 +0000 (11:45 +0530)]
VMware: Remove VMDK driver for ESX server

The VMDK driver for ESX server was deprecated during
Icehouse release. Configuring Cinder to use this driver
prints a warning that the driver is deprecated and
will be removed in the Juno release.

This patch removes the deprecated VMDK driver for
ESX server.

Closes-Bug: #1494701
Change-Id: I8c0ad19cf09016c112d242f93b24c6742acaa1e8