]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
9 years agoAdd automatic creation and deletion of Purity hosts for PureISCSIDriver
Patrick East [Fri, 22 Aug 2014 23:43:20 +0000 (16:43 -0700)]
Add automatic creation and deletion of Purity hosts for PureISCSIDriver

The driver will now be responsible to manage hosts for new initiators
which do not already have a host created for them. This will allow for
backwards compatibility with the previous version that relied on hosts
being pre-configured for use by Cinder.

Implements: blueprint pure-iscsi-automatic-host-creation
Change-Id: I04b554e1a21128d55eddc21afda7108a868e4248

9 years agoMerge "Imported Translations from Transifex"
Jenkins [Tue, 11 Nov 2014 11:43:47 +0000 (11:43 +0000)]
Merge "Imported Translations from Transifex"

9 years agoMerge "Updated from global requirements"
Jenkins [Tue, 11 Nov 2014 11:43:37 +0000 (11:43 +0000)]
Merge "Updated from global requirements"

9 years agoImported Translations from Transifex
OpenStack Proposal Bot [Tue, 11 Nov 2014 06:09:44 +0000 (06:09 +0000)]
Imported Translations from Transifex

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

Change-Id: I3c97602b295590fb90cba334e6d390e1e52f9be5

9 years agoMerge "Activate pep8 check that _ is imported"
Jenkins [Tue, 11 Nov 2014 03:32:21 +0000 (03:32 +0000)]
Merge "Activate pep8 check that _ is imported"

9 years agoMerge "Retry remove iscsi target"
Jenkins [Tue, 11 Nov 2014 03:32:13 +0000 (03:32 +0000)]
Merge "Retry remove iscsi target"

9 years agoUpdated from global requirements
OpenStack Proposal Bot [Mon, 10 Nov 2014 22:58:13 +0000 (22:58 +0000)]
Updated from global requirements

Change-Id: Ib06608cdb8ce099ddc5f5f92aa33e6ba3c68e079

9 years agoFix the LV NotFound situation for thin-type LVM
David Pineau [Thu, 6 Nov 2014 14:01:13 +0000 (15:01 +0100)]
Fix the LV NotFound situation for thin-type LVM

If the logical volume is not found, LVM displays on the error output
that the volumes could not be found. So here, we filter on this very
specific situation, and let all the other cases go through the stack.

Added a test for this new code path, which raises an exception of the
proper type to be caught by the new code.

Change-Id: I703af8ccd87c6332d9f88eff63fcf26ebed234f4
Closes-Bug: #1390081

9 years agoRetry remove iscsi target
Matt Riedemann [Fri, 7 Nov 2014 14:23:09 +0000 (06:23 -0800)]
Retry remove iscsi target

There is a race in the gate when removing an iscsi
target in the remove export flow where the target
is still active. It's about a 75% failure rate so
simply adding a configurable retry on the delete
call should clean that up.

Change-Id: I8531652e8b80f1c65c9942e109dea01fda5674e0
Closes-Bug: #1363258

9 years agoRemove test_barbican from keymgr tests
John Griffith [Tue, 4 Nov 2014 22:34:28 +0000 (23:34 +0100)]
Remove test_barbican from keymgr tests

Unfortunately it seems we have some very poorly
written keymgr unit tests, specifically
keymgr/test_barbican.py does this:
from barbicanclient.common import auth

First problem is that from a unit test perspective
that pretty much sucks, second problem is that
barbicanclient as of version 3.0.0.0 no longer
has an "auth" module, as a result Cinderunit tests
now fail.

The test_barbican.py unit tests need to be rewritten
to mock out the client components and actually test
Cinder components where needed without relying on
the barbicanclient.

For now in order to free up the gate, remove test_barbican.py

Change-Id: Id770c87c0d622ae4c1e0d71141ffa9aed29be2ec
Partial-Bug: #1389419

10 years agoMerge "Small typos"
Jenkins [Tue, 4 Nov 2014 11:09:25 +0000 (11:09 +0000)]
Merge "Small typos"

10 years agoMerge "Implementing the use of _L’x’/i18n markers"
Jenkins [Tue, 4 Nov 2014 10:38:10 +0000 (10:38 +0000)]
Merge "Implementing the use of _L’x’/i18n markers"

10 years agoMerge "LIO: Fix UnboundLocalError in ensure_export"
Jenkins [Tue, 4 Nov 2014 09:07:26 +0000 (09:07 +0000)]
Merge "LIO: Fix UnboundLocalError in ensure_export"

10 years agoImplementing the use of _L’x’/i18n markers
Mike Mason [Thu, 23 Oct 2014 13:16:42 +0000 (13:16 +0000)]
Implementing the use of _L’x’/i18n markers

Placing the _Lx markers back into the code.  No other cleaner solution has
has been implemented. Patches will be submitted in a series of sub
directories and in a fashion that is manageable.

Partial-Bug: #1384312

Change-Id: I62c708036a9cd5da431b7a95e9cd41167fb5273b

