]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
10 years agoUse immutable default values for args
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

10 years agoMerge "Sync gettextutils.py from oslo-incubator"
Jenkins [Mon, 14 Jul 2014 19:24:49 +0000 (19:24 +0000)]
Merge "Sync gettextutils.py from oslo-incubator"

10 years agoMerge "Clean up base Volume Driver"
Jenkins [Sun, 13 Jul 2014 23:25:52 +0000 (23:25 +0000)]
Merge "Clean up base Volume Driver"

10 years agoMerge "Correct misspelled word"
Jenkins [Sat, 12 Jul 2014 18:30:31 +0000 (18:30 +0000)]
Merge "Correct misspelled word"

10 years agoMerge "Fixes EqualLogic volume live migration."
Jenkins [Fri, 11 Jul 2014 15:58:32 +0000 (15:58 +0000)]
Merge "Fixes EqualLogic volume live migration."

10 years agoMerge "Fix begin_detach logic"
Jenkins [Thu, 10 Jul 2014 23:55:31 +0000 (23:55 +0000)]
Merge "Fix begin_detach logic"

10 years agoMerge "Sync processutils and log from oslo"
Jenkins [Thu, 10 Jul 2014 23:09:46 +0000 (23:09 +0000)]
Merge "Sync processutils and log from oslo"

10 years agoMerge "volume_image_metadata missing from volume list"
Jenkins [Thu, 10 Jul 2014 21:19:59 +0000 (21:19 +0000)]
Merge "volume_image_metadata missing from volume list"

10 years agoClean up base Volume Driver
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

10 years agoFixes EqualLogic volume live migration.
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

10 years agoMerge "Fixed some typos in the cinder codebase"
Jenkins [Thu, 10 Jul 2014 11:00:26 +0000 (11:00 +0000)]
Merge "Fixed some typos in the cinder codebase"

10 years agoCorrect misspelled word
Robert Mizielski [Thu, 10 Jul 2014 10:17:13 +0000 (12:17 +0200)]
Correct misspelled word

Change-Id: I1bb54e96376a23aa3b28a06ec93fd13cc9dc5438

10 years agoMerge "Remove $sqlite_db from default database connection"
Jenkins [Thu, 10 Jul 2014 09:23:57 +0000 (09:23 +0000)]
Merge "Remove $sqlite_db from default database connection"

10 years agoMerge "Use PyCrypto to generate randomness passwords"
Jenkins [Thu, 10 Jul 2014 08:45:59 +0000 (08:45 +0000)]
Merge "Use PyCrypto to generate randomness passwords"

10 years agoFixed some typos in the cinder codebase
Abhishek Lekshmanan [Wed, 2 Jul 2014 06:10:54 +0000 (11:40 +0530)]
Fixed some typos in the cinder codebase

Change-Id: Ifb8778d20aa1534a7abca3fd6705493327d2893e

10 years agoSync gettextutils.py from oslo-incubator
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

10 years agoMerge "Updated from global requirements"
Jenkins [Wed, 9 Jul 2014 20:44:56 +0000 (20:44 +0000)]
Merge "Updated from global requirements"

10 years agoMerge "Fix unsaved exception in backup/drivers"
Jenkins [Wed, 9 Jul 2014 19:46:05 +0000 (19:46 +0000)]
Merge "Fix unsaved exception in backup/drivers"

10 years agoUse PyCrypto to generate randomness passwords
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
10 years agoMerge "Enable E121,E122,E123,E126,E128 hacking rules"
Jenkins [Wed, 9 Jul 2014 16:52:36 +0000 (16:52 +0000)]
Merge "Enable E121,E122,E123,E126,E128 hacking rules"

10 years agoRemove $sqlite_db from default database connection
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

10 years agoMerge "Use (# of CPUs) osapi_volume_workers by default"
Jenkins [Wed, 9 Jul 2014 15:12:58 +0000 (15:12 +0000)]
Merge "Use (# of CPUs) osapi_volume_workers by default"

10 years agoSync processutils and log from oslo
Tomoki Sekiyama [Tue, 8 Jul 2014 21:17:51 +0000 (17:17 -0400)]
Sync processutils and log from oslo

This change syncs in:

33afb20 Fix broken formatting of processutils.execute log statement
5e3d3a5 Mask passwords included without quotes at the ends of commands
6751b30 Remove extra whitespace

The most important part is '33afb20' which was broken cinder debug logging
on running commands after last oslo sync.

Change-Id: I77e0f943d39bb34ff95bac1e9d63d7450f8c24bf

