Avishay Traeger [Tue, 20 Aug 2013 15:53:47 +0000 (18:53 +0300)]
Fix Fibre Channel attach for single WWN
The code allowed for only a string of the WWN or a list of them.
Unfortunately unicode is also returned, for which the attach fails.
This patch allows for unicode as well.
Change-Id: I4d2809b41b24b2240e447a5c09f14e6438304cd6
Fixes: bug 1214413
Jenkins [Tue, 20 Aug 2013 09:58:28 +0000 (09:58 +0000)]
Merge "Standardize on ID for log messages"
Jenkins [Tue, 20 Aug 2013 09:43:46 +0000 (09:43 +0000)]
Merge "Reduce hidden effects of sqlalchemy objects"
Jenkins [Tue, 20 Aug 2013 05:12:09 +0000 (05:12 +0000)]
Merge "Allow Cinder to call Nova client"
John Griffith [Mon, 19 Aug 2013 21:04:15 +0000 (15:04 -0600)]
Standardize on ID for log messages
We have some places where logs use name to identify
a volume and others where we use ID. Let's standardize
on the UUID here as that's typically the unique identifier
we use in most places anyway. Even though name is a
derviative it seems better to be consistent with this
and use the UUID by itself.
Change-Id: Iaee3d146042780e4a526834db1e0be84a705f24b
Fixes: bug 1214140
Joshua Harlow [Mon, 19 Aug 2013 18:31:56 +0000 (11:31 -0700)]
Reduce hidden effects of sqlalchemy objects
The flows are currently holding onto sqlalchemy
due to bug #
1214083 and this is causing a problem
with gettextutils which appears to be deepcopying
the raw objects, of which one of those is sqlalchemy
objects, which can't seem to be deepcopied.
Change-Id: Ie831738799a75e2a4a652c73900cad353a71e327
Jenkins [Mon, 19 Aug 2013 15:41:37 +0000 (15:41 +0000)]
Merge "Remove strcmp_const_time"
Jenkins [Mon, 19 Aug 2013 15:39:45 +0000 (15:39 +0000)]
Merge "Update Nexenta ISCSI volume driver authors"
Avishay Traeger [Sun, 11 Aug 2013 16:40:10 +0000 (19:40 +0300)]
Allow Cinder to call Nova client
This code allows Cinder to call Nova client functions. This will be used
for online migration and guest-assisted snapshots, which are both in
progress.
Change-Id: I9c94917bddcf250b880ca730df463a8402fe6b1d
Jenkins [Sat, 17 Aug 2013 23:06:44 +0000 (23:06 +0000)]
Merge "Added missing import"
Eric Harney [Sat, 17 Aug 2013 22:33:16 +0000 (18:33 -0400)]
Remove strcmp_const_time
This was carried over from Nova and isn't used in Cinder. Removed
in Nova via commit
08a5066d with message:
"This function was used with deprecated auth and is no longer used
anywhere in the code, so just remove it."
Change-Id: I2b90a1a723265d9d23f89ec03246de8508d591e5
Jenkins [Fri, 16 Aug 2013 23:38:59 +0000 (23:38 +0000)]
Merge "Add more asserts to the limiter unit tests to test the RateLimit"
John Griffith [Mon, 22 Jul 2013 16:39:54 +0000 (10:39 -0600)]
Refactor LVM driver to use Brick VG utility
Refactor the LVM driver to utilize bricks LVM
module. This includes significant modification to
tests and fake objects related to testing.
implements blueprint: refactor-lvm-and-iscsi-driver
Change-Id: I94e41abf90d0c5b77e732d40ed8b81b0a2f5d7dd
Jenkins [Fri, 16 Aug 2013 22:35:26 +0000 (22:35 +0000)]
Merge "Fixes SSH injection threat in 3PAR driver"
Jenkins [Fri, 16 Aug 2013 22:32:08 +0000 (22:32 +0000)]
Merge "Implement missing Coraid Driver functionality for Havana"
Walter A. Boring IV [Fri, 16 Aug 2013 22:18:05 +0000 (15:18 -0700)]
Added missing import
pep8 tests didn't find this one.
This patch adds the missing _ import
Fixes Bug #
1213268
Change-Id: Ia0e688fc15ccc4d8b3f83516c517e9f9c83767a0
Jenkins [Fri, 16 Aug 2013 18:40:59 +0000 (18:40 +0000)]
Merge "Add support for encrypted volumes"
Kurt Martin [Fri, 16 Aug 2013 15:48:03 +0000 (08:48 -0700)]
Fixes SSH injection threat in 3PAR driver
The setqos ssh command was not built up correctly when the following
patch https://review.openstack.org/#/c/37697/ landed for cleaning up
the SSH calls from injection attacks in the 3PAR driver.
The command was in the following format causing the injection threat
due to the spaces in the second item in the list:
['setqos', '-io 5000 -bw 500M vvset:vvs-JOHB2Oj0QJ2UaWatwbe7Bg']
When it should actually be in the following format:
['setqos', '-io', '5000', '-bw', '500M', 'vvset:vvs-JOHB2Oj0QJ2UaWatwbe7Bg']
This patch fixes an append vs. extend that was introduced in patch
https://review.openstack.org/#/c/42241
Also fixes: bug
1212884
Change-Id: I28f84acd02397ee0d433a666375737145904d67e
Nikolay Sobolevskiy [Thu, 1 Aug 2013 12:57:54 +0000 (16:57 +0400)]
Implement missing Coraid Driver functionality for Havana
Intorduce a brick connector for AoE protocol.
Refactoring Coraid Driver. Implement missing functionality for Havana:
- Copy Volume To Image
- Copy Image To Volume
- Clone Volume
Fix a bug with resize volume command.
Change-Id: I2af6a41dc44cb8bc4b74da752e0be9ed54a83cb1
Implements: blueprint coraid-driver-refactoring-for-havana
Jenkins [Fri, 16 Aug 2013 13:38:35 +0000 (13:38 +0000)]
Merge "Fix SSH injection threat in 3PAR driver"
Jenkins [Fri, 16 Aug 2013 04:54:21 +0000 (04:54 +0000)]
Merge "Refactor Nexenta driver"
Jenkins [Fri, 16 Aug 2013 04:52:29 +0000 (04:52 +0000)]
Merge "refactor/unify driver version strings"
Jenkins [Fri, 16 Aug 2013 03:59:26 +0000 (03:59 +0000)]
Merge "Externalize error messages in the v2 API"
Kurt Martin [Thu, 15 Aug 2013 23:22:31 +0000 (16:22 -0700)]
Fix SSH injection threat in 3PAR driver
The setqos ssh command was not built up correctly when the following
patch https://review.openstack.org/#/c/37697/ landed for cleaning up
the SSH calls from injection attacks in the 3PAR driver.
The command was in the following format causing the injection threat
due to the spaces in the second item in the list:
['setqos', '-io 5000 -bw 500M vvset:vvs-JOHB2Oj0QJ2UaWatwbe7Bg']
When it should actually be in the following format:
['setqos', '-io', '5000', '-bw', '500M', 'vvset:vvs-JOHB2Oj0QJ2UaWatwbe7Bg']
Change-Id: I69ed8dbca3af3ba56220891411b63331c1935373
Fixes: bug 1212884
Walter A. Boring IV [Thu, 15 Aug 2013 22:54:30 +0000 (15:54 -0700)]
refactor/unify driver version strings
This patch updates each driver to provide
the same mechanism for reporting the version
of the driver. It also includes fixing the
reported driver version at get_volume_stats()
time to be the version set in the driver.
When the manager starts the driver it now
logs the driver's name and version in the log file.
fixes Bug #
1212878
Change-Id: Icefd065f885ad417735490e6ac90e2b21557d2dc
Victor Rodionov [Fri, 9 Aug 2013 05:40:02 +0000 (09:40 +0400)]
Refactor Nexenta driver
Moving NEXENTA_OPTIONS out of nexenta/volume.py and splitting the
options. This change is to avoid duplication as the iSCSI and NFS driver
will use the same configuration options.
Change-Id: I3596fec9e852f07aea2ef7f2cd26023de07e7d0b
Jenkins [Thu, 15 Aug 2013 18:58:50 +0000 (18:58 +0000)]
Merge "Extract ISCSI tries option into connector module"
Victor Rodionov [Thu, 15 Aug 2013 18:53:14 +0000 (22:53 +0400)]
Update Nexenta ISCSI volume driver authors
Change-Id: Ib2981c336d479fb506a4db4a9d91e00c1cc6d4e8
Nikolay Sobolevskiy [Thu, 15 Aug 2013 15:23:27 +0000 (19:23 +0400)]
Extract ISCSI tries option into connector module
The usage of this option occurred only in that module.
Rename this options to num_volume_device_scan_tries,
according to discussion on IRC.
The old one marked as depricated option.
DocImpact
Change-Id: Ib4a37237c2d95ca2dd6c05ce0a41f930b29ffd1c
Jenkins [Thu, 15 Aug 2013 14:36:14 +0000 (14:36 +0000)]
Merge "No need to declare the exception conf"
Luis A. Garcia [Wed, 10 Jul 2013 00:50:12 +0000 (00:50 +0000)]
Externalize error messages in the v2 API
This patch does more internationalization for the REST API error
messages that don't currently have it to take advantage of the new
support added by bp user-locale-api to show error messages in the locale
requested by the user through the Accept-Language HTTP header.
We only do v2 because consumers have used the response error message in
the past for error checks, so changing it in v1 too would break them.
Partially implements bp user-locale-api
Change-Id: I92780b42c125a91ab4916b7a31e4b71d306a89a1
Jenkins [Thu, 15 Aug 2013 13:34:17 +0000 (13:34 +0000)]
Merge "Replace os.unlink with delete_if_exists"
Jenkins [Thu, 15 Aug 2013 13:34:15 +0000 (13:34 +0000)]
Merge "Tidy up the SSH call to avoid injection attacks for HP's driver"
Jenkins [Thu, 15 Aug 2013 06:26:58 +0000 (06:26 +0000)]
Merge "Raise exception when Glance metadata not found."
Seif Lotfy [Thu, 15 Aug 2013 03:06:20 +0000 (03:06 +0000)]
Add more asserts to the limiter unit tests to test the RateLimit
Added new asserts to test the per user set limits instead of using
the defaults only
Change-Id: Ib6651a82c9d7bb4b79d5c68be6372dc1100b816a
John Griffith [Thu, 15 Aug 2013 02:06:05 +0000 (20:06 -0600)]
Replace os.unlink with delete_if_exists
Shouldn't care when doing unlink on our temp files
if they exist or not. In fact this causes problems
when you do things like with tempfile/dir and happen
to try and unlink after it's already been removed.
This replaces these calls with the safer
common.fileutils.delete_if_exists which will
ignore the os exception of the object DNE.
Fixes bug:
1212502
Change-Id: Ica86c95f736411da486335aec5512e59247bfbc0
Walter A. Boring IV [Wed, 14 Aug 2013 20:56:09 +0000 (13:56 -0700)]
No need to declare the exception conf
Brick can just assume that the conf entry exists
in each project that will use brick.
Cinder and Nova already declare the same exact
conf entry.
Change-Id: I4e0e11ce6f99a663a75e582ead92ac9d61300032
Jenkins [Wed, 14 Aug 2013 14:49:16 +0000 (14:49 +0000)]
Merge "Fixes some unseen flake8 violations."
Jenkins [Wed, 14 Aug 2013 14:49:06 +0000 (14:49 +0000)]
Merge "Add tests for cinder/brick/initiator/connector"
Joel Coffman [Wed, 14 Aug 2013 14:00:15 +0000 (10:00 -0400)]
Add support for encrypted volumes
This modification adds an encryption key UUID field to the volume
table, which is sufficient to make Cinder "aware" of encrypted volumes
as designated by predefined volume types. Integration with a key
manager is necessary to obtain an actual encryption key UUID (the
current implementation generates a random UUID when an encrypted
volumes is created). Cinder should *not* presume that it necessarily
will have access to the key itself -- this decision depends upon the
design, implementation, and policy for encrypted volumes. The key's
UUID is stored in Cinder because it is metadata about the volume.
Implements: blueprint encrypt-cinder-volumes
Change-Id: I164290e761a9922919a70f22f99af70dac213b61
SecurityImpact
Jenkins [Wed, 14 Aug 2013 10:06:43 +0000 (10:06 +0000)]
Merge "Fixes docstring formats in connector.py."
Yuzlikeev Eduard [Wed, 14 Aug 2013 08:40:33 +0000 (12:40 +0400)]
Add tests for cinder/brick/initiator/connector
Add additional tests for ISCSIConnector.connect_volume
Fixed and added tests for InitiatorConnector.
Change-Id: Ice1b89637476609532f97d0802b7bd6647299909
Jenkins [Wed, 14 Aug 2013 06:32:45 +0000 (06:32 +0000)]
Merge "Add unit tests for cinder/api/contrib/quotas"
Jenkins [Wed, 14 Aug 2013 06:32:42 +0000 (06:32 +0000)]
Merge "Added glance_request_timeout config option."
Haomai Wang [Thu, 18 Jul 2013 15:05:43 +0000 (23:05 +0800)]
Tidy up the SSH call to avoid injection attacks for HP's driver
Let the command and arguments form up a list and avoid the extra arguments
attackers inserted to the command string.
And modify the interface of _cli_run, there is no need for a extra argument.
fix bug
1192971
Change-Id: Iff6a3ecb64feccae1b29164117576cab9943200a
Jenkins [Wed, 14 Aug 2013 05:37:09 +0000 (05:37 +0000)]
Merge "Adding the -online option to the 3PAR clone"
Jenkins [Wed, 14 Aug 2013 04:46:25 +0000 (04:46 +0000)]
Merge "tox.ini: Change sitepackages to False"
Jenkins [Wed, 14 Aug 2013 04:27:23 +0000 (04:27 +0000)]
Merge "Interprete scoped key as nested tags"
Zhiteng Huang [Tue, 13 Aug 2013 04:57:17 +0000 (12:57 +0800)]
Raise exception when Glance metadata not found.
It'd be better to raise exception when trying to copy Glance metadata
from source (volume/snapshot) to destination (volume/snapshot) rather
than silent failure, which is exactly the reason there's unspotted error
inside glance_meta unittest but it was able to pass.
With this fix, one should _not_ directly call glance_metadata_copy()
without looking at source's bootable flags. This patch also refactors
_create_volume_from_snapshot() and _create_from_source_volume() to only
do Glance metadata copy when needed (bootable is True).
Fix bug:
1211632
Change-Id: I28f065e21cf24c81f98b00e171fcbe4f64ec76b6
Jenkins [Wed, 14 Aug 2013 03:49:08 +0000 (03:49 +0000)]
Merge "Fixes volume clone from volume"
Jenkins [Wed, 14 Aug 2013 03:43:52 +0000 (03:43 +0000)]
Merge "Ignore purge_props for v2 Glance api and fix upload"
Jenkins [Wed, 14 Aug 2013 03:43:46 +0000 (03:43 +0000)]
Merge "Add support for API message localization"
XueChendi [Mon, 12 Aug 2013 16:25:43 +0000 (00:25 +0800)]
Interprete scoped key as nested tags
Current codes in xml_util.py does not support REST xml
so well when one tagname contains delimiter, it fails
to be interpreted. So this patch is to interprete one
tagname like "<a:b>1</a:b>" as a nested tag like
"<a><b>1</a></b>".
Fix bug:
1205983
Change-Id: Ia3e1f4d6b6a739898b51bf052a784fa36ab7695e
Kurt Martin [Tue, 13 Aug 2013 20:51:15 +0000 (13:51 -0700)]
Adding the -online option to the 3PAR clone
The 3PAR drivers had to wait while the clone was being performed
and this would take a considerable amount of time for large volumes.
This patch takes advantage of the 3PAR backend by using the -online
option in the command that we were calling to perform the copy. This
allows us to remove the sleep in the driver. Using the -online
option forced us to change some of the delete_volume code because
the 3PAR backend will not allow a volume that was copied to be added
to a virtual volume set.
DocImpact
Change-Id: I47d72063c858e2eee10756be4f74febdd1603179
Fixes: bug 1208586
Jenkins [Tue, 13 Aug 2013 19:18:44 +0000 (19:18 +0000)]
Merge "Fix signature of _create_volume() in ThinLVMVolumeDriver"
Walter A. Boring IV [Tue, 13 Aug 2013 18:53:06 +0000 (11:53 -0700)]
Fixes some unseen flake8 violations.
The failures aren't visible when run from
cinder. Nova has different settings for
flake8. This patch fixes the violations
that nova's flake8 tests.
fixes Bug #
1211935
Change-Id: I80209130de23842a0a35cacb7d59f166e7dba89f
Jenkins [Tue, 13 Aug 2013 17:42:57 +0000 (17:42 +0000)]
Merge "Merge from oslo-incubator for notifier"
Edward Hope-Morley [Tue, 13 Aug 2013 17:09:45 +0000 (18:09 +0100)]
Fixes volume clone from volume
Cloning a volume from another volume appeared
to have been broken by new create_volume
taskflow. Clone from snapshot was not affected.
Also added a unit test this scenario.
Change-Id: I4f174e1616f6944cce64f8d522fa42a9f00f55eb
Fixes: bug #1211709
Dietmar Noll [Tue, 13 Aug 2013 17:02:36 +0000 (10:02 -0700)]
Fixes docstring formats in connector.py.
Docstrings should now comply with HACKING.rst
Change-Id: Ia75ee0e4ceb32f312a2dc7e3c89379b5f2708767
Fixes: bug #1211861
Jenkins [Tue, 13 Aug 2013 16:37:43 +0000 (16:37 +0000)]
Merge "Clone_image method added image_id as parameter."
Jenkins [Tue, 13 Aug 2013 15:25:23 +0000 (15:25 +0000)]
Merge "Fixes files with wrong bitmode"
Jenkins [Tue, 13 Aug 2013 14:11:19 +0000 (14:11 +0000)]
Merge "Fix handling ImageUnacceptable in create_volume"
Zhongyue Luo [Tue, 13 Aug 2013 12:11:49 +0000 (20:11 +0800)]
Fixes files with wrong bitmode
Some modules have bitmode 755. Changed to 644
Change-Id: I6a968f465b3767cfd9cbf0d425cb7b5738b138bb
Elena Ezhova [Mon, 12 Aug 2013 12:59:06 +0000 (16:59 +0400)]
Add unit tests for cinder/api/contrib/quotas
Add tests for serializator in QuotaTemplate class
Add tests for the following functions in QuotaSetsController class:
-show
-update
-defaults
Change-Id: I615440277a54140eb245651d87a225231151083a
Jenkins [Mon, 12 Aug 2013 21:09:51 +0000 (21:09 +0000)]
Merge "remove Brick deps on cinder.exception"
Jenkins [Mon, 12 Aug 2013 21:07:35 +0000 (21:07 +0000)]
Merge "Remove Brick iser dependency on cinder"
Jenkins [Mon, 12 Aug 2013 19:08:21 +0000 (19:08 +0000)]
Merge "Move resource usage sync functions to db backend"
Walter A. Boring IV [Thu, 8 Aug 2013 22:50:22 +0000 (15:50 -0700)]
remove Brick deps on cinder.exception
This patch removes more cinder.exception
dependencies from brick. This involves
moving some exceptions into brick's
exception module.
Change-Id: I577d403f02c2fd0d727d2694776008e1e9791453
Walter A. Boring IV [Thu, 8 Aug 2013 22:29:54 +0000 (15:29 -0700)]
Remove Brick iser dependency on cinder
This patch removes the brick iser.py's dependency
on cinder exceptions and volume_utils.
This required moving some exceptions out of cinder's
exception.py that the iser.py raises. Also had
to create a BrickException and refactor existing
brick exceptions to use the new BrickException model.
Fixes Bug #
1210312
Change-Id: I672375807fed4952e5321fbcd9b57b9ef369f68f
Jenkins [Mon, 12 Aug 2013 17:12:59 +0000 (17:12 +0000)]
Merge "Upgrade Scality driver to match minimum features"
Jay S. Bryant [Mon, 12 Aug 2013 16:46:06 +0000 (11:46 -0500)]
Fix handling ImageUnacceptable in create_volume
In the create_volume flow ImageUnacceptable exceptions are
not properly handled. _copy_image_to_volume can receive an
ImageUnacceptable exception from copy_image_to_volume if fetch_to_raw
is used. Currently the ImageUnacceptable exception is changed to
a generic ImageCopyFailure exception which does not make the cause
of the excpetion clear.
This change adds handling and raising ImageUnacceptable exceptions
in _copy_image_to_volume. It also adds the exception to
no_reschedule_types as it doesn't make sense to keep retrying the
copy if the image was found to be unacceptable.
fixes bug
1209021
Change-Id: I9aacf23dfaaa1a4df0a869d1c9544c376488f01b
Jenkins [Mon, 12 Aug 2013 12:35:40 +0000 (12:35 +0000)]
Merge "Fix ratelimiting"
Andreas Jaeger [Mon, 12 Aug 2013 09:29:11 +0000 (11:29 +0200)]
Merge from oslo-incubator for notifier
Goal: merge oslo-incubator change
I282d4ae3311bc3fcda6be8e5a1fceecfc8ddb115
Done via:
python update.py --nodeps --base cinder --dest-dir ../cinder \
--modules notifier
Change-Id: I0cb982b3b45eb63941f9bfe5407c93af280c452a
Zhongyue Luo [Mon, 12 Aug 2013 02:41:59 +0000 (10:41 +0800)]
Use native methods for list manipulation
It's better to append a item to a list rather than creating a list instance
and extending it. Also the list class has its native method for extension.
Change-Id: If492c35822cd7d83b509692c2226612e565204d3
Jenkins [Sun, 11 Aug 2013 17:54:56 +0000 (17:54 +0000)]
Merge "Add support for volume cloning to Nexenta driver"
OpenStack Jenkins [Sun, 11 Aug 2013 05:57:23 +0000 (05:57 +0000)]
Merge "Imported Translations from Transifex"
Eric Harney [Sat, 10 Aug 2013 20:12:59 +0000 (16:12 -0400)]
Fix signature of _create_volume() in ThinLVMVolumeDriver
create_volume_from_snapshot will call _create_volume() with the
wrong parameters when using ThinLVMVolumeDriver. It should be
compatible with LVMVolumeDriver's _create_volume() method.
Fixes bug:
1210853
Change-Id: I18f7baf60601b3bcf01425b505a0579a826f072e
John Griffith [Sat, 10 Aug 2013 18:24:56 +0000 (12:24 -0600)]
Add H233 to ignores in tox.ini
The auto-pull of updated libs added to devstack
will result in the python 3.3 print checks being
added which we're not ready for.
Temporarily add this to our tox.ini ignore list
until we have a chance to go through and fix these.
Change-Id: Ie6e0e28433e9b1240b94ed4a323a97a85e475a17
OpenStack Jenkins [Sat, 10 Aug 2013 18:10:31 +0000 (18:10 +0000)]
Imported Translations from Transifex
Change-Id: I309dc017cb888a77a531dd7e01b6574fb0a345e5
Victor Rodionov [Thu, 1 Aug 2013 14:43:37 +0000 (18:43 +0400)]
Add support for volume cloning to Nexenta driver
This patch implements missing functionality for Havana.
Change-Id: I39d838e955f25b8438a24f6aff5ec97fb3c14e4b
Jenkins [Sat, 10 Aug 2013 05:42:55 +0000 (05:42 +0000)]
Merge "Fix the multi-backend storge issue for ZMQ."
Seif Lotfy [Fri, 9 Aug 2013 13:37:38 +0000 (13:37 +0000)]
Fix ratelimiting
Current master does now respect ratelimiting, since parsing of the
api-paste.ini was faulty. api-paste.ini limited user limiting by
setting a line as follows:
user:<user-id>:(GET, *, ".*", 4, minute) which was passed to the
Limiter as kwargs with "user" as a key. Thus multiple user limiting
was not possible as well as extracting the id of the user was bound
to fail, since we checked on the key with startswith("user:")
An example config in the api-paste.ini has to look as follows:
limits = (POST, "*", .*, 10, MINUTE)
limits.<user-id1>:(GET, "*", .*, 4, minute)
limits.<user-id2>:(GET, "*", .*, 2, minute)
Fixes bug:
1206976
Change-Id: I4adbe3dbe3a0bd607d6e675f230b0442b08ec791
Jean-Marc Saffroy [Thu, 8 Aug 2013 18:49:28 +0000 (20:49 +0200)]
Upgrade Scality driver to match minimum features
The Scality driver needs an upgrade to match minimum features:
- Havana: Clone Volume
- Icehouse: Extend Volume
Also, some features (Copy Image to Volume, Copy Volume to Image) already work but need automated tests.
Change-Id: Iac5ac2c58fd5ce62823f829a0a014decb4ad4958
Fixes: bug 1210240
Edward Hope-Morley [Fri, 9 Aug 2013 12:06:46 +0000 (13:06 +0100)]
Ignore purge_props for v2 Glance api and fix upload
The V2 Glance API image schema does not contain
purge_props. While this may be a bug in Glance,
we will ignore this property in cinder when
glance_api_version=2. This will not change behaviour
since Glance defaults this property to True, Cinder
never sets it to False and the v2 client appears to
ignore it anyway.
Also fixed image upload which is a seperate client
call to update in v2 (v1 update does both).
Change-Id: I0ba1d7d920984cface57795ace160ec300ff75e2
Fixes: bug #1210467
Jenkins [Fri, 9 Aug 2013 06:47:38 +0000 (06:47 +0000)]
Merge "3PAR drivers creating incorrect comment data"
OpenStack Jenkins [Fri, 9 Aug 2013 06:04:05 +0000 (06:04 +0000)]
Merge "Imported Translations from Transifex"
Luis A. Garcia [Mon, 8 Jul 2013 23:11:05 +0000 (23:11 +0000)]
Add support for API message localization
Add support for doing language resolution for a request, based on the
Accept-Language HTTP header.
Using the lazy gettext functionality from oslo gettextutils, it is now
possible to use the resolved language to translate an exception message
to the user requested language and return that translation from the API.
Partially implements bp user-locale-api
Change-Id: Ib2c8360372996d53b50542df54a52d92b07295ca
Jenkins [Fri, 9 Aug 2013 04:12:17 +0000 (04:12 +0000)]
Merge "Ignore stmf target must be offline exception"
Jenkins [Thu, 8 Aug 2013 21:56:34 +0000 (21:56 +0000)]
Merge "Add minimum features in HDS driver (for Havana & Icehouse)"
Kurt Martin [Thu, 8 Aug 2013 21:14:56 +0000 (14:14 -0700)]
3PAR drivers creating incorrect comment data
The 3PAR volumes created from a shapshot had incorrect comment data
that gets added in the comment section of the volumes on the backend.
This patch fixes the display name and description by getting the correct
data when the volume is created. This patch also fixes the inconsistency
in how the keys (name vs. display_name) were used in the comments.
Change-Id: I61af8ceb08d862f2b9dea2d9bb44c803e0b75a10
Fixes: bug 1210245
Jenkins [Thu, 8 Aug 2013 18:54:08 +0000 (18:54 +0000)]
Merge "Refactoring of create_volume to use taskflow."
Jenkins [Thu, 8 Aug 2013 18:45:43 +0000 (18:45 +0000)]
Merge "Set lock_path in tests"
OpenStack Jenkins [Thu, 8 Aug 2013 18:10:40 +0000 (18:10 +0000)]
Imported Translations from Transifex
Change-Id: Ib68f2c11e8eac9002407b5bfc2f07547620acd98
Jenkins [Thu, 8 Aug 2013 16:07:54 +0000 (16:07 +0000)]
Merge "Use utils.safe_minidom_parse_string in extensions"
Thierry Carrez [Thu, 8 Aug 2013 10:13:52 +0000 (12:13 +0200)]
Use utils.safe_minidom_parse_string in extensions
Use utils.safe_minidom_parse_string in extensions that were still
using potentially-unsafe minidom.
Fixes bug
1190229
Change-Id: I43afb2e188bbea99ea30fe6cb2eb1aeedc4ddfd4
Sergey Skripnick [Wed, 10 Jul 2013 08:55:24 +0000 (11:55 +0300)]
Move resource usage sync functions to db backend
Resource usage sync functions was declared in cinder/quota.py, and
using db.api public methods. This functions was moved to database
backend implementation, so now sync functions can use private
methods of database backend, and session attribute can be removed
from this public methods.
Blueprint: db-session-cleanup
Change-Id: If5386e3dc1e0d6e3127732aeb5b35bbd96bc93f0
OpenStack Jenkins [Thu, 8 Aug 2013 06:11:09 +0000 (06:11 +0000)]
Imported Translations from Transifex
Change-Id: I857c5d49cf1dc44f902952a15a3b2abeff70dd99
Joshua Harlow [Thu, 1 Aug 2013 19:08:04 +0000 (12:08 -0700)]
Refactoring of create_volume to use taskflow.
Move the create_volume workflow to using taskflow and
split that workflow into three major pieces (each with
there own workflow) and create tasks that perform the
individual required actions to accomplish the pieces
desired outcome.
1. An api workflow composed of the following tasks:
- Extracting volume request (which checks types, values) and creates a
standard output for other tasks to work on (allowing further tasks to be
plugged in the chain without having to worry about other tasks output
formats).
- Quota reservation (rolled back on failure).
- Database entry creation.
- Quota committing.
- Volume RPC casting to volume scheduler or to targeted volume manager.
2. A scheduler workflow composed of the following tasks:
- Extracting scheduler request specification for further tasks to use.
- Change status & notify (activated only on failure).
- Create volume scheduler driver call (which will itself RPC cast to a
targeted volume manager).
3. A manager workflow composed of the following tasks:
- Extract volume request specification from incoming request for
further tasks to use. This also breaks up the incoming request into the 4
volume types that can be created later.
- Change status & notify on failure or reschedule on failure, this is
dependent on if rescheduling is enabled *and* which exception types are
thrown from the volume creation code.
- Create volume from specification
- This contains the code to create from image, create raw volume, create
from source volume, create from snapshot using the extracted volume
specification.
- Change status & notify success.
Key benefits:
- Handled exceptions in a easier to understand, easier to review and more
reliable way than they are currently being handled.
- Rescheduling is now easier to understand.
- Easier to understand structure with tasks that consume inputs, take some
action on them and produce outputs and revert on subsequent failure using
whatever they produced to know how to revert.
- Ability to add new unit tests that can test individual task actions by
providing mock task inputs and validating expected task outputs.
Future additions:
- Eventual addition of resumption logic to recover from operations stopped
halfway through.
- Ability to centrally orchestrate the tasks and pick and choice how
reconciliation of failures based on code or policies.
Part of bp: cinder-state-machine
Change-Id: I96b688511b35014a8c006e4d30b875dcaf409d93
Lakhinder Walia [Thu, 1 Aug 2013 23:43:45 +0000 (16:43 -0700)]
Add minimum features in HDS driver (for Havana & Icehouse)
* Add create_cloned_volume() api.
* Add extend_volume() api.
* Reorganized some connection state keeping into _loc_info() function.
Earlier this logic was spread out in various calls.
* New self tests for #1 and #2 above.
Change-Id: I6a88164ee0a427519c7fab6f6a852d46ec46176c
Fixes: bug #1207560
Jenkins [Wed, 7 Aug 2013 20:26:50 +0000 (20:26 +0000)]
Merge "Add test for brick.local_dev.lvm"