10 years agoDisable python-barbicanclient 3.0.0 version
ZhiQiang Fan [Sat, 1 Nov 2014 18:18:35 +0000 (02:18 +0800)]
Disable python-barbicanclient 3.0.0 version

python-barbicanclient 3.0.0 has introduced cliff module, but pins it
to 1.6.1, while global-requirements set it to >=1.7.0, now the whole
OpenStack projects depends on higher version of cliff, but
python-barbicanclient is needed by cinder, then grenade test will
fail because: pkg_resources.DistributionNotFound: cliff==1.6.1

As long as python-barbicanclient maintainers don't provide a patch
for 3.0.0 (which seems not happen FMPOV), we need to disbable this
version.

Change-Id: I02f055ae89989cef2bd0264c60279a1f1a141e01
Related-Bug: #1388414

10 years agoMerge "Cleanly override config in tests"
Jenkins [Fri, 31 Oct 2014 07:46:02 +0000 (07:46 +0000)]
Merge "Cleanly override config in tests"

10 years agoMerge "Fix NetApp AutoSupport Shortcomings."
Jenkins [Thu, 30 Oct 2014 21:44:30 +0000 (21:44 +0000)]
Merge "Fix NetApp AutoSupport Shortcomings."

10 years agoActivate pep8 check that _ is imported
James Carey [Thu, 30 Oct 2014 15:28:48 +0000 (15:28 +0000)]
Activate pep8 check that _ is imported

Removed the specification in tox.ini that _ is a builtin so that
it will no longer assume that _ does not need to be imported.

The correct import is:

    from cinder.i18n import _

Activating this check did not flag any violations in cinder.

Change-Id: Ifc789514d2462c059eb9f003fac288e751331ded

10 years agoLIO: Fix UnboundLocalError in ensure_export
Eric Harney [Thu, 30 Oct 2014 20:33:40 +0000 (16:33 -0400)]
LIO: Fix UnboundLocalError in ensure_export

If db.volume_get() fails here, volume_info (and chap_auth)
are unbound, and the below usages will fail.

volume_get() failing is the only way to land in the NotFound
handler, so just remove this debug line.  It won't ever have
info to print.

Move code not related to db lookup out of this try block, and
return when NotFound occurs.

Closes-Bug: #1387866

Change-Id: I13a88bec1a66d8a0794b08514cc9844d60f6c809

10 years agoMerge "Brick LVM: Rename get_all_volumes, further optimize"
Jenkins [Thu, 30 Oct 2014 15:56:34 +0000 (15:56 +0000)]
Merge "Brick LVM: Rename get_all_volumes, further optimize"

10 years agoBrick LVM: Rename get_all_volumes, further optimize
Eric Harney [Tue, 28 Oct 2014 21:03:42 +0000 (17:03 -0400)]
Brick LVM: Rename get_all_volumes, further optimize

This method can process all LVs, those in a VG, or an
individual LV.  Rename it to be more descriptive.

Optimize update_volume_group_info check for thin pool.

Remove volume.utils.get_all_volumes, which is unused.

Remove fake_lvm.get_all_volumes and
fake_lvm.get_all_volume_groups which don't appear to
have correct signatures/returns and are unused.

Change-Id: I412c62230517cbfc08cc0076aaeea45224e6b50e

10 years agoMerge "Fix wrong arg number for _fix_id_migration issue"
Jenkins [Wed, 29 Oct 2014 08:18:06 +0000 (08:18 +0000)]
Merge "Fix wrong arg number for _fix_id_migration issue"

10 years agoMerge "Brick LVM: Optimize get_volume"
Jenkins [Tue, 28 Oct 2014 23:06:05 +0000 (23:06 +0000)]
Merge "Brick LVM: Optimize get_volume"

10 years agoMerge "Verify the full interface of the context object"
Jenkins [Tue, 28 Oct 2014 22:13:29 +0000 (22:13 +0000)]
Merge "Verify the full interface of the context object"

10 years agoFix wrong arg number for _fix_id_migration issue
Mike Perez [Tue, 28 Oct 2014 21:48:50 +0000 (14:48 -0700)]
Fix wrong arg number for _fix_id_migration issue

If the provider_location doesn't contain the name of the volume, TGT and
ISER will fail on doing a id migration, due to wrong number of
arguments.

Change-Id: I420ceaf14edfb6a0e3b8fd1f50070dc70b6f16bd
Closes-Bug: #1386902

10 years agoCleanly override config in tests
Adrien Vergé [Tue, 28 Oct 2014 21:00:09 +0000 (22:00 +0100)]
Cleanly override config in tests

CONF.set_override() is often called in tests but CONF.clear_override()
is never. Create a override_config() method in the base TestCase class
that restores previous conf value after test, as it is done in other
OpenStack projects.

Change-Id: Id57b4502a2a37ea12047985cf2ea6c38c6f965fd

10 years agoMerge "Add debug output indicating provider_location"
Jenkins [Tue, 28 Oct 2014 21:01:09 +0000 (21:01 +0000)]
Merge "Add debug output indicating provider_location"