10 years agoMerge "Remove cinder.context warning logging"
Jenkins [Wed, 9 Jul 2014 11:35:51 +0000 (11:35 +0000)]
Merge "Remove cinder.context warning logging"

10 years agoMerge "Only warn about deprecation warnings once"
Jenkins [Wed, 9 Jul 2014 09:05:21 +0000 (09:05 +0000)]
Merge "Only warn about deprecation warnings once"

10 years agoMerge "Enhance docstring for iscsi_helper"
Jenkins [Tue, 8 Jul 2014 15:58:00 +0000 (15:58 +0000)]
Merge "Enhance docstring for iscsi_helper"

10 years agoEnhance docstring for iscsi_helper
Tom Fifield [Tue, 24 Jun 2014 13:59:20 +0000 (21:59 +0800)]
Enhance docstring for iscsi_helper

The helptext for the iscsi_helper option did not mention the
potential to use lioadm (or fake). This patch simply amends
the text so this functionality is more discoverable.

Change-Id: I4bf4a6f77191a7f42d5b38f71759944e4997ccc6

10 years agoMerge "Replace tearDown with addCleanup - Part 3"
Jenkins [Tue, 8 Jul 2014 08:34:13 +0000 (08:34 +0000)]
Merge "Replace tearDown with addCleanup - Part 3"

10 years agoUpdated from global requirements
OpenStack Proposal Bot [Tue, 8 Jul 2014 06:57:52 +0000 (06:57 +0000)]
Updated from global requirements

Change-Id: I92903d6cc83df1127bd9fbd5db77441def43f9dd

10 years agoMerge "Ceph rbd volume manage/unmanage support"
Jenkins [Tue, 8 Jul 2014 06:56:58 +0000 (06:56 +0000)]
Merge "Ceph rbd volume manage/unmanage support"

10 years agoMerge "Restore osapi_volume_workers config option"
Jenkins [Tue, 8 Jul 2014 01:37:43 +0000 (01:37 +0000)]
Merge "Restore osapi_volume_workers config option"

10 years agoMerge "sync periodic_task fix from incubator"
Jenkins [Tue, 8 Jul 2014 00:49:41 +0000 (00:49 +0000)]
Merge "sync periodic_task fix from incubator"

10 years agoRemove cinder.context warning logging
git-harry [Mon, 7 Jul 2014 09:53:43 +0000 (10:53 +0100)]
Remove cinder.context warning logging

The code removed creates a large volume of log entries that are of
limited use. Removing them should improve the readability of the logs.

Change-Id: I2a7f20cfa6cd57aa7ae05bf9685947207cbb9502
Closes-Bug: #1329156

10 years agosync periodic_task fix from incubator
Tom Cammann [Fri, 4 Jul 2014 08:22:46 +0000 (09:22 +0100)]
sync periodic_task fix from incubator

Set the value of time the periodic task was last run to a multiple of
the spacing value rather than the actual last time run. This ensures
tasks runs regularly but avoids synchronizing that interval with other
nodes.

This patch also removes the coalescing of tasks which are _nearby_ (0.2
seconds away).

Changes:

periodic_task
-------------
4dbd3aa Make periodic tasks run on regular spacing interval
21249f1 Fix parenthesis typo misunderstanding in periodic_task

Change-Id: I6c06ae73b18d4425a987a215a050bc70335e490e

10 years agoSlow down Storwize driver initialization
Tao Bai [Wed, 2 Jul 2014 10:17:50 +0000 (03:17 -0700)]
Slow down Storwize driver initialization

Storwize has the limitation that can not burst more than
3 new ssh connection within 1 second.So slow down storwize
driver initialization.

Closes-Bug: #1335722
Change-Id: Id442cd6421ef23b953a3cb45a5f6dd6969064a6e

10 years agoMerge "Imported Translations from Transifex"
Jenkins [Sat, 5 Jul 2014 14:37:38 +0000 (14:37 +0000)]
Merge "Imported Translations from Transifex"

10 years agoUpdated from global requirements
OpenStack Proposal Bot [Sat, 5 Jul 2014 10:33:28 +0000 (10:33 +0000)]
Updated from global requirements

Change-Id: I218171b2e3581ea05a14719a821c131dd47c8eb5

10 years agoImported Translations from Transifex
OpenStack Proposal Bot [Sat, 5 Jul 2014 06:03:08 +0000 (06:03 +0000)]
Imported Translations from Transifex

Change-Id: Ic5c214bb7e55322c1b32c52691535bef4ac23937

