Vipin Balachandran [Sun, 29 Jun 2014 13:32:20 +0000 (19:02 +0530)]
VMware: Volume from non-streamOptimized image
Volume creation from non-streamOptimized images (preallocated/thin/sparse)
has following problems:
1) Sparse vmdk image is not converted to appropriate virtual disk type
suitable for attaching to a nova instance.
2) The adapter type in image meta-data is ignored while creating volumes.
3) The vmware:vmdk_type extra_spec property is ignored.
4) Virtual disk extent operation is called with a wrong parameter which
might result in unwanted disk provisioning type conversion.
This patch fixes the first 3 problems using the following workflow:
a) Create a disk-less backing.
b) Create a virtual disk (single flat extent) from the non-streamOptimized
image
c) Attach the virtual disk to the backing
d) Clone the backing (if needed) to perform disk provisioning type conversion
Closes-Bug: #
1287176
Closes-Bug: #
1287185
Closes-Bug: #
1284284
Change-Id: Ib7e9fae81d69d2fe490a4b603337f3d5cee1138c
Vipin Balachandran [Thu, 10 Jul 2014 06:55:49 +0000 (12:25 +0530)]
VMware:Disk type conversion during clone backing
This patch adds support for converting virtual disk provisioning
type during clone backing operation. Currently volume creation from
preallocated/sparse image doesn't honour the disk type property in
the volume extra spec. The workflow to address this issue requires
disk provisioning type conversion during clone.
Partial-Bug: #
1287176
Partial-Bug: #
1287185
Change-Id: Ie493768445b838d3e9447edb76d9845e972bc7c3
Vipin Balachandran [Sun, 29 Jun 2014 13:30:04 +0000 (19:00 +0530)]
VMware:Support for attaching disk to backing
This change adds support for attaching a virtual disk to an existing
backing VM. Currently volume creation from preallocated/sparse image doesn't
honour the disk type in the volume extra spec and adapter type in the image
meta-data. The workflow to address these issues requires the above mentioned
method. This change also sets the disk size of backing to at least 1MB which
is the minimum required by VIM APIs.
Closes-Bug: #
1340315
Partial-Bug: #
1284284
Partial-Bug: #
1287185
Partial-Bug: #
1287176
Change-Id: Icdb1f26d5c8eaa42408a14c57c7394d96dda078f
Jenkins [Thu, 31 Jul 2014 07:01:01 +0000 (07:01 +0000)]
Merge "Skip incompatible test on OSX"
Jenkins [Wed, 30 Jul 2014 21:32:01 +0000 (21:32 +0000)]
Merge "Change corrupted spelling mistakes"
sanuptpm [Tue, 29 Jul 2014 14:55:19 +0000 (20:25 +0530)]
Change corrupted spelling mistakes
Change-Id: I62b4d94d135fa620fac071a5196957c11bb03b77
John Griffith [Wed, 30 Jul 2014 02:20:31 +0000 (20:20 -0600)]
Skip incompatible test on OSX
Can't seem to get the test:
cinder.tests.test_volume.VolumeTestCase.test_delete_no_dev_fails
to run right, tried macports and homebrew versions of fileutils
but still get makedir failures. Give up and just detect if OSX
and skip.
Change-Id: Ic2f7603cf2960e2fbaac9fce677461f60ded541d
Jenkins [Tue, 29 Jul 2014 20:48:43 +0000 (20:48 +0000)]
Merge "Fix glance metadata SQL query performance"
Jenkins [Tue, 29 Jul 2014 19:22:32 +0000 (19:22 +0000)]
Merge "Remove cinder-rpc-zmq-receiver"
Jenkins [Tue, 29 Jul 2014 18:38:49 +0000 (18:38 +0000)]
Merge "Add storageHost content to volume messages."
Jenkins [Tue, 29 Jul 2014 18:38:27 +0000 (18:38 +0000)]
Merge "HP 3PAR retype implementation"
Jenkins [Tue, 29 Jul 2014 18:38:07 +0000 (18:38 +0000)]
Merge "VMware:Support for create disk and disk descriptor"
Jenkins [Tue, 29 Jul 2014 17:59:16 +0000 (17:59 +0000)]
Merge "Add hacking check for vim headers"
Jenkins [Tue, 29 Jul 2014 17:14:14 +0000 (17:14 +0000)]
Merge "Remove Hyper-V dependency in the Windows Cinder Volume Driver"
Mathieu Gagné [Tue, 29 Jul 2014 15:57:15 +0000 (11:57 -0400)]
Fix glance metadata SQL query performance
The query built to retrieve glance metadata associated to a volume
was sub-optimal: all rows of volume_glance_metadata were returned.
Fix it by properly joining the 2 tables with volume_id field.
Closes-bug: #
1349936
Change-Id: Ic09414de769e71f8b8f99113838af48d8520e187
Jay S. Bryant [Tue, 29 Jul 2014 03:03:42 +0000 (22:03 -0500)]
Add hacking check for vim headers
We have a number of commits that have removed the vim
headers from openstack/common components as well as
commits to remove the headers from drivers. We, however,
haven't put a hacking check in to make sure that they don't
sneak back into the code as is evidenced by the fact that some
files failed the check.
This commit adds in the check, the associated test cases and
fixes the couple of files that had a vim header again.
Change-Id: I727bd2aff7ac7b909c9e7cd4f3639f5873793e97
Jenkins [Tue, 29 Jul 2014 02:11:05 +0000 (02:11 +0000)]
Merge "Get updated model info on volume transfer"
Jenkins [Tue, 29 Jul 2014 01:11:55 +0000 (01:11 +0000)]
Merge "Sync log from oslo-incubator for isEnabledFor fix"
John Griffith [Mon, 28 Jul 2014 17:35:54 +0000 (11:35 -0600)]
Get updated model info on volume transfer
On some drivers CHAP credentials are tied to accounts
which may be unique for each OS and/or backend Tenant.
For example:
Volume is created with project_id xyz
Backend creates an account for xyz with specific CHAP
Volume is transferred to project_id abc
Currently we don't update the model_info, so even though
on the backend we updated the owner and CHAP settings we
never propogated that back up to the DB object so the volume
can't be used by the new owner.
This patch just adds an option to return model_update
on the accept_transfer call to the driver and updates
the db accordingly.
Also adds a call in the SF driver to actually get the
new model info to be fed back to the manager.
Change-Id: Ie0447cdad69c4fbee99b4b6b1d3cacdfdd14137d
Closes-Bug: #
1349475
Jenkins [Mon, 28 Jul 2014 19:32:57 +0000 (19:32 +0000)]
Merge "Adds storwize_svc_npiv_compatibility_mode flag to Storwize/SVC driver"
Matt Riedemann [Mon, 28 Jul 2014 13:19:23 +0000 (06:19 -0700)]
Sync log from oslo-incubator for isEnabledFor fix
Sync log.py to get commit:
726d00a Adjust oslo logging to provide adapter is enabled for
Which is needed to fix an issue with logging in flow_utils
when using python 2.6.
This also brings in dependencies.
Changes:
jsonutils
---------
ef37e03 Added missing jsonutils.dump() function
log
---
726d00a Adjust oslo logging to provide adapter is enabled for
433fa0b Make logging_context_format_string optional in log.set_defaults
ac92c06 Add default log level for websocket
5fd77eb Ability to customize default_log_levels for each project
4d9328c Python 3: enable tests/unit/test_log.py
cb5a804 Move `mask_password` to strutils
3310d8d update new requests logger to default WARN
strutils
--------
cb5a804 Move `mask_password` to strutils
Change-Id: Iea344e4bd3a612cd4110143e4fbb8e2fdfd88165
Closes-Bug: #
1343544
Jenkins [Mon, 28 Jul 2014 06:14:37 +0000 (06:14 +0000)]
Merge "Modify the index migration slightly for backport"
Jenkins [Mon, 28 Jul 2014 03:18:56 +0000 (03:18 +0000)]
Merge "Set python hash seed to 0 in tox.ini"
Jenkins [Sun, 27 Jul 2014 23:54:49 +0000 (23:54 +0000)]
Merge "Fix no handlers could be found issue"
Jenkins [Sun, 27 Jul 2014 21:13:02 +0000 (21:13 +0000)]
Merge "Remove cinder-clear-rabbit-queues"
Vishvananda Ishaya [Fri, 25 Jul 2014 20:30:21 +0000 (13:30 -0700)]
Modify the index migration slightly for backport
If we choose to backport this fix, the migration should be catching
an operational error. Also add a log statement as requested by the
nova review.
Change-Id: Ib33b8711900db9dc2826a099ff3cc6adffc8babb
Partial-bug:
1348720
Thang Pham [Sat, 26 Jul 2014 01:02:07 +0000 (21:02 -0400)]
Remove cinder-clear-rabbit-queues
cinder-clear-rabbit-queues should be removed because it does not
appear to be widely used and there is no user documentation for
it. Also, RabbitMQ now includes a management plugin and CLI,
rabbitmqadmin, that allows you to delete queues and exchanges.
This script was also removed in nova as part of
https://review.openstack.org/#/c/40355/.
DocImpact: The RabbitMQ management plugin ships with rabbitmqadmin.
It supports RabbitMQ version 2.8.x and above.
Closes-Bug: #
1348859
Change-Id: I77bb54065280771e5cc64835af9c584626ecf8b8
Thang Pham [Sat, 26 Jul 2014 00:53:02 +0000 (20:53 -0400)]
Remove cinder-rpc-zmq-receiver
cinder-rpc-zmq-receiver should be removed as part of the switch to
oslo.messaging. It is now replaced with oslo-messaging-zmq-receiver.
Change-Id: I1fd7d7571bb5660bf77e7664f35052db29ebea57
Closes-Bug: #
1348856
Thang Pham [Sat, 26 Jul 2014 00:37:06 +0000 (20:37 -0400)]
Remove reattach function in cinder-manage
The reattach function in cinder-manage depends on
db.instance_get, which is not available in cinder db.
db.instance_get is only available in nova db. Hence, the
reattach function should be removed from cinder-manage.
Change-Id: If33bf2f281735bd530641c1e6d15e9645f38b4b4
Closes-Bug: #
1167931
Clark Boylan [Fri, 25 Jul 2014 21:33:10 +0000 (14:33 -0700)]
Set python hash seed to 0 in tox.ini
New tox (>=1.7.0) sets a random python hash seed by default. This is
generally good for testing because it will help keep projects working
regardless of the hash seed, but cinder unittests don't currently pass
with a random hash seed so set it to the python default seed.
This change will allow us to use new tox again and remove the
restriction on tox<=1.6.1 to run unittests.
Redundant setenvs for specific test envs are removed to prevent them
from overriding the PYTHONHASHSEED value.
Note this change will need to be backported to the stable branches to
keep unittests there working with new tox as well.
Change-Id: Ia55031528d082a1b11da6890447c5584e9e27551
Mark Sturdevant [Fri, 4 Jul 2014 00:34:46 +0000 (17:34 -0700)]
HP 3PAR retype implementation
Add retype support to the HP 3PAR driver. The driver will modify the
volume's current userCPG, snapCPG provisioningType, and QOS settings, as
needed, to make the volume behave appropriately for the new type. The
existing retype framework handles what to do if the driver cannot retype
(when it returns False or raises an exception).
The combination of optional type-specified VV set, old-style scoped
extra-specs and QOS-specs will be resolved using existing code. So no
new interpretation of a mixed-up type specifications will be introduced
(no need to re-document these driver caveats).
Other than the usual validity checking, the 3PAR retype will have one
limitation. Retype will not be allowed if the volume has snapshots and
the retype would require modifying/tuning the snapCPG or userCPG.
Change-Id: I6c7816233635e369dd7ff349c2a437b22a849a84
Implements: blueprint retype-hp-3par
Vishvananda Ishaya [Fri, 25 Jul 2014 17:15:27 +0000 (10:15 -0700)]
Add index for reservations on (deleted, expire)
the query for expire_reservations currently does a full table scan.
This adds an index so frequent invocations of expire does not bog
down the database.
Change-Id: Ic6f6e4262746753d869ad37b8aaaa5ffc1c4efef
Resolves-bug:
1348720
Jenkins [Sat, 19 Jul 2014 21:35:17 +0000 (21:35 +0000)]
Remove Hyper-V dependency in the Windows Cinder Volume Driver
Currently, the Windows Cinder Volume driver depends on the Hyper-V
feature in order to be able to access the WMI namespaces that
are used for some of the volume related operations.
Those WMI calls must be urgently replaced with Win32 calls in order
to provide CI tests performed on Windows Storage Server edition.
Change-Id: Ib4b8bccee3c7ee86e6cc44e1b16d20d455e61612
Closes-Bug: #
1346496
Jenkins [Fri, 25 Jul 2014 00:27:48 +0000 (00:27 +0000)]
Merge "Make manage/unmanage admin only"
Walter A. Boring IV [Thu, 24 Jul 2014 21:52:51 +0000 (14:52 -0700)]
Fix no handlers could be found issue
This patch fixes the error message during
unit tests for 2 issues.
1) test_migrations tries to LOG and exception before
setUp is called because of the method decorator.
2) the hp_lefthand_rest_proxy tries to LOG an exception
for a missing import.
Change-Id: I11d2c9320c0a216b5795207488b906795d27b1e0
Closes-Bug: #
1341752
yehia-beyh [Wed, 23 Jul 2014 18:39:38 +0000 (14:39 -0400)]
Add storageHost content to volume messages.
Implements: Volume notification Storage Host entry in the payload
Closes-Bug:
1333273
Change-Id: I370eaeaafd8fd4a8888f8250b49dffcbffb3a876
Jay S. Bryant [Thu, 24 Jul 2014 20:05:33 +0000 (15:05 -0500)]
Add hacking check for explicit import of _
Unit tests are not guaranteed to discover whether
the _() function has been explicitly imported to a file.
To ensure that people do not add messages with _() translations
without importing the function, I am adding this hacking check
to enforce the import of _ when it is needed.
The commit includes fixes for offenders found by the new
check.
Change-Id: I616dce6a9da461b3ad2cfaf5e114a2aaa8ced9fa
Closes-Bug: #
1348129
John Griffith [Thu, 24 Jul 2014 06:05:08 +0000 (00:05 -0600)]
Make manage/unmanage admin only
Manage/Unmanage functionality should be admin
only commands. Make this the default in the policy file.
Change-Id: Ieb71891cdedd36f862f3eaae50174e294417b122
Jenkins [Thu, 24 Jul 2014 19:06:48 +0000 (19:06 +0000)]
Merge "Add hacking test"
Vipin Balachandran [Sun, 29 Jun 2014 13:27:00 +0000 (18:57 +0530)]
VMware:Support for create disk and disk descriptor
This change adds utility methods for creating a virtual disk and virtual
disk descriptor. Currently volume creation from preallocated image doesn't
honour the disk type in the volume extra spec and adapter type in the image
meta-data. The workflow to address these issues require support for the
above mentioned methods.
Change-Id: If8ec1fd6c60d26552e5fb58b8bb16a8cc87d9d28
Partial-Bug: #
1284284
Partial-Bug: #
1287185
Jenkins [Thu, 24 Jul 2014 05:18:43 +0000 (05:18 +0000)]
Merge "Implements new 'bootable' option for manage existing volume."
Jenkins [Thu, 24 Jul 2014 05:14:20 +0000 (05:14 +0000)]
Merge "Fixes Cinder volume upload to image on windows"
Geraint North [Mon, 21 Jul 2014 20:14:45 +0000 (21:14 +0100)]
Implements new 'bootable' option for manage existing volume.
A 'bootable' option (defaults to False) can be passed as part of
the HTTP POST request to manage an existing volume. This is
passed into the database when the volume is created.
Also changes all drivers to use the more agnostic keys
'source-name' or 'source-id' when specifying
which existing volume to manage. This change is to support the
cinderclient change in https://review.openstack.org/#/c/76216/
to make it easier for CLI users to manage existing volumes
without having to know the implementation-specifics of the driver.
Change-Id: I58eaa75181fd0b606628584308fd83bdeaa8b64f
Implements: blueprint add-export-import-volumes
liuqing [Tue, 1 Jul 2014 09:59:57 +0000 (17:59 +0800)]
Add hacking test
There is no test for cinder/hacking/check.py, the patch add test
for it. Also update the location in check.py to reference the
right path to add test cases.
Change-Id: I094e712339e53380ce4ed58b60beda1c4f53d5c1
ClaudiuNesa [Tue, 22 Jul 2014 15:16:15 +0000 (18:16 +0300)]
Fixes Cinder volume upload to image on windows
Due to fact that when uploading a volume to an image the file is
opened in text mode and the different line endings style on
windows glance client won't be able to upload the desired file.
The solutions is to simply open the file in binary mode when
performing this action.
Change-Id: I51b084ce38e1aaad4ded63b75b097137dedc088c
Closes-bug:
1346911
Jenkins [Wed, 23 Jul 2014 12:56:09 +0000 (12:56 +0000)]
Merge "Add cinder volume driver support for Nimble Storage."
Jenkins [Wed, 23 Jul 2014 01:08:31 +0000 (01:08 +0000)]
Merge "Add explicit import of _ to hp_3par_fc and iscsi"
Jenkins [Tue, 22 Jul 2014 23:23:54 +0000 (23:23 +0000)]
Merge "Use immutable default values for args"
Jay S. Bryant [Tue, 22 Jul 2014 23:06:29 +0000 (18:06 -0500)]
Add explicit import of _ to hp_3par_fc and iscsi
Messages using translation were added to the hp_3par_fc and
hp_3par_iscsi files but an explicit import of gettextutils _ was not
included.
This fixes that problem.
Change-Id: I2555860c6525a00295e823ab8c826b2bec6a3098
Closes-Bug:
1347184
Geraint North [Mon, 21 Jul 2014 21:23:48 +0000 (22:23 +0100)]
Adds storwize_svc_npiv_compatibility_mode flag to Storwize/SVC driver
This configuration option allows the driver to function in an
environment where an attach operation occurs before the virtual FC
ports are logged into the fabric.
Today's behaviour (which is maintained as default behaviour) is to
only build the initiator_target_map for initiator ports that are
logged into the fabric, and error if there are no such ports.
If this new flag is set to True, then if no initiator ports are
found on the fabric, ALL initiator ports are placed into the
initiator_target_map, rather than none, which is the case today.
Closes-Bug:
1346622
Change-Id: Ie722612bc5a9af2816348392c0c39da003b99028
Jenkins [Tue, 22 Jul 2014 02:04:23 +0000 (02:04 +0000)]
Merge "Configure write cache option of tgtd iscsi driver"
Jenkins [Tue, 22 Jul 2014 02:04:15 +0000 (02:04 +0000)]
Merge "Fix failure of source volume deletion in migrate_volume_completion"
Jenkins [Tue, 22 Jul 2014 00:42:40 +0000 (00:42 +0000)]
Merge "Add additional explicit imports of _ where needed"
Alexei Kornienko [Thu, 3 Jul 2014 12:38:50 +0000 (15:38 +0300)]
Switch to use oslo.db
oslo.db first stable release has been cut and we can start using it
instead of openstack/common/db/* code which is now marked obsolete.
Change-Id: Ib350e8d1dcec3be707e3b1679c70202619256269
Jay S. Bryant [Mon, 21 Jul 2014 01:14:27 +0000 (20:14 -0500)]
Add additional explicit imports of _ where needed
It appears that I missed some of the needed explicit
imports of _. I have now run through all the /bin/cinder-*
functions and ensured that they can be properly started.
This patch adds additional imports of _ and also changes
cinder-rtstool to use the 'cinder' domain as was suggested by
Duncan Thomas in the first review cycle.
Change-Id: I6477093cb817b5b9506dd3787f027e073c51f37d
Closes-Bug:
1345789
Jenkins [Sat, 19 Jul 2014 21:35:17 +0000 (21:35 +0000)]
Merge "Fix performance issues with brocade zone driver."
Jenkins [Sat, 19 Jul 2014 06:05:43 +0000 (06:05 +0000)]
Merge "Add some log info for NoValidHost"
Jenkins [Sat, 19 Jul 2014 04:48:32 +0000 (04:48 +0000)]
Merge "Don't leave snapshots on the floor"
Tomoki Sekiyama [Sat, 19 Jul 2014 00:36:56 +0000 (20:36 -0400)]
Fix failure of source volume deletion in migrate_volume_completion
In VolumeManager.migrate_volume_completion(), when volume_status is not
'retyping', status_update is not set. However, status_update is always
referenced as dictionary on volume deletion path, so it fails to delete
migration source volume. This patch fixes the issue.
Change-Id: I06889dae326b9557e044f1712d9f3205bb68a953
Closes-Bug:
1344341
Thang Pham [Fri, 18 Jul 2014 15:29:24 +0000 (11:29 -0400)]
Remove hard coded reference from gettextutils.py
The following commit
4fdcbff96790753a4c1a508600e5d78b2c3b7172
introduced a few hard coded references to
'/home/jsbryant/cinder-dev/gettextutilsSync/' in
cinder/openstack/common/gettextutils.py. This patch will
removed those references.
Change-Id: Ib880863d275ac102c1eb723972d1ebd2eb3405a1
Closes-Bug: #
1344072
Jenkins [Fri, 18 Jul 2014 05:03:14 +0000 (05:03 +0000)]
Merge "XIV volume manage/unmanage support"
Jay S. Bryant [Tue, 8 Jul 2014 19:04:56 +0000 (14:04 -0500)]
Enable lazy translation for Cinder
This patch is the final step for getting lazy translation
re-enabled for Cinder. It removes the use of gettextutils.install()
which is no longer needed with the addition of the explicit import
of _() in all of Cinder's files. The configuration of 'cinder' catalog
is handled by gettextutils.
The install() function is replaced by gettextutils.enable_lazy() which
properly enables lazy translation when _() or _LX() is used.
Change-Id: I79e705f3852e8aa34034015199d56a8b23aeb8ef
Implements-Blueprint: i18n-enablement
Jay S. Bryant [Thu, 26 Jun 2014 21:22:17 +0000 (16:22 -0500)]
Explicitly import _() in Cinder code
To ensure that logs are properly translated and logged to
the Cinder log files (using the Cinder message catalogs)
we need to explicitly import _() in any python files that
use the _() function.
Closes-bug:
1306275
Related-Blueprint: i18n-enablement
Change-Id: I3cf1f1d63d5f8bd8ffd007104691f914e3fd8538
Jenkins [Wed, 16 Jul 2014 22:29:56 +0000 (22:29 +0000)]
Merge "Remove definition of Python Source Code Encodings"
Angela Smith [Wed, 4 Jun 2014 19:12:15 +0000 (12:12 -0700)]
Fix performance issues with brocade zone driver.
Removed firmware checks from common path as the ssh invoke_shell
was taking 5 seconds to complete for each firmware check.
Refactored to only do cfgsave in non-activate case.
Removed extra calls to switch to get the active zoneset.
Closes-Bug: #
1292119
Change-Id: Ie1c2c0c603f6dd68439f2c2db74b21ea2dd0fc11
John Griffith [Wed, 16 Jul 2014 14:49:37 +0000 (08:49 -0600)]
Don't leave snapshots on the floor
The current cloning process in the LVM
driver uses a snapshot to do the data
copy in the background. Trouble here
is that if the creation or activation
of the new volume fails, we don't
cleanup the snapshot we created.
Just move the create_volume and activate
calls down into the try block so the finally
clause can do the cleanup for us.
Change-Id: If0fbab9d9f39102cdc7d287527be22c4a2b35934
Closes-Bug: #
1312718
John Griffith [Wed, 16 Jul 2014 13:34:16 +0000 (13:34 +0000)]
Add some log info for NoValidHost
Currently when a create call fails due to a
misconfiguration on the backend, or a problem
with satisfying the extra-specs from the filter
scheduler, the only thing you get in the logs is
a "No valid host".
This patch just adds a tiny bit more info to give us
a better idea where we're at.
First the exception shouldn't be setup with "reason=""",
so at least add "reason=no weighed hosts found".
Second, add a warning message prior to getting to that
point when we fail to find a host that satisfies the
{extra/qos}-specs that were requested, and include what
was being requested.
Change-Id: I2ce65b973196f673bac455613a6f8626320339ba
Jenkins [Wed, 16 Jul 2014 11:23:24 +0000 (11:23 +0000)]
Merge "Cinder-api service throws error on SIGHUP signal"
Jenkins [Wed, 16 Jul 2014 09:42:21 +0000 (09:42 +0000)]
Merge "Add affinity/anti-affinity filters"
Ivan Kolodyazhny [Mon, 14 Jul 2014 21:13:54 +0000 (00:13 +0300)]
Use immutable default values for args
Default mutable values (e.g. arg1=[], arg2={}) could have side effects
in Python. So using None as a default value is safer.
Added hacking checks for default mutable args.
Closes: bug #1327473
Change-Id: I7055e534b91df794550de6c3b243324e582d4430
Jenkins [Wed, 16 Jul 2014 04:07:17 +0000 (04:07 +0000)]
Merge "Update cinder generate_sample script"
Jenkins [Tue, 15 Jul 2014 21:06:24 +0000 (21:06 +0000)]
Merge "Fix the section name in CONTRIBUTING.rst"
Jenkins [Tue, 15 Jul 2014 21:03:42 +0000 (21:03 +0000)]
Merge "Ensure FC ZoneManager is called"
John Griffith [Tue, 15 Jul 2014 17:45:17 +0000 (11:45 -0600)]
Update cinder generate_sample script
Cinder's generate sample script has fallen a
bit out of date and was no longer working properly
in local venv.
This patch updates it with a working version that
reads the rc file and makes some other updates.
Even better, we'll update the tox.ini file here so
that it actually works, and finally add some more
info to the error message when update check fails
to make is obvious how to run these appropriately.
Change-Id: I2389910d8ece6f737a9609ce4aa05263d9293e14
Alon Marx [Sun, 13 Jul 2014 08:53:41 +0000 (11:53 +0300)]
XIV volume manage/unmanage support
XIV support for managing and unmanaging volumes.
Partially Implements: blueprint add-export-import-volumes
Change-Id: I305d2652709181bacd9f5b21f0201858f91f7a15
Zhiteng Huang [Tue, 28 Jan 2014 06:23:04 +0000 (14:23 +0800)]
Add affinity/anti-affinity filters
Cinder has done a good job hiding the details of storage backends from end
users by using volume types. However there are use cases where users who
build their application on top of volumes would like to be able to 'choose'
where a volume be created on. How can Cinder provide such capability without
hurting the simplicity we have been keeping? Affinity/anti-affinity is one
of the flexibility we can provide without exposing details to backends.
The term affinity/anti-affinity here is to to describe the relationship
between two sets of volumes in terms of location. To limit the scope, we
describe one volume is affinity with the other one only when they reside in
the same volume back-end (this notion can be extended to volume pools if
volume pool support lands in Cinder); on the contrary, 'anti-affinity'
relation between two sets of volumes simply implies they are on different
Cinder back-ends (pools).
This affinity/anti-affinity filter filters Cinder backend based on hint
specified by end user. The hint expresses the affinity or anti-affinity
relation between new volumes and existing volume(s). This allows end
users to provide hints like 'please put this volume to a place that is
different from where Volume-XYZ resides in'.
This change adds two new filters to Cinder - SameBackendFilter and
DifferentBackendFilter. These two filters will look at the scheduler hint
provided by end users (via scheduler hint extension) and filter backends by
checking the 'host' of old and new volumes see if a backend meets the
requirement (being on the same backend as existing volume or not being on
the same backend(s) as existing volume(s)).
For example:
Volume A is on 'backend 1', to create Volume B on the same backend as A,
use:
cinder create --hint same_host=VolA-UUID SIZE
To create Volume C on different backend than that of A, use:
cinder create --hint different_host=VolA-UUID SIZE
Now, to create Volume D on different backend other than those of A and C,
use:
cinder create --hint different_host=VolA-UUID --hint
different_host=VolC-UUID SIZE
or:
cinder create --hint different_host="[VolA-UUID, VolC-UUID]" SIZE
implements bp: affinity-antiaffinity-filter
DocImpact
Change-Id: I19f298bd87b0069c0d1bb133202188d3bf65b770
John Griffith [Mon, 14 Jul 2014 23:10:18 +0000 (17:10 -0600)]
Mock out time.sleep in storwize unit tests
The Storwize driver has issues that required them
to add a sleep 1 on init of the driver.
No big deal, but causes unit tests to take a very long
time waiting for the "time.sleep(1)" on every single
unit test that calls init.
This patch just mocks out the time.sleep so we don't have
to do the silly waiting in unit tests.
Change-Id: I10fc3d00252a7e7b90085cb308fb9c6c7e1f5ea7
Jenkins [Mon, 14 Jul 2014 19:24:49 +0000 (19:24 +0000)]
Merge "Sync gettextutils.py from oslo-incubator"
liuqing [Mon, 30 Jun 2014 15:18:05 +0000 (23:18 +0800)]
Fix the section name in CONTRIBUTING.rst
The name of the section "If you're developer, start here"
has changed in the wiki, now is "If you're a developer".
This commit updates it to correctly refer to the
proper section.
Change-Id: Ibc5899d2577187b854213690731136edd4cd74ab
Ankit Agrawal [Fri, 4 Jul 2014 10:41:17 +0000 (03:41 -0700)]
Cinder-api service throws error on SIGHUP signal
Added reset method in WSGIService class.
After adding reset method when SIGHUP signal is sent to
wsgi service parent process,then it sends SIGHUP signal
to all of its child processes. Each child process handles
SIGHUP signal by first stopping the service and then calls
service start method again. When it stops the service, it
kills the eventlet thread, which internally closes the wsgi
server socket object. This server socket object is now not
usable again and it throws following error, while restarting
the service:
error: [Errno 9] Bad file descriptor
To resolve 'Bad file descriptor' error, creating duplicate
socket object, every time service starts.
Closes-Bug: #
1337796
Change-Id: Iab32a3fe230a11692a8cad274304214247d6c2c6
Jenkins [Sun, 13 Jul 2014 23:25:52 +0000 (23:25 +0000)]
Merge "Clean up base Volume Driver"
Jenkins [Sat, 12 Jul 2014 18:30:31 +0000 (18:30 +0000)]
Merge "Correct misspelled word"
Jenkins [Fri, 11 Jul 2014 15:58:32 +0000 (15:58 +0000)]
Merge "Fixes EqualLogic volume live migration."
Jenkins [Thu, 10 Jul 2014 23:55:31 +0000 (23:55 +0000)]
Merge "Fix begin_detach logic"
Jenkins [Thu, 10 Jul 2014 23:09:46 +0000 (23:09 +0000)]
Merge "Sync processutils and log from oslo"
Jenkins [Thu, 10 Jul 2014 21:19:59 +0000 (21:19 +0000)]
Merge "volume_image_metadata missing from volume list"
John Griffith [Wed, 9 Jul 2014 21:34:50 +0000 (21:34 +0000)]
Clean up base Volume Driver
This is a preliminary cleanup of the base
Volume Driver to prepare for adding new
architecture which keeps the Control calls
and connection portions of the drivers
seperated from each other.
This doesn't break existing compatability or drivers
but just makes some of the necessary tweaks and additions
to enable implementation of decoupled Control and Data
sides of the Volume drivers.
POC for this proposal is here:
https://review.openstack.org/#/c/104701/
FYI check-up2-date is going to be the death of us all!
Change-Id: Ifc844c49ee9ff1580d5da0879e7d499bed72dac1
rajinir [Fri, 27 Jun 2014 19:53:07 +0000 (14:53 -0500)]
Fixes EqualLogic volume live migration.
Fixes the issue by enabling the multihost flag for the volume and also
discovering the correct access record to delete when terminating
the connection from the source vm and then deleting the record.
Change-Id: If3580c84a4efd3a58c19e9e74d0a13eb68e67031
Closes-Bug:
1296677
Jenkins [Thu, 10 Jul 2014 11:00:26 +0000 (11:00 +0000)]
Merge "Fixed some typos in the cinder codebase"
Robert Mizielski [Thu, 10 Jul 2014 10:17:13 +0000 (12:17 +0200)]
Correct misspelled word
Change-Id: I1bb54e96376a23aa3b28a06ec93fd13cc9dc5438
Jenkins [Thu, 10 Jul 2014 09:23:57 +0000 (09:23 +0000)]
Merge "Remove $sqlite_db from default database connection"
Jenkins [Thu, 10 Jul 2014 08:45:59 +0000 (08:45 +0000)]
Merge "Use PyCrypto to generate randomness passwords"
Eiichi Aikawa [Wed, 9 Jul 2014 08:03:39 +0000 (17:03 +0900)]
Remove definition of Python Source Code Encodings
The definition of Python Source Code Encodings is no longer needed.
This patch remove those.
Change-Id: I3eebb245e9e41b92c9ec82ebbd2dd6b417704819
Abhishek Lekshmanan [Wed, 2 Jul 2014 06:10:54 +0000 (11:40 +0530)]
Fixed some typos in the cinder codebase
Change-Id: Ifb8778d20aa1534a7abca3fd6705493327d2893e
Jay S. Bryant [Mon, 7 Jul 2014 20:21:58 +0000 (15:21 -0500)]
Sync gettextutils.py from oslo-incubator
This pulls in the latest gettextutils.py from oslo-incubator.
The primary reason for this sync is to get commit
3d90045d2d1ce1df89f75937f415e3982e111063 which backports a
change from the new i18n library to check lazy enablement
at runtime. Adding this change makes it possible to remove
the global enablement of lazy translation through
gettextutils.install(). Instead we will use gettextutils.enable_lazy()
with explicit imports of _() in each file where _() is used.
The change to remove gettextutils.install() and to add the
explicit _() imports will come in a dependent patch.
Current HEAD in OSLO:
--------------------
Merge:
3d90045d2d1ce1df89f75937f415e3982e111063
Date: Mon, 07 Jul 2014 17:55:18 +0000
Merge "Backport code for i18n to check lazy at runtime"
--------------------
Additional changes being merged (newest to oldest):
--------------------
de4adbc4 - pep8: fixed multiple violations
9912e5df - Add API for creating translation functions
6cc96d05 - Fix test_gettextutils on Python 3
--------------------
related - blueprint: i18n-enablement
Change-Id: I4706b89b0b64c5816a1a022b6cd1dfa01b29b5dc
Jenkins [Wed, 9 Jul 2014 20:44:56 +0000 (20:44 +0000)]
Merge "Updated from global requirements"
Jenkins [Wed, 9 Jul 2014 19:46:05 +0000 (19:46 +0000)]
Merge "Fix unsaved exception in backup/drivers"
Ivan Kolodyazhny [Wed, 9 Jul 2014 16:08:18 +0000 (19:08 +0300)]
Use PyCrypto to generate randomness passwords
Standard random generator is not secure enouph. Use PyCrypto instead.
Updated requirements.txt with pycrypto>=2.6 according to
global-requirements
Change-Id: I38fd47a30893a946de30fad95c57759781312be6
Closes: bug #1319639
Jenkins [Wed, 9 Jul 2014 16:52:36 +0000 (16:52 +0000)]
Merge "Enable E121,E122,E123,E126,E128 hacking rules"
Cory Stone [Tue, 8 Jul 2014 20:01:04 +0000 (15:01 -0500)]
Remove $sqlite_db from default database connection
sqlite_db used to be a config option in the DEFAULT section. This
allowed it to be used in config template substitution. Now that it is in
the database section, the template substitution fails with a
NoSuchOptError.
The quick fix is to just hardcode the default connection option to refer
directly to 'cinder.sqlite' instead.
Closes bug:
1339295
Change-Id: Ifd2267aaa8c55d78f88ce6648badefe3f9f664ee