10 years agoMerge "LioAdm: Delete initiator from targets on terminate_connection"
Jenkins [Tue, 28 Oct 2014 21:01:01 +0000 (21:01 +0000)]
Merge "LioAdm: Delete initiator from targets on terminate_connection"

10 years agoMerge "TgtAdm: Don't change CHAP username/password on live migration"
Jenkins [Tue, 28 Oct 2014 21:00:52 +0000 (21:00 +0000)]
Merge "TgtAdm: Don't change CHAP username/password on live migration"

10 years agoMerge "Use look up service for auto zoning"
Jenkins [Tue, 28 Oct 2014 17:31:48 +0000 (17:31 +0000)]
Merge "Use look up service for auto zoning"

10 years agoAdd debug output indicating provider_location
John Griffith [Tue, 28 Oct 2014 16:21:52 +0000 (10:21 -0600)]
Add debug output indicating provider_location

Just add a simple debug statement to indicate the resultant
provider location of a tgtadm volume after create_export.

Change-Id: Ide12986400c54978ee5b387d615b203c0f93f029

10 years agoMerge "Fix for debugging c-vol in PyCharm"
Jenkins [Tue, 28 Oct 2014 15:07:35 +0000 (15:07 +0000)]
Merge "Fix for debugging c-vol in PyCharm"

10 years agoUse look up service for auto zoning
Xing Yang [Thu, 9 Oct 2014 05:26:28 +0000 (01:26 -0400)]
Use look up service for auto zoning

The VMAX FC driver didn't use the look up service for auto zoning.
Instead it built initiator target map itself. However, that
requires the initiator to log into the fabric before zoning
in order to find out target WWNs.

This patch is to use the look up service to find out valid initiator
target WWNS and use that to build initiator target map. With this fix,
the initiator is no longer required to log into the fabric ahead of time.

Change-Id: I76e1a8a2e7d4230b851b763f7d13dd1489b69364
Closes-Bug: #1379156

10 years agoFix for debugging c-vol in PyCharm
Clinton Knight [Thu, 23 Oct 2014 19:46:29 +0000 (15:46 -0400)]
Fix for debugging c-vol in PyCharm

Change-Id: I76a6bf44630d33fbc9e33cf79ab859621d215599
Closes-bug: 1384872

10 years agoMerge "Fix SolidFire inaccurate model on migrated vols"
Jenkins [Mon, 27 Oct 2014 03:05:29 +0000 (03:05 +0000)]
Merge "Fix SolidFire inaccurate model on migrated vols"

10 years agoMerge "CiscoFCSanLookupSerive uses extra argument in init"
Jenkins [Mon, 27 Oct 2014 01:39:48 +0000 (01:39 +0000)]
Merge "CiscoFCSanLookupSerive uses extra argument in init"

10 years agoMerge "Reserve 5 migrations for backports"
Jenkins [Sun, 26 Oct 2014 23:26:41 +0000 (23:26 +0000)]
Merge "Reserve 5 migrations for backports"

10 years agoMerge "Add ability to update migration info on backend"
Jenkins [Sun, 26 Oct 2014 23:26:32 +0000 (23:26 +0000)]
Merge "Add ability to update migration info on backend"

10 years agoCiscoFCSanLookupSerive uses extra argument in init
Xing Yang [Sun, 26 Oct 2014 21:29:26 +0000 (17:29 -0400)]
CiscoFCSanLookupSerive uses extra argument in init

This patch fixed two issues with the __init__ routine in
CiscoFCSanLookupService:

1. There's an extra argument in super(CiscoFCSanLookupService,
self).__init__(self, **kwargs). It should be changed to
super(CiscoFCSanLookupService, self).__init__(**kwargs).

2. The last line 'self.fabric_configs = ""' should be removed.
self.fabric_configs was created in self.create_configuration() in the
middle of the __init__ routine. It shouldn't be cleared out at the end
of the __init__ routine.

Change-Id: I2623f3b51af34d14849015e52e3676271c9fe414
Closes-Bug: #1385974

10 years agoFix SolidFire inaccurate model on migrated vols
John Griffith [Thu, 23 Oct 2014 16:37:11 +0000 (16:37 +0000)]
Fix SolidFire inaccurate model on migrated vols

The general migration impl in Cinder works
by creating a new volume, transfering the data
from the original volume to the new volume, and
then deleting the original and flipping the ID
of the new volume.

Turns out we missed the fact that this creates a
mismatch between the volume Cinder will later ask
for and what the volumes identity is on the backend
device.

This change adds a check on create_volume at the drivers
level to see if it's part of a migration and is infact
going to get renamed.  If so, just use the new name
and avoid all the headaches that come later with updating
provider auth and location.

The model info won't change in this case and is accessible
independent of the ID field in the Cinder base and the
crazy change that's going to take place on that value
in the Cinder DB.

Change-Id: If916df5fd986352ffb20f2dd74552e4d7dad4f60
Closes-Bug: #1381943