10 years agoMerge "Fix retyping attached volumes requiring migration"
Jenkins [Fri, 4 Jul 2014 23:09:11 +0000 (23:09 +0000)]
Merge "Fix retyping attached volumes requiring migration"

10 years agoImported Translations from Transifex
OpenStack Proposal Bot [Fri, 4 Jul 2014 06:03:15 +0000 (06:03 +0000)]
Imported Translations from Transifex

Change-Id: I7295f2dda30117f7fca31c83aae799f885756cc4

10 years agoMerge "Correct lvm_mirrors help message"
Jenkins [Fri, 4 Jul 2014 05:19:26 +0000 (05:19 +0000)]
Merge "Correct lvm_mirrors help message"

10 years agoMerge "Fix host option isn't set when using multiple backend"
Jenkins [Fri, 4 Jul 2014 03:58:58 +0000 (03:58 +0000)]
Merge "Fix host option isn't set when using multiple backend"

10 years agovolume_image_metadata missing from volume list
Mathieu Gagné [Thu, 3 Jul 2014 19:30:05 +0000 (15:30 -0400)]
volume_image_metadata missing from volume list

The volume_image_metadata field was missing from the volume list
because we tried to filter VolumeGlanceMetadata against a non-existent
project_id field. Filtering should be done on the Volume associated
to the VolumeGlanceMetadata instead.

Move project_id filtering out of model_query as it assumes
the project_id field is in the queried model itself.
Build the filter ourselves against Volume.

Change-Id: I6053708296f2b5e24513dc87ed63da0f67c220ae
Closes-bug: #1337526

10 years agoCorrect lvm_mirrors help message
Eric Harney [Mon, 16 Jun 2014 19:44:09 +0000 (15:44 -0400)]
Correct lvm_mirrors help message

The description is not correct if someone sets
lvm_mirrors=0.  Also clarify LVs vs. lvms.

Change-Id: I7ec74fc8beaef5e638bc1a5dac3d7d97f1c474d3

10 years agoMerge "Support Volume Num Weighter"
Jenkins [Thu, 3 Jul 2014 17:49:15 +0000 (17:49 +0000)]
Merge "Support Volume Num Weighter"

10 years agoCeph rbd volume manage/unmanage support
ling-yun [Thu, 29 May 2014 12:36:20 +0000 (20:36 +0800)]
Ceph rbd volume manage/unmanage support

Ceph rbd support for managing and unmanaging volumes.
Partially Implements: blueprint add-export-import-volumes

Change-Id: I272f65621a3dac50a154b7f2caa545ae6fb0e54f

10 years agoEnable E121,E122,E123,E126,E128 hacking rules
Zhiteng Huang [Fri, 27 Jun 2014 19:03:00 +0000 (03:03 +0800)]
Enable E121,E122,E123,E126,E128 hacking rules

This change enables E121,E122,E123,E126,E128 hacking rule and fixes
all violations found in Cinder.

Change-Id: Ibfdcb3e286393d932e1534500e31a5f90c031adf

10 years agoReplace tearDown with addCleanup - Part 3
Julia Varlamova [Tue, 18 Feb 2014 11:17:44 +0000 (15:17 +0400)]
Replace tearDown with addCleanup - Part 3

Replace tearDown with addCleanup in some cinder unit tests.

Infra team has indicated that tearDown should not be used and should
be replaced with addCleanup in all places.

Implements blueprint replace-teardown-with-addcleanup

Change-Id: I8469ffb5c896d40f9979cd6d1f8da81be763ec14

10 years agoMerge "Remove rootwrap module"
Jenkins [Thu, 3 Jul 2014 10:34:15 +0000 (10:34 +0000)]
Merge "Remove rootwrap module"

10 years agoFix begin_detach logic
Ryan McNair [Thu, 3 Jul 2014 04:35:05 +0000 (04:35 +0000)]
Fix begin_detach logic

Fix begin_detach logic so it checks that a volume is in-use AND
attached.

Change-Id: I6f0e584070a5fc02c55c26ea92cb8b0c2a2cda3e
Closes-Bug: #1337088