10 years agoEventlet green threads not released back to pool
abhishekkekane [Tue, 21 Oct 2014 09:31:15 +0000 (02:31 -0700)]
Eventlet green threads not released back to pool

Presently, the wsgi server allows persist connections hence even after
the response is sent to the client, it doesn't close the client socket
connection.
Because of this problem, the green thread is not released back to the pool.

In order to close the client socket connection explicitly after the
response is sent and read successfully by the client, you simply have to
set keepalive to False when you create a wsgi server.

DocImpact:
Added wsgi_keep_alive option (default=True).
In order to maintain the backward compatibility, setting wsgi_keep_alive
as True by default. Recommended is set it to False.

SecurityImpact

Closes-Bug: #1361360
Change-Id: Ic57b2aceb136e8626388cfe4df72b2f47cb0661c

10 years agoAdd ability to update migration info on backend
John Griffith [Tue, 21 Oct 2014 23:19:22 +0000 (23:19 +0000)]
Add ability to update migration info on backend

The current migration process creates a new volume,
xfr's it's contents, then deletes the original and
modifies the new volume to have the previous ID.

All in all this is kinda troublesome, but regardless
the bigger problem is that the generic impl doesn't
provide any method to tell the backend devices that
their device names/id's have changed.

This patch provides a method to inform backends
that a migration operation has been completed on
their target volume.

It shouldn't be necessary to do anything with the originating
or source volume because it's deleted as part of the process.

Change-Id: Ib5e6a47fe9eedab3e60e77a6c2d987355c0bf167
Closes-Bug: #1383499

10 years agoReserve 5 migrations for backports
John Griffith [Fri, 24 Oct 2014 14:19:19 +0000 (08:19 -0600)]
Reserve 5 migrations for backports

Reserve 5 migrations incase the need arises to backport any
fixes that require a db migration in stable/juno.

We've never set this up in the past and we did run into a case
last cycle where we had to hack some things around to make it work
without the place holder.

Why 5?  Why not?  For as little as we touch the DB historically
this number should be more than sufficient.

Change-Id: I2830f6557c65c4c9b3056bb5ee72b17346e21823

10 years agoVerify the full interface of the context object
Ivan Kolodyazhny [Mon, 22 Sep 2014 14:33:13 +0000 (17:33 +0300)]
Verify the full interface of the context object

Improved testcase for get_test_admin_context method
Change-Id: I8c99401150ed41cbf66b32cd00c7f8353ec4e267

10 years agoMerge "Imported Translations from Transifex"
Jenkins [Fri, 24 Oct 2014 12:11:46 +0000 (12:11 +0000)]
Merge "Imported Translations from Transifex"

10 years agoMerge "NFS Security Enhancements: allows secure NFS environment setup"
Jenkins [Fri, 24 Oct 2014 12:11:07 +0000 (12:11 +0000)]
Merge "NFS Security Enhancements: allows secure NFS environment setup"

10 years agoImported Translations from Transifex
OpenStack Proposal Bot [Fri, 24 Oct 2014 06:10:35 +0000 (06:10 +0000)]
Imported Translations from Transifex

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

Change-Id: I3fd4f684914909cd4fb35f7d0435a430c80ecfd6

10 years agoLioAdm: Delete initiator from targets on terminate_connection
Tomoki Sekiyama [Wed, 22 Oct 2014 22:30:06 +0000 (18:30 -0400)]
LioAdm: Delete initiator from targets on terminate_connection

In current LioAdm implementation, initiators are remained even if
terminate_connection is called. This keeps volumes exported to hosts
after instances attaching the volumes are live-migrated to another
host, which is not good for security. It also causes an error on the
migration back to the original host, because cinder-rtstool doesn't
update CHAP authentication if the initiator already exists.

With this patch, initiators are deleted on terminate_conection.
'initiator-delete' operation is added to cinder-rtstool.
It makes the following live-migration succeed.
Also, this adds unit tests for initialize_connection and
terminate_connection methods in LioAdm.

Change-Id: Ib273f0ba4f1ef553374c0433b049f18719f8c758
Closes-Bug: #1369541

10 years agoNFS Security Enhancements: allows secure NFS environment setup
Glenn M. Gobeli [Thu, 12 Jun 2014 13:31:25 +0000 (09:31 -0400)]
NFS Security Enhancements: allows secure NFS environment setup

This patch allows an OpenStack environment to run as a secure NAS
environment from the client and server perspective, including having
root squash enabled and not running file operations as the 'root'
user. This also sets Cinder file permissions as 660: removing
other/world file access.

The "nas_secure_file_permissions" option controls the setting of file
permissions when Cinder volumes are created. The option defaults to
"auto" to gracefully handle upgrade scenarios. When set to "auto",
a check is done during Cinder startup to determine if there are
existing Cinder volumes: no volumes will set the option to 'true',
and use secure file permissions. The detection of existing volumes will
set the option to 'false', and use the current insecure method of
handling file permissions.

The "nas_secure_file_operations" option controls whether file
operations are run as the 'root' user or the current OpenStack
'process' user. The option defaults to "auto" to gracefully handle
upgrade scenarios. When set to "auto", a check is done during Cinder
startup to determine if there are existing Cinder volumes: no volumes
will set the option to 'true', be secure and do NOT run as the 'root'
user. The detection of existing volumes will set the option to 'false',
and use the current method of running operations as the 'root' user.
For new installations, a 'marker file' is written so that subsequent
restarts of Cinder will know what the original determination had been.

This patch enables this functionality only for the NFS driver.
Other similar drivers can use this code to enable the same
functionality with the same config options.

DocImpact
Change-Id: I3d25f593beab7f5462576b14ab62d13d8c53e7c6
Implements: blueprint secure-nfs
Partial-Bug: 1260679

10 years agoBrick LVM: Optimize get_volume
Eric Harney [Thu, 23 Oct 2014 15:28:29 +0000 (11:28 -0400)]
Brick LVM: Optimize get_volume

When we only want the LV information for a single volume, call
"lvs" with the volume name specified.

This should reduce unnecessary load of calling "lvs" for the
whole VG.

Related-Bug: #1373513

Change-Id: Ifbb679e9160f44fe52ecba7bf19aa0eb5bb133f1

10 years agoTgtAdm: Don't change CHAP username/password on live migration
Tomoki Sekiyama [Mon, 20 Oct 2014 18:32:55 +0000 (14:32 -0400)]
TgtAdm: Don't change CHAP username/password on live migration

As tgtd doesn't update CHAP username/password while the initiator is
connected, CHAP username/password must not be changed while a Nova
instance are performing live-migration; otherwise the compute node
which the instance migrates to cannot login to the volume and the
migration process is aborted.

This fixes TgtAdm implementation not to regenerate random
username/password every time initialize_connection is called.
Also, it enables CHAP auth in unit tests of TargetAdmin helpers.

Change-Id: I48729a33fada62a7c8e4fe500b1e39533d898701
Closes-Bug: #1383509

10 years agoUpdate volume-type's quota when extending volume
Haomai Wang [Mon, 29 Sep 2014 05:36:54 +0000 (13:36 +0800)]
Update volume-type's quota when extending volume

Now cinder only update total "gigabytes" quota but not update special
volume-type's "gigabytes" quota.

Fix bug #1375120

Change-Id: Ibb0b91afc81ba8c864f3c56fbe8a31972edd9bfc
Signed-off-by: Haomai Wang <haomai@unitedstack.com>
10 years agoMerge "Cinder api service doesn't handle SIGHUP properly"
Jenkins [Wed, 22 Oct 2014 05:12:09 +0000 (05:12 +0000)]
Merge "Cinder api service doesn't handle SIGHUP properly"

10 years agoCinder api service doesn't handle SIGHUP properly
Zhiteng Huang [Tue, 21 Oct 2014 09:05:50 +0000 (17:05 +0800)]
Cinder api service doesn't handle SIGHUP properly

When SIGHUP signal is sent to cinder-api service, it doesn't complete
processing of all pending requests before terminating all the
processes.

This change is a copy of Abhishek Kekane's fix for nova api.

Change-Id: I049d2aa2f3ad1fe388e00213a71f374803ed409a
Closes-Bug: #1334647

10 years agoMerge "Remove outdated _ as a builting from pylintrc"
Jenkins [Wed, 22 Oct 2014 00:28:21 +0000 (00:28 +0000)]
Merge "Remove outdated _ as a builting from pylintrc"

10 years agoMerge "VMware: Fix initialization of datastore selector"
Jenkins [Tue, 21 Oct 2014 19:54:25 +0000 (19:54 +0000)]
Merge "VMware: Fix initialization of datastore selector"

10 years agoMerge "ProphetStor driver consistency group support"
Jenkins [Tue, 21 Oct 2014 10:27:13 +0000 (10:27 +0000)]
Merge "ProphetStor driver consistency group support"

10 years agoRemove outdated _ as a builting from pylintrc
Duncan Thomas [Mon, 20 Oct 2014 13:37:11 +0000 (14:37 +0100)]
Remove outdated _ as a builting from pylintrc

Closes-bug: #1383302
Change-Id: I35e73fcabf39a01b667d570478227c960e1c450c

10 years agoMerge "Improve Cinder API internal cache interface"
Jenkins [Sun, 19 Oct 2014 06:28:53 +0000 (06:28 +0000)]
Merge "Improve Cinder API internal cache interface"

10 years agoMerge "Turn on Flake-8 Complexity Checking"
Jenkins [Sun, 19 Oct 2014 05:15:58 +0000 (05:15 +0000)]
Merge "Turn on Flake-8 Complexity Checking"

10 years agoProphetStor driver consistency group support
Rick Chen [Fri, 26 Sep 2014 07:25:08 +0000 (15:25 +0800)]
ProphetStor driver consistency group support

Implement ProphetStor driver support for the new consistency group
feature in Cinder Kilo.

Change-Id: Id2f7a93cabcf4f54215a035b3ad8d30ea5439297
Implements: blueprint prophetstor-consistency-group