10 years agoUse (# of CPUs) osapi_volume_workers by default
Matt Riedemann [Fri, 27 Jun 2014 17:57:33 +0000 (10:57 -0700)]
Use (# of CPUs) osapi_volume_workers by default

This changes the default number of cinder API workers to be equal to the
number of CPUs available on the host, rather than defaulting to 1 as it
did before.

Commit 75c96a48fc7e5dfb59d8258142b01422f81b0253 did the same thing in
Nova in Icehouse. Similar changes are being made to Glance and Trove as
well.

DocImpact: osapi_volume_workers will now be equal to the number of
           CPUs available by default if not explicitly specified
           in cinder.conf.

UpgradeImpact: Anyone upgrading to this change that does not have
           osapi_volume_workers specified in cinder.conf will now be
           running multiple API workers by default when they restart
           the cinder-api service.

Closes-Bug: #1333370

Change-Id: I8dec104800c18618e0c8422bbb93d5dc19c12876

10 years agoRestore osapi_volume_workers config option
Zhiteng Huang [Fri, 27 Jun 2014 19:38:08 +0000 (03:38 +0800)]
Restore osapi_volume_workers config option

osapi_volume_worker was introduced when enabling multi-process API
support for Cinder. However, this config option was accidentally
dropped in commit 464277220ddb800ac69562649fde62e5ca9358c4
(https://review.openstack.org/#/c/67657/20/cinder/service.py).
As a result, the value in cinder.conf wouldn't be honored.  This
change restore this config option.

Closes-bug: #1335295

Change-Id: Ib2d8532d3e6d0f48da0bc4dd6f6e64bfff8973ea

10 years agoMerge "Fix docstring for snapshots API"
Jenkins [Wed, 2 Jul 2014 14:53:01 +0000 (14:53 +0000)]
Merge "Fix docstring for snapshots API"

10 years agoMerge "Ensure rbd connect exception is properly caught"
Jenkins [Wed, 2 Jul 2014 14:51:27 +0000 (14:51 +0000)]
Merge "Ensure rbd connect exception is properly caught"

10 years agoMerge "3PAR Only remove FC Zone on last volume detach"
Jenkins [Wed, 2 Jul 2014 12:23:12 +0000 (12:23 +0000)]
Merge "3PAR Only remove FC Zone on last volume detach"

10 years agoFix host option isn't set when using multiple backend
Yaguang Tang [Mon, 23 Jun 2014 03:59:44 +0000 (11:59 +0800)]
Fix host option isn't set when using multiple backend

When using multiple volume backend, and volume driver is
cinder.volume.drivers.block_device.BlockDeviceDriver, host
option isn't set so a call to get volumes of a host returns none,
This patch changes to use self.host instead of self.configuration.host

Change-Id: Ide34ed29adad14b778b1a7388e9dc313241fa243
Closes-Bug: 1332909

10 years agoMerge "Add optional_args to fix Volume Import failure"
Jenkins [Wed, 2 Jul 2014 08:01:27 +0000 (08:01 +0000)]
Merge "Add optional_args to fix Volume Import failure"

10 years agoMerge "Don't use ModelBase.save() inside of transaction"
Jenkins [Tue, 1 Jul 2014 10:45:28 +0000 (10:45 +0000)]
Merge "Don't use ModelBase.save() inside of transaction"

10 years agoAdd optional_args to fix Volume Import failure
Jeegn Chen [Tue, 1 Jul 2014 03:31:19 +0000 (11:31 +0800)]
Add optional_args to fix Volume Import failure

Commit 971a63bd9cf675a00bce1244ec101577b5c17cac added a new
parameter 'optional_args' to execute method of QuotaReserveTask
and QuotaCommitTask. So the new parameter should be needed where
those Tasks are used. This changed volume create task flow to
provide the new parameter. We need the samiliar change to get_flow
method in cinder/volume/flows/manager/manage_existing.py

Trigger EMC VNX CI

Change-Id: Ifed7bd146eec82ba35c2b2c19e9bacd2259ae3ed
Closes-Bug: #1334086

10 years agoMerge "Add cinder-manage cmd to update host column"
Jenkins [Tue, 1 Jul 2014 06:07:05 +0000 (06:07 +0000)]
Merge "Add cinder-manage cmd to update host column"

10 years agoMerge "Use a task subclass instead of a functor + task wrapper"
Jenkins [Tue, 1 Jul 2014 05:03:09 +0000 (05:03 +0000)]
Merge "Use a task subclass instead of a functor + task wrapper"

10 years ago3PAR Only remove FC Zone on last volume detach
Walter A. Boring IV [Fri, 27 Jun 2014 23:00:01 +0000 (16:00 -0700)]
3PAR Only remove FC Zone on last volume detach

This patch checks to make sure that we don't
include the initiator_target_map in the return
of terminate_connection if there are volumes
still attached for a particular host.  The
FibreChannel ZoneManager doesn't remove zones
if there isn't an initiator_target_map in the
return of terminate_connection.

Change-Id: I98db5adb6da38454933a6e4b78085193f1d37680
Partial-Bug: #1308318

10 years agoMerge "Sync processutils from oslo with deps"
Jenkins [Mon, 30 Jun 2014 18:18:08 +0000 (18:18 +0000)]
Merge "Sync processutils from oslo with deps"

10 years agoEnsure rbd connect exception is properly caught
Edward Hope-Morley [Sun, 29 Jun 2014 18:08:46 +0000 (19:08 +0100)]
Ensure rbd connect exception is properly caught

If the rbd driver fails to connect to Ceph the exception
was not being properly caught resulting in the volume
remaining in the 'creating' state until the corresponding
task eventually times out (on top of the time it took
for the connect to fail).

Also added config option for rados connect timeout.

DocImpact: new config option 'rados_connect_timout'
Closes-Bug: 1211839
Change-Id: I5e6eaaaf6bed3e139ff476ecf9510ebe214a83f9

10 years agoMerge "Fixes cinder volume from snapshot on Windows"
Jenkins [Mon, 30 Jun 2014 08:41:31 +0000 (08:41 +0000)]
Merge "Fixes cinder volume from snapshot on Windows"

10 years agoMerge "Fixes cinder volume create on Windows Server 2012 R2"
Jenkins [Mon, 30 Jun 2014 08:40:00 +0000 (08:40 +0000)]
Merge "Fixes cinder volume create on Windows Server 2012 R2"

10 years agoMerge "Enable hacking rule E111,E112,E113"
Jenkins [Mon, 30 Jun 2014 08:01:21 +0000 (08:01 +0000)]
Merge "Enable hacking rule E111,E112,E113"

10 years agoMerge "Bump minimum hacking version to 0.9.2"
Jenkins [Mon, 30 Jun 2014 08:01:13 +0000 (08:01 +0000)]
Merge "Bump minimum hacking version to 0.9.2"

10 years agoMerge "Adding filter options to backup list"
Jenkins [Mon, 30 Jun 2014 06:54:08 +0000 (06:54 +0000)]
Merge "Adding filter options to backup list"

10 years agoAdd cinder-manage cmd to update host column
John Griffith [Sun, 29 Jun 2014 15:06:31 +0000 (09:06 -0600)]
Add cinder-manage cmd to update host column

If you deploy Cinder as per the default using the docs,
you can't later decide to add backends using the
multi-backend functionality. The reason is that multi-backend
is implemented by appending a backend-name to the host entry.

So if you convert the config to multi-backend the hostname
for any volumes that you have created are no longer
associated with a valid volume-driver (ie you can no
longer perform operations including delete on these
volumes).

In addition, in the case of using a SAN attached backend if
one redeploys their cinder-volume service to another node
they'll have the same issue.

This patch adds a cinder-manage command that will go through
volumes that are located on a specified host and update
the host column on each of them.

Change-Id: I8758fb8ef3fccbba2a598240c42d625b997e2db6
Closes-Bug: 1320688

10 years agoMerge "Synced jsonutils from oslo-incubator"
Jenkins [Fri, 27 Jun 2014 21:46:17 +0000 (21:46 +0000)]
Merge "Synced jsonutils from oslo-incubator"

10 years agoMerge "3PAR volume manage/unmanage support"
Jenkins [Fri, 27 Jun 2014 21:39:42 +0000 (21:39 +0000)]
Merge "3PAR volume manage/unmanage support"

10 years agoMerge "Fix dropped exception for create_export in vol manager"
Jenkins [Fri, 27 Jun 2014 21:39:34 +0000 (21:39 +0000)]
Merge "Fix dropped exception for create_export in vol manager"

10 years agoSync processutils from oslo with deps
Matt Riedemann [Fri, 27 Jun 2014 16:50:56 +0000 (09:50 -0700)]
Sync processutils from oslo with deps

The main target for the sync is to pick up the get_worker_count()
method in commit 85f178489a128a04a7ee3ed44018403caa109ef0 so that we can
set osapi_volume_workers equal to the number of CPUs on the host.

Changes:

processutils
------------
85f1784 Move nova.utils.cpu_count() to processutils module
cdcc19c Mask passwords that are included in commands
8a0f567 Remove str() from LOG.* and exceptions
51778f9 Allow passing environment variables to execute()
fcf517d Update oslo log messages with translation domains
af41592 Catch OSError in processutils
f773ea2 Fix i18n problem in processutils module
8b2b0b7 Use hacking import_exceptions for gettextutils._
3b71f46 Fixed misspellings of common words
12bcdb7 Remove vim header
a4dab73 Correct execute() to check 0 in check_exit_code

importutils
-----------
1173e46 Remove ValueError when accessing sys.modules

jsonutils
---------
0d7296f Add kwargs to jsonutils.load(s) functions

log
---
109e325 Use oslo.messaging to publish log errors
de4adbc pep8: fixed multiple violations
eac71f5 Fix common.log.ContextFormatter for Python 3
d78b633 Fixes a simple spelling mistake
621d831 always log a traceback in the sys.excepthook
90ae24b Remove redundant default=None for config options
af36c2a Fix logging setup for Python 3.4
cdcc19c Mask passwords that are included in commands

strutils
--------
8a0f567 Remove str() from LOG.* and exceptions
fd18c28 Fix safe_encode(): return bytes on Python 3
302c7c8 strutils: Allow safe_{encode,decode} to take bytes as input

timeutils
---------
250cd88 Fixed a new pep8 error and a small typo

Partial-Bug: #1333370

Change-Id: I7115cb1ae341a995502ca8ba988c12e9168259e0

10 years agoSynced jsonutils from oslo-incubator
Ihar Hrachyshka [Tue, 27 May 2014 08:22:28 +0000 (10:22 +0200)]
Synced jsonutils from oslo-incubator

The sync includes change that drastically enhances performance on Python
2.6 with fresh simplejson library installed.

The latest commit in oslo-incubator:
0f4586c0076183c6356eec682c8a593648125abd

The following changes are included with this patch:
-> 18f2bc1 Enforce unicode json output for jsonutils.load[s]()
--> cinder/openstack/common/jsonutils.py

Change-Id: Ib3dc0b713ed90396919feba018772243b3b9c90f
Closes-Bug: 1314129

10 years agoMerge "Add cgroups related commands to rootwrap filters"
Jenkins [Fri, 27 Jun 2014 13:46:12 +0000 (13:46 +0000)]
Merge "Add cgroups related commands to rootwrap filters"

10 years agoEnable hacking rule E111,E112,E113
Zhiteng Huang [Fri, 27 Jun 2014 10:44:41 +0000 (18:44 +0800)]
Enable hacking rule E111,E112,E113

This change fixes all violations of E111, E112, E113 hacking rules
and enable these rules in tox.ini

Change-Id: I79b1f2f26fbbec4ad47230ca2e8a2802458a6cee

10 years agoBump minimum hacking version to 0.9.2
Zhiteng Huang [Tue, 24 Jun 2014 07:59:10 +0000 (15:59 +0800)]
Bump minimum hacking version to 0.9.2

Take advantage of newer version hacking to automate a few style checkings.
A change included this hacking update was proposed by OpenStack Proposal Bot
in earlier patch sets (before 19) but somehow it was missed in latter
proposals. (https://review.openstack.org/#/c/96206/)

Modified/New rules in 0.9.2:

Rule changes:
    * Report E129 instead of E125 for visually indented line with same indent
    * as next logical line.
    * Report E265 for space before block comment.
    * Report E713 and E714 when operators ``not in`` and ``is not`` are
    recommended (taken from hacking).
    * Report E131 instead of E121 / E126 if the hanging indent is not consistent
    within the same continuation block.  It helps when error E121 or E126 is
    in the ``ignore`` list.
    * Report E126 instead of E121 when the continuation line is hanging with
    extra indentation, even if indentation is not a multiple of 4.
    - Dropped H901,H902 as those are now in pep8 and enforced by E713 and E714
New rules:
    + H104  File contains nothing but comments
    + H305  imports not grouped correctly
    + H307  like imports should be grouped together
    + H405  multi line docstring summary not separated with an empty line
    + H904  Wrap long lines in parentheses instead of a backslash

These rules (including changed rules) are all disabled in this change if they
caues any pep8 checking failure, and will be turned on in follow-up patches
if considered useful.

Original commit message in openstack/requirements:

Hacking 0.9.1 was out for a while (hacking 0.9.0 had a minor bug in it, so its
blacklisted), and we want to start supporting projects to migrate over
to 0.9.x. Expand the upper bound to allow 0.9.x while still
supporting 0.8.x series so we keep the old version in our mirrors as to
not break anything.

Change-Id: Ifde0a550e7f9c76b0446759e9f690da2b2aafceb

10 years agoMerge "Misuse of i18n log translation to output error message"
Jenkins [Fri, 27 Jun 2014 06:01:27 +0000 (06:01 +0000)]
Merge "Misuse of i18n log translation to output error message"

10 years agoMerge "Fix BrcdFCSANlookupService to iterate multiple switches."
Jenkins [Fri, 27 Jun 2014 02:11:29 +0000 (02:11 +0000)]
Merge "Fix BrcdFCSANlookupService to iterate multiple switches."

10 years agoOnly warn about deprecation warnings once
Joshua Harlow [Fri, 27 Jun 2014 00:52:04 +0000 (17:52 -0700)]
Only warn about deprecation warnings once

Instead of repeatly emitting data about which
modules are deprecated again and again just warn
about those deprecation once and then never warn
about them again.

This is a good thing to have, and will be needed
as taskflow moves one of its classes used in cinder
to a new and longer-term location and will emit
deprecation about the usage of the old location.

Change-Id: I962f9bab920a03eca235c9e4591d367687e44954

10 years agoFix dropped exception for create_export in vol manager
Eric Harney [Thu, 10 Apr 2014 16:57:50 +0000 (12:57 -0400)]
Fix dropped exception for create_export in vol manager

If self.driver.create_export() fails, model_update is
False and this exception is therefore not logged,
causing things to break later in the execution path in
unexpected ways.

Closes-Bug: #1300148

Change-Id: I77600f3311efd71fa644adb6d65e4b19ab306203

10 years agoMisuse of i18n log translation to output error message
Mitsuhiro Tanino [Tue, 24 Jun 2014 23:40:36 +0000 (19:40 -0400)]
Misuse of i18n log translation to output error message

I found a misuse of i18n log translation for error message
in "cinder/volume/drivers/lvm.py'.

The "%s' can not be translated. In this case, the "message'
must be i18ning and then the "message" should be output
using LOG.error().

Change-Id: I4495522d337764dc28186225f4594a227ac3e555
Signed-off-by: Mitsuhiro Tanino <mitsuhiro.tanino@hds.com>
Closes-Bug: 1334334

10 years agoSupport Volume Num Weighter
ling-yun [Wed, 25 Jun 2014 02:40:38 +0000 (10:40 +0800)]
Support Volume Num Weighter

Currently cinder support choosing volume backend according to
free_capacity and allocated_capacity. Volume Num Weighter is
that scheduler could choose volume backend based on volume number
in volume backend, which could provide another mean to help
improve volume-backends' IO balance and volumes' IO performance,
see details in ref [1] and [2].

blueprint support-volume-num-weighter

Ref:
[1]https://blueprints.launchpad.net/cinder/+spec/support-volume-num-weighter
[2]https://review.openstack.org/#/c/99683/

Change-Id: Id9275ed954f1b35ee8d7bee0f0b61cc3a7c48f63

10 years agoMerge "Add keyword argument missing at some exc.HTTPError subclass"
Jenkins [Thu, 26 Jun 2014 06:39:51 +0000 (06:39 +0000)]
Merge "Add keyword argument missing at some exc.HTTPError subclass"

10 years agoFix docstring for snapshots API
Tom Fifield [Thu, 26 Jun 2014 06:18:59 +0000 (14:18 +0800)]
Fix docstring for snapshots API

For some reason, the snapshots controller class' introductory
docstring stated that it was the volume API controller.
This patch changes it to say:
"The Snapshots API controller for the OpenStack API."

Change-Id: I8c9827939bbc7acf93282db854a40501f3fea399

10 years agoDon't use ModelBase.save() inside of transaction
ChangBo Guo(gcb) [Wed, 5 Mar 2014 09:00:58 +0000 (17:00 +0800)]
Don't use ModelBase.save() inside of transaction

'with session.begin()' makes some operations in one transaction.
session.begin() returns a transaction instance, then does some operations,
and will commit or rollback automatically before leaving the block.
ModelBase.save() always submit a commit, and that is not expected.
When we get a persistent object from database, we just modify the
object inside of block 'with session.begin()' and sqlalchemy will
update it, don't need method session.add() or ModelBase.save().

Closes-Bug: #1224429
Change-Id: I4af58e98b2783d3945d92e57680d58e7ae356a67

10 years agoFix unsaved exception in backup/drivers
KIYOHIRO ADACHI [Fri, 14 Mar 2014 07:04:57 +0000 (16:04 +0900)]
Fix unsaved exception in backup/drivers

When an exception occurs during exception handling, it loses the
information of the first exception.

We should use the excutils.save_and_reraise_exception() in some cases.

Change-Id: I5d0ea53ba6c52138c71cca61aedbdf06338f2a7d
Closes-Bug: #1292380

10 years ago3PAR volume manage/unmanage support
Anthony Lee [Fri, 20 Jun 2014 23:05:48 +0000 (16:05 -0700)]
3PAR volume manage/unmanage support

HP 3PAR support for managing and unmanaging volumes.

Partially Implements: blueprint add-export-import-volumes
Change-Id: Ibb0c34eccad4f8bb028025d055d9a59c2a3a6204

10 years agoAdd cgroups related commands to rootwrap filters
Tomoki Sekiyama [Wed, 25 Jun 2014 21:22:32 +0000 (17:22 -0400)]
Add cgroups related commands to rootwrap filters

Adds rootwrap filters to allow commands to create/setup cgroups and
to put commands into cgroups in order to limit bandwidth usage,
that are used in setup_blkio_cgroup() (volume/utils.py).

Change-Id: Id74cdd4d2fdfffb12aff8cb3b977324bb5b45173
Signed-off-by: Tomoki Sekiyama <tomoki.sekiyama@hds.com>
Implements: blueprint limit-volume-copy-bandwidth

10 years agoMerge "Minor cleanups in test_volume"
Jenkins [Wed, 25 Jun 2014 20:15:51 +0000 (20:15 +0000)]
Merge "Minor cleanups in test_volume"

10 years agoMerge "I/O rate limit for volume copy with qemu-img convert"
Jenkins [Wed, 25 Jun 2014 19:00:34 +0000 (19:00 +0000)]
Merge "I/O rate limit for volume copy with qemu-img convert"

10 years agoMerge "I/O rate limit for volume copy with dd"
Jenkins [Wed, 25 Jun 2014 19:00:26 +0000 (19:00 +0000)]
Merge "I/O rate limit for volume copy with dd"

10 years agoUse a task subclass instead of a functor + task wrapper
Joshua Harlow [Wed, 25 Jun 2014 18:24:02 +0000 (11:24 -0700)]
Use a task subclass instead of a functor + task wrapper

Instead of using a functor that activates the scheduler driver
instead incorporate and use a task subclass, this avoids the less
meaningful information that is presented when a functor is used
as well as allows for a more straightforward path for future
subclassing and derivations of work.

Change-Id: Ice66e109968c28f36156edf3dd47a89f94494bb8

10 years agoFix BrcdFCSANlookupService to iterate multiple switches.
Angela Smith [Wed, 25 Jun 2014 18:22:27 +0000 (11:22 -0700)]
Fix BrcdFCSANlookupService to iterate multiple switches.

Changed close_connection to client.close_connection.
Fixed return map to key on fabric name instead of principal switch wwn.

Closes-Bug: 1303460
Change-Id: I3725c16cd416a028b85ac8ac6c0d895fd6900763

10 years agoMerge "Fixed data copy issue of volume/driver.py"
Jenkins [Wed, 25 Jun 2014 04:21:21 +0000 (04:21 +0000)]
Merge "Fixed data copy issue of volume/driver.py"

10 years agoMerge "GlusterFS: Handle deletion of snapshot with no backing file"
Jenkins [Wed, 25 Jun 2014 03:48:47 +0000 (03:48 +0000)]
Merge "GlusterFS: Handle deletion of snapshot with no backing file"

10 years agoGlusterFS: Handle deletion of snapshot with no backing file
Thang Pham [Thu, 29 May 2014 03:07:49 +0000 (23:07 -0400)]
GlusterFS: Handle deletion of snapshot with no backing file

If a glusterfs volume is in-use, nova is called to delete a
volume snapshot.  It is possible for a timeout to occur, since
cinder is polling for nova task progress.  In such case, a
GlusterfsException is thrown, but nova continues to process the
snapshot delete and commits the changes.  Cinder is not aware of
this, and the actual snapshot entry in cinder is prevented from
being deleted, since no backing file exists for the out-of-sync
snapshot.  This patch allows a snapshot with no backing file to
be deleted from cinder and updates the volume info file.

Change-Id: I83c8a7242199edbfd1897297589ac7deb42c5865
Closes-Bug: #1311182

10 years agoMerge "Remove check_volume_az_zone functor and associated passing"
Jenkins [Tue, 24 Jun 2014 09:44:29 +0000 (09:44 +0000)]
Merge "Remove check_volume_az_zone functor and associated passing"

10 years agoMerge "Fixes cinder volume from image on Windows"
Jenkins [Tue, 24 Jun 2014 08:31:57 +0000 (08:31 +0000)]
Merge "Fixes cinder volume from image on Windows"