10 years agoTurn on Flake-8 Complexity Checking
John Griffith [Fri, 17 Oct 2014 04:43:20 +0000 (22:43 -0600)]
Turn on Flake-8 Complexity Checking

Flake8 provides the ability to measure code complexity. There are
a lot of modules in Cinder that are considered "too complex", the
worst being "cinder/tests/test_huawei_hvs.py:110:1:" with a complexity
ranking of 59.

There's some outlyers at the higher end here, but the majority of the
code checks in at under 30, so let's make that our threshold and ignore
the two offenders that are above that for now.

Granted this may or may not be valuable, but it doesn't hurt to try it
and if we all hate it or find there's no value but it makes life difficult
we can always turn it back off.

See flake8.readthedocs for more info on flake8 and McCabe complexity
checking.

Change-Id: Icc1b5f2ccf0b630c1e655f5e6abf4e25ee30afc4

10 years agoMerge "Add client_socket_timeout option"
Jenkins [Fri, 17 Oct 2014 16:05:47 +0000 (16:05 +0000)]
Merge "Add client_socket_timeout option"

10 years agoMerge "Log a warning when getting lvs and vgs takes longer than 60 seconds"
Jenkins [Fri, 17 Oct 2014 15:57:52 +0000 (15:57 +0000)]
Merge "Log a warning when getting lvs and vgs takes longer than 60 seconds"

10 years agoMerge "Fix unnecessary snap of glance image, with non-raw images"
Jenkins [Fri, 17 Oct 2014 02:24:50 +0000 (02:24 +0000)]
Merge "Fix unnecessary snap of glance image, with non-raw images"

10 years agoLog a warning when getting lvs and vgs takes longer than 60 seconds
Matt Riedemann [Thu, 16 Oct 2014 15:39:07 +0000 (08:39 -0700)]
Log a warning when getting lvs and vgs takes longer than 60 seconds

We know something is causing lvs/vgs commands to block while deleting a
volume and this is causing Tempest to timeout while waiting for the
volume to be deleted.  What we don't have right now is very good
(specific) logging when this happens, unless we get messages in syslog
for lvm tasks taking more than 120 seconds, but that doesn't always
happen when we see the volume delete timeout in Tempest.

This patch adds a check for when getting logical volumes and volume
groups takes longer than 60 seconds and logs a warning if that happens.
This is helpful in production also because the default interval for
periodic tasks is 60 seconds so having these take longer than that time
could cause periodic tasks to block up on each other and you'll get
warnings from the FixedIntervalLoopingCall in oslo which is controlling
the task runs.

Related-Bug: #1373513

Change-Id: I7ac5ddbbd9bda7744db33f0bb8d56879301f5538

10 years agoMerge "Multipath commands with error messages in stdout fail to parse"
Jenkins [Thu, 16 Oct 2014 19:53:06 +0000 (19:53 +0000)]
Merge "Multipath commands with error messages in stdout fail to parse"

10 years agoMerge "Fix display name change during backup restore"
Jenkins [Thu, 16 Oct 2014 10:08:52 +0000 (10:08 +0000)]
Merge "Fix display name change during backup restore"

10 years agoAdd client_socket_timeout option
Stuart McLaren [Fri, 5 Sep 2014 12:48:04 +0000 (12:48 +0000)]
Add client_socket_timeout option

Add a parameter to take advantage of the new(ish) eventlet socket timeout
behaviour.  Allows closing idle client connections after a period of
time, eg:

$ time nc localhost 8776
real    1m0.063s

Setting 'client_socket_timeout = 0' means do not timeout.

DocImpact

Change-Id: If492810a2f10fa5954f8c8bb708b14be0b77fb90
Closes-bug: #1371022

10 years agoMerge "Updated from global requirements"
Jenkins [Thu, 16 Oct 2014 05:56:27 +0000 (05:56 +0000)]
Merge "Updated from global requirements"

10 years agoMerge "IBM Storwize driver: Add local variable assignment to "ctxt""
Jenkins [Thu, 16 Oct 2014 05:56:19 +0000 (05:56 +0000)]
Merge "IBM Storwize driver: Add local variable assignment to "ctxt""

10 years agoMerge "Correct the message string"
Jenkins [Thu, 16 Oct 2014 05:55:25 +0000 (05:55 +0000)]
Merge "Correct the message string"

10 years agoMerge "NetApp fix to set non default server port in api"
Jenkins [Thu, 16 Oct 2014 05:55:16 +0000 (05:55 +0000)]
Merge "NetApp fix to set non default server port in api"

10 years agoIBM Storwize driver: Add local variable assignment to "ctxt"
Vincent Hou [Fri, 10 Oct 2014 07:46:36 +0000 (15:46 +0800)]
IBM Storwize driver: Add local variable assignment to "ctxt"

* The method get_vdisk_params in helpers.py is missing a local variable
assignment for "ctxt", causing "UnboundLocalError: local variable
'ctxt' referenced before assignment. Adding the assignment should
resolve this issue.

* Add the unit tests coverage for get_vdisk_params.

Change-Id: I564b1ef8cd1b6504d5ac8c9af0bb11bf29767d9a
closes-bug: #1379654

10 years agoUpdated from global requirements
OpenStack Proposal Bot [Wed, 15 Oct 2014 23:40:34 +0000 (23:40 +0000)]
Updated from global requirements

Change-Id: I8ad37eb2e149aa1bb51ec71988e8dbbf6243118e

10 years agoMultipath commands with error messages in stdout fail to parse
Patrick East [Tue, 14 Oct 2014 22:45:38 +0000 (15:45 -0700)]
Multipath commands with error messages in stdout fail to parse

This change fixes an issue in find_multipath_device() where the command
output of ‘multipath -l <device>’ would sometimes fail to be parsed if
there were error messages in the stdout string in addition to the
expected output. We will now strip out the error messages before we
attempt to parse the lines.

Change-Id: I3d48debc7d64f6a891ac37d4c2c5ebddfb5b00b0
Closes-Bug: #1380742

10 years agoNetApp fix to set non default server port in api
Andrew Kerr [Thu, 29 May 2014 03:16:23 +0000 (08:46 +0530)]
NetApp fix to set non default server port in api

The non default netapp_server_port config option was not
getting set in api even if specified in cinder.conf. Its
made non mandatory and set if specified in the configuration.

Change-Id: I62943427e0caac2742cce4ce56c1a49917f9210d
Closes-bug: #1322379

10 years agoCorrect the message string
YangLei [Wed, 15 Oct 2014 10:59:31 +0000 (18:59 +0800)]
Correct the message string

Change %(volumeid) to %(volumeid)s in message string.

Change-Id: Ia780a8687a784a6d8d8f0c5e6fe9b1a884416608
Closes-Bug: #1381464

10 years agoMerge "Fix LVM iSCSI driver tgtadm CHAP authentication"
Jenkins [Wed, 15 Oct 2014 04:49:47 +0000 (04:49 +0000)]
Merge "Fix LVM iSCSI driver tgtadm CHAP authentication"

10 years agoMerge "Remove vol_type_id cast to str"
Jenkins [Wed, 15 Oct 2014 01:08:39 +0000 (01:08 +0000)]
Merge "Remove vol_type_id cast to str"

10 years agoFix LVM iSCSI driver tgtadm CHAP authentication
Tomoki Sekiyama [Tue, 14 Oct 2014 23:09:44 +0000 (19:09 -0400)]
Fix LVM iSCSI driver tgtadm CHAP authentication

Currently CHAP Authentication in LVM iSCSI driver with tgtadm does not work.
This is because the tgtadm helper creates the target configuration file
with an 'IncomingUser' entry, which is ignored by tgtd.
This patch fixes it to 'incominguser'.

Change-Id: I14871985a2a916834122f849238f05b75726bc1a
Closes-Bug: #1329214

10 years agoMerge "check the configuration item glance_num_retries"
Jenkins [Tue, 14 Oct 2014 22:23:32 +0000 (22:23 +0000)]
Merge "check the configuration item glance_num_retries"

10 years agoMerge "Export cinder volumes only if the status is 'in-use'"
Jenkins [Tue, 14 Oct 2014 22:17:07 +0000 (22:17 +0000)]
Merge "Export cinder volumes only if the status is 'in-use'"

10 years agoMerge "HP 3PAR: Don't ignore extra-specs snap_cpg when missing cpg"
Jenkins [Tue, 14 Oct 2014 20:52:37 +0000 (20:52 +0000)]
Merge "HP 3PAR: Don't ignore extra-specs snap_cpg when missing cpg"

10 years agoMerge "3PAR migrate without losing type settings"
Jenkins [Tue, 14 Oct 2014 20:52:28 +0000 (20:52 +0000)]
Merge "3PAR migrate without losing type settings"

10 years agoMerge "3PAR with pool-aware-cinder-scheduler"
Jenkins [Tue, 14 Oct 2014 20:52:19 +0000 (20:52 +0000)]
Merge "3PAR with pool-aware-cinder-scheduler"

10 years agoMerge "Move SolidFire driver from httplib to requests"
Jenkins [Tue, 14 Oct 2014 20:19:29 +0000 (20:19 +0000)]
Merge "Move SolidFire driver from httplib to requests"

10 years agoExport cinder volumes only if the status is 'in-use'
Mitsuhiro Tanino [Tue, 14 Oct 2014 16:41:41 +0000 (12:41 -0400)]
Export cinder volumes only if the status is 'in-use'

Currently, cinder volumes are exported both 'in-use' and 'available'
after restarting cinder-volume service.
This behavior was introduced following commit.

  commit ffefe18334a9456250e1b6ff88b7b47fb366f374
  Author: Zhiteng Huang <zhithuang@ebaysf.com>
  Date: Sat Aug 23 18:32:57 2014 +0000

If the volumes are attached to nova instances, they should be exported
via tgtd after restarting cinder-volume.
But the volumes which are not attached to instances must not be exported
because everyone can connect these volumes.

This patch changes volume export behavior that exports a volume only if
the volume status is 'in-use'.

Change-Id: I4c598c240b9290c81bd8001e5a0720c8c329aeb9
Signed-off-by: Mitsuhiro Tanino <mitsuhiro.tanino@hds.com>
Closes-bug: #1381106

10 years agoRemove vol_type_id cast to str
Ivan Kolodyazhny [Mon, 13 Oct 2014 08:57:58 +0000 (11:57 +0300)]
Remove vol_type_id cast to str

Volume Type ID is string field, so we don't need to cast it
to str one more time

Change-Id: I8dcbfb770c412624d59c80bebe00d8c27ab0f823

10 years agoMove SolidFire driver from httplib to requests
John Griffith [Fri, 10 Oct 2014 01:22:03 +0000 (19:22 -0600)]
Move SolidFire driver from httplib to requests

The SolidFire driver has been pretty static for a number of
years now, this change is to move from httplib for API calls
to requests.  There are a number of advantages to this, including
performance, simplicity and ability to add things like ssl support
easily.

In addtion this change removes the confusing looping/retry mechanisms
that were in the issue_api_request method and replaces it with a
retry decorator for the exceptions we're interested in retrying.

Finally, I realize that my unit tests suck!  That will be one of the
follow up items after a bit more clean up in the driver.

Change-Id: Icc4cf601bffddb057f35537f3870c45dd5eb67cc

10 years agocheck the configuration item glance_num_retries
zhangchunlong1@huawei.com [Tue, 23 Sep 2014 07:50:27 +0000 (15:50 +0800)]
check the configuration item glance_num_retries

we need to to check the value of the configuration item glance_num_retries
in the code in order to ensure the " glance_num_retries " is equal or greater
than 0

Change-Id: I661ee883f3e1009e7fb242e0df2fa130eb8daa66
Closes-Bug: #1372452

10 years agoVMware: Fix initialization of datastore selector
Vipin Balachandran [Mon, 13 Oct 2014 14:04:36 +0000 (19:34 +0530)]
VMware: Fix initialization of datastore selector

The WSDL URL of storage policy service is determined and a session is
created using it in do_setup(). This session is later used to initialize
the datastore selector property (ds_sel), which uses the session for all
storage policy related API calls.

After commit a8fa3ceb1e72bac2ab67f569a2ca009f995f59fd (Integrate
OSprofiler and Cinder), the properties defined in vmdk module are called
before do_setup(). As a result, the ds_sel (datastore selector) property
is initialized with a session instance containing a 'None' PBM (storage
policy service) WSDL URL. This results in failures of all storage policy
related APIs invoked using datastore selector. This patch fixes the
problem by re-initializing the property in do_setup().

Change-Id: Ibdf8b23f9e215000cf9053b81d374066fabd6851
Closes-Bug: #1380675

10 years agoMerge "SQL scripts should not manage transactions"
Jenkins [Tue, 14 Oct 2014 06:38:57 +0000 (06:38 +0000)]
Merge "SQL scripts should not manage transactions"

10 years agoMerge "check the configuration eqlx_cli_max_retries"
Jenkins [Mon, 13 Oct 2014 15:38:54 +0000 (15:38 +0000)]
Merge "check the configuration eqlx_cli_max_retries"

10 years agoMerge "Fix exception handling on test_delete_nonexistent_volume"
Jenkins [Mon, 13 Oct 2014 09:25:24 +0000 (09:25 +0000)]
Merge "Fix exception handling on test_delete_nonexistent_volume"

10 years agoMerge "NetApp fix for default host type in eseries"
Jenkins [Mon, 13 Oct 2014 07:16:29 +0000 (07:16 +0000)]
Merge "NetApp fix for default host type in eseries"

10 years agoMerge "Remove deprecated use of gettextutils import _"
Jenkins [Mon, 13 Oct 2014 06:56:43 +0000 (06:56 +0000)]
Merge "Remove deprecated use of gettextutils import _"

10 years agoImported Translations from Transifex
OpenStack Proposal Bot [Sun, 12 Oct 2014 06:17:44 +0000 (06:17 +0000)]
Imported Translations from Transifex

Change-Id: Idbbc5fbb66b53445a7934cff2e32832d9e4c22e2

10 years agoFix exception handling on test_delete_nonexistent_volume
Eiichi Aikawa [Fri, 26 Sep 2014 06:37:31 +0000 (15:37 +0900)]
Fix exception handling on test_delete_nonexistent_volume

test_delete_nonexistent_volume wants to check the exception would be
received when nonexistent volume was specified. But currently, this
test case checks the exception would be received when nonexistent
metadata was specified.

Change-Id: Ia110618d5c658551a1826d495656954be02f4326

10 years agoMerge "GlusterFS: Remove unneeded conf import"
Jenkins [Sat, 11 Oct 2014 07:54:07 +0000 (07:54 +0000)]
Merge "GlusterFS: Remove unneeded conf import"