]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
11 years agoEnsure volume exists before deleting.
Michael Basnight [Wed, 20 Feb 2013 16:12:03 +0000 (10:12 -0600)]
Ensure volume exists before deleting.

fixes bug 1130744

Change-Id: I39152dd1caa5ab1b2cfbae56eaec8c8fa309669c

11 years agoMerge "Update cinder-manage to use FLAGS.log_dir."
Jenkins [Wed, 20 Feb 2013 10:36:27 +0000 (10:36 +0000)]
Merge "Update cinder-manage to use FLAGS.log_dir."

11 years agoMerge "Add a volume driver in Cinder for Scality SOFS"
Jenkins [Wed, 20 Feb 2013 08:58:50 +0000 (08:58 +0000)]
Merge "Add a volume driver in Cinder for Scality SOFS"

11 years agoMerge "Handle maxclonepervolume/node limits in SF driver."
Jenkins [Wed, 20 Feb 2013 08:50:36 +0000 (08:50 +0000)]
Merge "Handle maxclonepervolume/node limits in SF driver."

11 years agoMerge "Use oslo-config-2013.1b3"
Jenkins [Wed, 20 Feb 2013 07:02:31 +0000 (07:02 +0000)]
Merge "Use oslo-config-2013.1b3"

11 years agoMerge "Set rootwrap_config in cinder.conf sample."
Jenkins [Wed, 20 Feb 2013 06:16:46 +0000 (06:16 +0000)]
Merge "Set rootwrap_config in cinder.conf sample."

11 years agoHandle maxclonepervolume/node limits in SF driver.
John Griffith [Wed, 20 Feb 2013 04:34:01 +0000 (21:34 -0700)]
Handle maxclonepervolume/node limits in SF driver.

The SolidFire cluster has a max simultaneous clones per volume and node
limt that we weren't accounting for.  Add some logic to detect this situation
and loop until enough simultaneous clones are completed to allow processing
of the next one in line.

Fixes bug: 1129810

Change-Id: Id63c1b142a81df5d9d2c4e39fb821b03ebac63a2

11 years agoUse oslo-config-2013.1b3
Mark McLoughlin [Sun, 10 Feb 2013 23:55:24 +0000 (18:55 -0500)]
Use oslo-config-2013.1b3

The cfg API is now available via the oslo-config library, so switch to
it and remove the copied-and-pasted version.

Add the 2013.1b3 tarball to tools/pip-requires - this will be changed
to 'oslo-config>=2013.1' when oslo-config is published to pypi. This
will happen in time for grizzly final.

Add dependency_links to setup.py so that oslo-config can be installed
from the tarball URL specified in pip-requires.

Remove the 'deps = pep8==1.3.3' from tox.ini as it means all the other
deps get installed with easy_install which can't install oslo-config
from the URL.

Retain dummy cfg.py file until keystoneclient middleware has been
updated (I18c450174277c8e2d15ed93879da6cd92074c27a).

Change-Id: I4815aeb8a9341a31a250e920157f15ee15cfc5bc

11 years agoMerge "Add a safe_minidom_parse_string function."
Jenkins [Wed, 20 Feb 2013 00:00:31 +0000 (00:00 +0000)]
Merge "Add a safe_minidom_parse_string function."

11 years agoMerge "HP 3PAR Fibre Channel Driver and iSCSI Updates"
Jenkins [Tue, 19 Feb 2013 23:07:14 +0000 (23:07 +0000)]
Merge "HP 3PAR Fibre Channel Driver and iSCSI Updates"

11 years agoMerge "Fibre Channel base class for Cinder drivers"
Jenkins [Tue, 19 Feb 2013 23:07:10 +0000 (23:07 +0000)]
Merge "Fibre Channel base class for Cinder drivers"

11 years agoMerge "Fix syntax error in cinder-volume-usage-audit"
Jenkins [Tue, 19 Feb 2013 23:05:16 +0000 (23:05 +0000)]
Merge "Fix syntax error in  cinder-volume-usage-audit"

11 years agoMerge "Fix create volume from image."
Jenkins [Tue, 19 Feb 2013 23:05:07 +0000 (23:05 +0000)]
Merge "Fix create volume from image."

11 years agoMerge "Update Storwize/SVC driver for Grizzly."
Jenkins [Tue, 19 Feb 2013 21:50:07 +0000 (21:50 +0000)]
Merge "Update Storwize/SVC driver for Grizzly."

11 years agoMerge "Skip tests if cinder is not installed"
Jenkins [Tue, 19 Feb 2013 21:29:06 +0000 (21:29 +0000)]
Merge "Skip tests if cinder is not installed"

11 years agoMerge "XenAPINFS: fix capacity reporting"
Jenkins [Tue, 19 Feb 2013 21:28:50 +0000 (21:28 +0000)]
Merge "XenAPINFS: fix capacity reporting"

11 years agoFix syntax error in cinder-volume-usage-audit
Ollie Leahy [Tue, 19 Feb 2013 17:54:59 +0000 (17:54 +0000)]
Fix syntax error in  cinder-volume-usage-audit

There was a syntax error in a print statement in cinder-volume-usage-audit
which caused the script to crash.

Fixes LP bug #1130266

Change-Id: If4b0102ec5218fc8347f97041ac65f633111c26f

11 years agoHP 3PAR Fibre Channel Driver and iSCSI Updates
Kurt Martin [Wed, 13 Feb 2013 21:55:43 +0000 (13:55 -0800)]
HP 3PAR Fibre Channel Driver and iSCSI Updates

This is the initial FC driver for the HP 3PAR array, along with some
3PAR iSCSI driver cleanup and changes in the HP 3PAR common class.
Summary of changes:
* Initial FC Driver for the Grizzly release (depends on the FC base class
  and nova FC changes https://review.openstack.org/#/c/19992/ &
  https://review.openstack.org/#/c/20003/)
* Updates to iSCSI Driver include volume type and create clone volume support
  as well as general cleanup(comments, copyright, minor bug fixes).
* The tests have been updated to add FC test and the file was renamed
  to reflect both FC and iSCSI 3PAR tests.
* Volume types added for the Grizzly release include cpg, snap_cpg, persona
  and provisioning(thin vs. full)

Partially Implements: blueprint fibre-channel-block-storage

Change-Id: Ie1c2e755aa1bcd5994ea4b02674718721b958e07

11 years agoFibre Channel base class for Cinder drivers
Kurt Martin [Wed, 13 Feb 2013 19:30:17 +0000 (11:30 -0800)]
Fibre Channel base class for Cinder drivers

This is the base class, FibreChannelDriver, for all fibre channel
drivers to extend. Currently, it has only initialize_connection
with comments, but this will be a place to put common functions
similar to the iSCSI base class.

This patch depends on the following nova and devstack changes
to be functional(both still in the review process but approved
for Grizzly):
https://review.openstack.org/#/c/19992/
https://review.openstack.org/#/c/20003/

This patch does not support copy_image_to_volume and
copy_volume_to_image in the Grizzly release. We'll revisit
this in Havana and add that support.

Partially Implements: blueprint fibre-channel-block-storage

Change-Id: I8bd28b8bd96deaec1db219457f407169ed172f69

11 years agoUpdate cinder-manage to use FLAGS.log_dir.
Dan Prince [Tue, 19 Feb 2013 17:46:03 +0000 (12:46 -0500)]
Update cinder-manage to use FLAGS.log_dir.

We no longer use FLAGS.logdir. This commit updates
cinder-manage to use the new FLAGS.log_dir option instead.

Fixes LP Bug #1130258.

Change-Id: Id5f1175ec83f0f0b677ab0d75b310fa054459319

11 years agoAdd a safe_minidom_parse_string function.
Dan Prince [Mon, 4 Feb 2013 02:54:33 +0000 (21:54 -0500)]
Add a safe_minidom_parse_string function.

Adds a new utils.safe_minidom_parse_string function and
updates external API facing Cinder modules to use it.
This ensures we have safe defaults on our incoming API XML parsing.

Internally safe_minidom_parse_string uses a ProtectedExpatParser
class to disable DTDs and entities from being parsed when using
minidom.

Fixes LP Bug #1100282.

Change-Id: Iff8340033c8e8db58184944a1bf705e16b8b3e03

11 years agoMerge "Install rtslib when installing cinder"
Jenkins [Tue, 19 Feb 2013 11:47:41 +0000 (11:47 +0000)]
Merge "Install rtslib when installing cinder"

11 years agoAdd a volume driver in Cinder for Scality SOFS
Jean-Marc Saffroy [Mon, 14 Jan 2013 11:19:52 +0000 (12:19 +0100)]
Add a volume driver in Cinder for Scality SOFS

Scality SOFS is a network filesystem mounted with FUSE, with most
options given in a configuration file. Given a mount point and a SOFS
configuration file as driver options, the Scality volume driver mounts
SOFS, and then creates, accesses and deletes volumes as regular
(sparse) files on SOFS.

Change-Id: I914714e8547a505109514e2072f9e258abca8bd4
Implements: blueprint scality-volume-driver

11 years agoFix create volume from image.
Mate Lakat [Mon, 18 Feb 2013 15:33:28 +0000 (15:33 +0000)]
Fix create volume from image.

Fix for bug 1129199

During creating a volume from an image, the volume status changed
from creating to active, skipping the download phase. This bug was most
likely introduced during:
https://review.openstack.org/20514
This patch fixes the issue by change image_location back to image_id at
the correct place.
This patch also fixes an error in the exception handling, and the update
of the volume status after creation.

Change-Id: Ib9b647031c029387b776c27f9233388bd2c67e9c

11 years agoXenAPINFS: fix capacity reporting
Mate Lakat [Mon, 18 Feb 2013 12:45:37 +0000 (12:45 +0000)]
XenAPINFS: fix capacity reporting

Fixes bug 1129056

XenAPINFS did not implement the get_volume_stats method, thus
CapacityFilter fitered out the host, thus no volume was scheduled. This
fix is working around this problem quickly, by reporting an 'unknown'
capacity.

Change-Id: I1dc5327e420a3316201318d52f602ced071d459b

11 years agoUpdate Storwize/SVC driver for Grizzly.
Avishay Traeger [Thu, 7 Feb 2013 19:50:31 +0000 (21:50 +0200)]
Update Storwize/SVC driver for Grizzly.

Includes FC support, create_cloned_volume, volume type support,
get_volume_stats, and minor bug fixes.

Change-Id: I13e3d7921c5127e6b4e0cbb4e91761e0249ec295

11 years agoSet rootwrap_config in cinder.conf sample.
John Griffith [Tue, 19 Feb 2013 00:11:44 +0000 (17:11 -0700)]
Set rootwrap_config in cinder.conf sample.

Remove the root_helper=sudo in cinder.conf.sample and
move to the rootwrap_config=/etc/cinder/rootwrap.conf as
the default.

Change-Id: Ib4bacf4d24993cb9506b51523a5ba44fe1f85d18

11 years agoMerge "Fix undef function call in test_migrations for py26"
Jenkins [Mon, 18 Feb 2013 23:34:03 +0000 (23:34 +0000)]
Merge "Fix undef function call in test_migrations for py26"

11 years agoSkip tests if cinder is not installed
Chuck Short [Mon, 18 Feb 2013 14:11:20 +0000 (08:11 -0600)]
Skip tests if cinder is not installed

Skipp test_restry_disabled and test_retry_attempt_one
if cinder is not installed.

Change-Id: Iccc36e2ce0f57b5fa67566e1da543f9888bf0f57
Signed-off-by: Chuck Short <chuck.short@canonical.com>
11 years agoMerge "Update cinder-volume to enable multi volume support"
Jenkins [Mon, 18 Feb 2013 20:47:15 +0000 (20:47 +0000)]
Merge "Update cinder-volume to enable multi volume support"

11 years agoMerge "Fix PEP8 violation (again)"
Jenkins [Mon, 18 Feb 2013 20:23:56 +0000 (20:23 +0000)]
Merge "Fix PEP8 violation (again)"

11 years agoFix undef function call in test_migrations for py26
Mike Perez [Mon, 18 Feb 2013 19:17:26 +0000 (11:17 -0800)]
Fix undef function call in test_migrations for py26

unittest does not have this function until later. This uses the already
imported cinder.test.skip_unless to accomplish the same result without
outputted error.

Change-Id: Id20add5a0d41e5d8cf6f8bc6aa0e547e5e386dab

11 years agoMerge "Sync latest cfg and log from oslo-incubator"
Jenkins [Mon, 18 Feb 2013 17:52:04 +0000 (17:52 +0000)]
Merge "Sync latest cfg and log from oslo-incubator"

11 years agoFix PEP8 violation (again)
Mate Lakat [Mon, 18 Feb 2013 17:31:14 +0000 (17:31 +0000)]
Fix PEP8 violation (again)

Change-Id: I91d8d4d879bfdffffe982aafa228c374506921df

11 years agoUpdate cinder-volume to enable multi volume support
Michael Basnight [Mon, 11 Feb 2013 21:54:45 +0000 (15:54 -0600)]
Update cinder-volume to enable multi volume support

* Added the service wrapper for multi binscripts
* Added a service_name to manager
* Added the configuration wrapper so the impls do not need
  to know if they are accessing config values from a option
  group or from the DEFAULT group
* Updated drivers to use the new configuration wrapper
* Added an example config set for multi backend
* Modified service to comply w/ common
* Added get_volume_stats to iscsi
* Added config for volume_backend_name

implements blueprint multi-volume-backends

Change-Id: Idb86ac5f1c06b9cd5061bef6a24f17727e9a58c1

11 years agoInstall rtslib when installing cinder
Chuck Short [Mon, 18 Feb 2013 14:03:32 +0000 (08:03 -0600)]
Install rtslib when installing cinder

It doesnt make sense to put rtslib in tools/test-requires
since it is not directly using the python module while running
the tests, since the tests use cinder-rtstool.

Change-Id: Ib39b91e25f22b4943ef17eee50967828f7460b25
Signed-off-by: Chuck Short <chuck.short@canonical.com>
11 years agoSync latest cfg and log from oslo-incubator
Mark McLoughlin [Mon, 21 Jan 2013 16:25:38 +0000 (16:25 +0000)]
Sync latest cfg and log from oslo-incubator

Main cfg change is:

  c5984ba Move logging config options into the log module

Logging changes include:

  c5984ba Move logging config options into the log module
  751c35b Verbose should not enable debug level logging
  edcdd25 Improve millisecond logging
  9e5912f Fix pep8 E125 errors.
  edf14e0 Enable millisecond logging by default
  9b81289 Allow nova and others to override some logging defaults
  90ada0e update deprecated stanza
  efba202 Adjust the logging_context_format_string.
  c8cf6f7 move nova.common.deprecated to openstack-common

Fixes bug #989269

Use new LOG.deprecated() in place of cinder.common.deprecated.warn().

Also pull this cinder/context.py change from nova:

  ce098cc Add user/tenant shim to RequestContext

to avoid issues caused by a s/user_id/user/ change in the context
logging format.

Change-Id: I3913ea54465658d93dc56e014dfe5d911b0541d6

11 years agoMerge "Handle 'infinite' and 'unknown' capacity in CapacityWeigher"
Jenkins [Mon, 18 Feb 2013 07:31:55 +0000 (07:31 +0000)]
Merge "Handle 'infinite' and 'unknown' capacity in CapacityWeigher"

11 years agoMerge "Update snapshot rest api to be consistent with volumes"
Jenkins [Mon, 18 Feb 2013 02:05:55 +0000 (02:05 +0000)]
Merge "Update snapshot rest api to be consistent with volumes"

11 years agoMerge "Add get_cluster_stats to SolidFire driver"
Jenkins [Sun, 17 Feb 2013 17:12:22 +0000 (17:12 +0000)]
Merge "Add get_cluster_stats to SolidFire driver"

11 years agoHandle 'infinite' and 'unknown' capacity in CapacityWeigher
Zhiteng Huang [Sun, 17 Feb 2013 08:32:04 +0000 (16:32 +0800)]
Handle 'infinite' and 'unknown' capacity in CapacityWeigher

This patch updates CapacityWeigher to transform 'infinite' and
'unknown' capacity reported by back-ends to float('inf').  They
are considered the same for sorting purpose.

Change-Id: Ic8f811227c9937c4e09eb8b77457ed7e9231be4e

11 years agoMerge "Add an ID to temporary volume snapshot object"
Jenkins [Sat, 16 Feb 2013 20:25:39 +0000 (20:25 +0000)]
Merge "Add an ID to temporary volume snapshot object"

11 years agoAdd get_cluster_stats to SolidFire driver
john-griffith [Sat, 16 Feb 2013 16:58:46 +0000 (09:58 -0700)]
Add get_cluster_stats to SolidFire driver

With the filter scheduler addition we added get_stats to the
drivers.  This provides the required data for the filtering
mechanisms and is called by the scheduler.

The change adds the required call in the driver and also adds
an update routine to it's init to populate this info on startup.
This also adds the fake api response so that the tests can perform
the init routine and get the data, while giving the added bonus of
testing the new functions at the same time.

Change-Id: Ia75e078f8e73883131cb1e68f6e6713fce1ab518

11 years agoMerge "Add GlusterFS volume driver"
Jenkins [Sat, 16 Feb 2013 16:38:15 +0000 (16:38 +0000)]
Merge "Add GlusterFS volume driver"

11 years agoMerge "Add LIO iSCSI backend support using python-rtslib"
Jenkins [Sat, 16 Feb 2013 14:42:41 +0000 (14:42 +0000)]
Merge "Add LIO iSCSI backend support using python-rtslib"

11 years agoMerge "rbd: update volume<->image copying"
Jenkins [Sat, 16 Feb 2013 10:54:33 +0000 (10:54 +0000)]
Merge "rbd: update volume<->image copying"

11 years agoMerge "Update EMC SMI-S Driver"
Jenkins [Sat, 16 Feb 2013 10:54:27 +0000 (10:54 +0000)]
Merge "Update EMC SMI-S Driver"

11 years agoMerge "Add an update option to run_tests.sh"
Jenkins [Sat, 16 Feb 2013 06:18:08 +0000 (06:18 +0000)]
Merge "Add an update option to run_tests.sh"

11 years agoMerge "Create a RemoteFsDriver class"
Jenkins [Sat, 16 Feb 2013 04:19:10 +0000 (04:19 +0000)]
Merge "Create a RemoteFsDriver class"

11 years agoMerge "Adding support for Coraid AoE SANs Appliances."
Jenkins [Sat, 16 Feb 2013 04:19:07 +0000 (04:19 +0000)]
Merge "Adding support for Coraid AoE SANs Appliances."

11 years agoMerge "Allow create_volume() to retry when exception happened"
Jenkins [Fri, 15 Feb 2013 21:38:33 +0000 (21:38 +0000)]
Merge "Allow create_volume() to retry when exception happened"

11 years agoAdding support for Coraid AoE SANs Appliances.
Jean-Baptiste RANSY [Fri, 8 Feb 2013 20:10:39 +0000 (21:10 +0100)]
Adding support for Coraid AoE SANs Appliances.

This driver provide support for Coraid hardware storage appliances
using AoE (ATA Over Ethernet) protocol.

Implements blueprint coraid-volume-driver

Reference to Nova patch libvirt-aoe :
https://review.openstack.org/21101

The following operations are supported :
-- Volume Creation with Volume Types
-- Volume Deletion
-- Volume Attach
-- Volume Detach
-- Snapshot Creation
-- Snapshot Deletion
-- Create Volume from Snapshot
-- Volume Stats

The driver only work when operating on EtherCloud ESM,
Coraid VSX and Coraid SRX Appliances.

Change-Id: I7c8dde0c99698b52c151a4db0fb1bb94d516db61

11 years agoAdd an update option to run_tests.sh
Matthew Treinish [Fri, 15 Feb 2013 19:14:54 +0000 (14:14 -0500)]
Add an update option to run_tests.sh

This commit adds an update option to run_tests.sh. This option
is used to rerun install_venv.py on an already installed venv.
This will then just update out of date packages with pip.

Change-Id: I96dc6940f536feb810d57b3316e9d712aa750d93

11 years agoUpdate EMC SMI-S Driver
Xing Yang [Wed, 6 Feb 2013 18:32:12 +0000 (13:32 -0500)]
Update EMC SMI-S Driver

1. Merged with Avishay's changes(https://review.openstack.org/#/c/
19808/3) and removed copy volume<->image from my driver.
2. Also did some refactoring based on Mike's comments
last time (See https://review.openstack.org/#/c/19979/).
Made the following changes in emc_smis_common:
- Added a member variable conn to save get_ecom_connection
and moved exceptions inside the helper function get_ecom_connection.
- Also moved exceptions inside find_pool and get_storage_type.
- Added test cases so get_ecom_connection, find_pool, and
get_storage_type will be covered.
3. Made changes in emc_smis_common to handle both iscsi and fc.

Change-Id: I56db3ba41215489f6afe840ce5310a31f28bf5ae

11 years agoAdd LIO iSCSI backend support using python-rtslib
Eric Harney [Mon, 17 Dec 2012 22:31:40 +0000 (17:31 -0500)]
Add LIO iSCSI backend support using python-rtslib

This patch enables LIO as an iSCSI backend for Cinder, using
python-rtslib.

To enable, set "iscsi_helper = lioadm" in cinder.conf.

This requires python-rtslib 2.1.fb27, which is available from pip.

Implements blueprint lio-iscsi-support
DocImpact

Change-Id: Ifb23de65f26a40997afd6148a1d0be39bcc8d196

11 years agoAdd GlusterFS volume driver
Eric Harney [Wed, 6 Feb 2013 15:26:45 +0000 (10:26 -0500)]
Add GlusterFS volume driver

This driver enables use of GlusterFS in a similar fashion
as the NFS driver.  It supports basic volume operations,
and like NFS, does not support snapshot/clone.

To enable, set volume_driver to
 cinder.volume.drivers.glusterfs.GlusterfsDriver

Note that this requires a Nova libvirt GlusterFS driver
as well.

Adds config options: glusterfs_shares_config,
glusterfs_mount_point_base, glusterfs_disk_util, and
glusterfs_sparsed_volumes.

DocImpact

Change-Id: I3dd4018f0cb4db48348728ca66bae7918309bb32

11 years agoCreate a RemoteFsDriver class
Eric Harney [Wed, 6 Feb 2013 15:25:51 +0000 (10:25 -0500)]
Create a RemoteFsDriver class

This class holds common functions for drivers similar to NFS.

Change-Id: I83d89c971fd0153df7702e2803bed66df1a759f6

11 years agoFix ordering of function args
John Griffith [Fri, 15 Feb 2013 03:41:15 +0000 (03:41 +0000)]
Fix ordering of function args

Previous change swapped context and type-id params in function
declaration.  Put it back.

Also, no reason for storing the qos dict in the parameters, if
it's stored then we continuously have to update it, remove that
for now and come up with a cleaner method later.

Change-Id: I0820a48660bdfd0481be3681e33d7e2ff3246bb1

11 years agoAdd an ID to temporary volume snapshot object
john-griffith [Thu, 14 Feb 2013 19:00:47 +0000 (12:00 -0700)]
Add an ID to temporary volume snapshot object

The create_cloned_volum method creates a temp snapshot and
when it's done it uses the standard snapshot_delete method
in the LVM driver.

A change was added that logs a statement using the object[id],
but we weren't actually setting this on our temp object so we
would get a trace fo key DNE.  This change adds an id key to
our temp object.

Fixes bug: 1125457

Change-Id: I4d886f2738a3c394a3a3a6373045669cf6bf8aaf

11 years agoAllow create_volume() to retry when exception happened
Zhiteng Huang [Fri, 25 Jan 2013 18:18:03 +0000 (02:18 +0800)]
Allow create_volume() to retry when exception happened

Due to the fact that certain volume back-ends cannot easily report
simple total_capacity_gb/free_capacity_gb for their internal
implementation complexity, scheduler is updated to let those back-ends
who report unclear capacity pass capacity filter, thus there is chance
create_volume() request would fail. In a more general case, when a
volume back-end failed to serve create_volume request for whatever reason
it'd be good that we have a mechanism to 'retry' the request.

So the idea is when volume manager catches the exception from
driver.create_volume() call, it checks if the request is allowed to be
rescheduled (requests that are not: clone volume and create volume from
snapshot while 'snapshot_same_host' option is true), it composes a new
request back to scheduler with additional information to mark this specific
back-end has been tried (so that scheduler may choose to skip this back-end
if needed).  Scheduler is (filter scheduler only, simple and chance
scheduler is not supported) is updated as well so that it only retry
scheduler_max_attempts times.  In order to skip/rule out previously tried
back-ends in next schedule task, a new RetryFilter is added.

Changes:
1) volume RPC API create_volume() is updated with new parameters
to save original request information in case rescheduling is needed.
This bumps volume RPC API to 1.4.

2) implementation of create_volume() method in volume API is
refactored in order to distinguish if a request is allowed to
do reschedule (i.e. currently create volume from source volume
bypasses scheduler, not rescheduling is allowed).

3) add reschedule functionality in create_volume() of volume
manager so that it's able to send the request back to scheduler.

4) add schedule_max_attempts config option in scheduler/driver.py

5) add RetryFitler

6) change scheduler_driver default option to FilterScheduler

Change-Id: Ia46b5eb4dc033d73734b6aea82ada34ba5731075

11 years agorbd: update volume<->image copying
Josh Durgin [Wed, 13 Feb 2013 02:18:39 +0000 (18:18 -0800)]
rbd: update volume<->image copying

Use fetch_to_raw() to convert from any format when
copying an image.

Fix two bugs in copy_image_to_volume():
 1) use rbd format 2 if supported
 2) resize to match the expected volume size

Also implement copy_volume_to_image().

Change-Id: I5589666c33ead087876e850363ad869050120882
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoFix PEP8 violation
Mate Lakat [Wed, 13 Feb 2013 10:18:15 +0000 (10:18 +0000)]
Fix PEP8 violation

There was a PEP8 violation in cinder/tests/test_solidfire.py, thus
./run_tests.sh was failing. This patch fixes the error.

Change-Id: I444fbfa57550db5c75b80683054c0ca44f4ee657

11 years agoMerge "add postgresql opportunistic testing"
Jenkins [Wed, 13 Feb 2013 08:19:43 +0000 (08:19 +0000)]
Merge "add postgresql opportunistic testing"

11 years agoMerge "make test_databases instance variable"
Jenkins [Wed, 13 Feb 2013 08:19:37 +0000 (08:19 +0000)]
Merge "make test_databases instance variable"

11 years agoMerge "v2 volume/snapshot create will correctly give a 202 response"
Jenkins [Wed, 13 Feb 2013 08:19:34 +0000 (08:19 +0000)]
Merge "v2 volume/snapshot create will correctly give a 202 response"

11 years agoMerge "NetApp direct to filer drivers for iscsi and nfs."
Jenkins [Wed, 13 Feb 2013 08:19:25 +0000 (08:19 +0000)]
Merge "NetApp direct to filer drivers for iscsi and nfs."

11 years agoUpdate snapshot rest api to be consistent with volumes
Mike Perez [Tue, 12 Feb 2013 06:49:26 +0000 (22:49 -0800)]
Update snapshot rest api to be consistent with volumes

display_name becomes name and display_description becomes description in
both parameters to pass in requests and keys returned from responses.
This does not update the snapshot model as it takes the same approach
with updating the volume rest api.

Change-Id: I413b5f87882a216b7a847fb12c31f5e5ed91510b

11 years agochange display_description to description in volumes
Mike Perez [Mon, 11 Feb 2013 08:00:16 +0000 (00:00 -0800)]
change display_description to description in volumes

Rest v2 api volume responses key display_description changes to
description to be consistent with other modules and projects.

Change-Id: Ibafa2865c6c4a73fc1cf4694ae77a6709fd2e6e5

11 years agov2 volume/snapshot create will correctly give a 202 response
Mike Perez [Sun, 10 Feb 2013 20:34:44 +0000 (12:34 -0800)]
v2 volume/snapshot create will correctly give a 202 response

Before it was giving a 200 response. Since the request was received fine
but still has to process things, this is a more correct response. In
addition this is more consistent with other OpenStack project create
rest api calls.

Change-Id: I4f29cda7638c257c9cb5be7a5edf2bc4c48626d8

11 years agoadd postgresql opportunistic testing
Sean Dague [Sat, 9 Feb 2013 22:22:22 +0000 (17:22 -0500)]
add postgresql opportunistic testing

sync _reset_databases from nova, which is needed for working
postgresql. Add opportunistic testing for postgresql, which will
run in CI.

Change-Id: I8166c2f723cabc5c5c07c7babaec8ffed5cee650

11 years agomake test_databases instance variable
Sean Dague [Sat, 9 Feb 2013 15:10:03 +0000 (10:10 -0500)]
make test_databases instance variable

eventually we'll need to do this to allow for testr testing, but in
doing so this also exposed that sqlite downgrade of source_volid
didn't work when data was in the table (sqlite just happily ignored
the drop, then failed when trying to added the column for a second
time during the snake walk.)

This fix also adds the correct sqlite downgrade path for migration
005 to actually drop source_volid, but ensure we don't loose any
other data in the process.

Change-Id: I082b53e108c4d564e33ef79979ea8c1642afdbcd

11 years agoMerge "Allow disabling of long-lived SSH connections."
Jenkins [Thu, 7 Feb 2013 18:04:17 +0000 (18:04 +0000)]
Merge "Allow disabling of long-lived SSH connections."

11 years agoMerge "Move create_cloned_volume() to LVMVolumeDriver."
Jenkins [Thu, 7 Feb 2013 17:57:49 +0000 (17:57 +0000)]
Merge "Move create_cloned_volume() to LVMVolumeDriver."

11 years agoMerge "XenAPINFS: Copy volume to glance"
Jenkins [Thu, 7 Feb 2013 17:32:36 +0000 (17:32 +0000)]
Merge "XenAPINFS: Copy volume to glance"

11 years agoMerge "Update to latest oslo-version code."
Jenkins [Thu, 7 Feb 2013 15:50:17 +0000 (15:50 +0000)]
Merge "Update to latest oslo-version code."

11 years agoMerge "Allow for specifying nfs mount options"
Jenkins [Thu, 7 Feb 2013 14:21:28 +0000 (14:21 +0000)]
Merge "Allow for specifying nfs mount options"

11 years agoMerge "Don't require importing paramiko for error."
Jenkins [Thu, 7 Feb 2013 13:30:18 +0000 (13:30 +0000)]
Merge "Don't require importing paramiko for error."

11 years agoMerge "rework migration 004 testing with real data"
Jenkins [Thu, 7 Feb 2013 12:43:58 +0000 (12:43 +0000)]
Merge "rework migration 004 testing with real data"

11 years agoMerge "XenAPINFS: Copy image from glance"
Jenkins [Thu, 7 Feb 2013 12:43:54 +0000 (12:43 +0000)]
Merge "XenAPINFS: Copy image from glance"

11 years agoMerge "Allow tools/install_venv_common.py to be run from within the source directory."
Jenkins [Thu, 7 Feb 2013 12:29:15 +0000 (12:29 +0000)]
Merge "Allow tools/install_venv_common.py to be run from within the source directory."

11 years agoMove create_cloned_volume() to LVMVolumeDriver.
Avishay Traeger [Thu, 7 Feb 2013 09:11:03 +0000 (11:11 +0200)]
Move create_cloned_volume() to LVMVolumeDriver.

The implementation of create_cloned_volume() that was in driver.py
relied on functions that aren't declared there, such as
_create_volume(), _copy_volume(), and _sizestr().  Moved the function
to LVMVolumeDriver in lvm.py, where those functions exist.

Change-Id: I5ab77a119b3af0a152a3b5e0c2ff6a5ce196ad0f
Fixes: bug #1112485
11 years agoUpdate to latest oslo-version code.
Monty Taylor [Sun, 3 Feb 2013 00:33:33 +0000 (11:33 +1100)]
Update to latest oslo-version code.

In prep for tag-based versioning, update to latest oslo-version code.

Change-Id: Ic5046006919e20247481fa1ddbde2dfd456b188a

11 years agoMerge "Add volume_glance_metadata to volume.api.get"
Jenkins [Thu, 7 Feb 2013 08:22:00 +0000 (08:22 +0000)]
Merge "Add volume_glance_metadata to volume.api.get"

11 years agoAllow disabling of long-lived SSH connections.
Avishay Traeger [Wed, 6 Feb 2013 21:04:15 +0000 (23:04 +0200)]
Allow disabling of long-lived SSH connections.

Currently, SSHPool connections are kept alive indefinitely.  This can
be good for many cases, but sometimes it is not desirable.  For
example, this causes unit tests which use SSH to not complete because
of the open connections.  This patch allows users to revert back
to paramiko's regular timeout policy.

Change-Id: Ifa96508b38d90610390c9ec3d48a7de75d02f08b

11 years agoMerge "Copy glance_image_metadata when cloning volumes."
Jenkins [Wed, 6 Feb 2013 20:22:41 +0000 (20:22 +0000)]
Merge "Copy glance_image_metadata when cloning volumes."

11 years agoDon't require importing paramiko for error.
Avishay Traeger [Wed, 23 Jan 2013 11:55:51 +0000 (13:55 +0200)]
Don't require importing paramiko for error.

The _run_ssh function raises a paramiko exception, which requires
functions that use it to import the paramiko class. This should be
hidden away, and so I created a new exception in its place. Nobody
but the Storwize/SVC driver use it anyway, and I am updating that
driver in a separate patch.

Change-Id: Ibf353edc664765897a5fa7a08d126de4b8992863

11 years agoAllow for specifying nfs mount options
Rafi Khardalian [Sat, 2 Feb 2013 23:01:54 +0000 (23:01 +0000)]
Allow for specifying nfs mount options

Fixes bug 1113042

Adds a new config option:
    nfs_mount_options=None (Default)

When not None, anything set here will be passed as -o <options> to
the mount command. The default behavior is to do exactly as we are
doing today and relying on the OS/kernel defaults.

Change-Id: I6bd27f9d0e8848a9ba98318ba7288e43ee6b4cb9
Flags: DocImpact

11 years agoMerge "add data injection on migrations"
Jenkins [Wed, 6 Feb 2013 08:53:34 +0000 (08:53 +0000)]
Merge "add data injection on migrations"

11 years agoMerge "Update some Oslo Packages"
Jenkins [Wed, 6 Feb 2013 08:53:32 +0000 (08:53 +0000)]
Merge "Update some Oslo Packages"

11 years agoMerge "sync database connect changes from nova"
Jenkins [Wed, 6 Feb 2013 02:39:35 +0000 (02:39 +0000)]
Merge "sync database connect changes from nova"

11 years agorework migration 004 testing with real data
Sean Dague [Tue, 5 Feb 2013 23:12:29 +0000 (18:12 -0500)]
rework migration 004 testing with real data

tests that 004 works with real data.

Fix downgrade issue where id conversion needed to happen prior to
the schema definition change.

Fix pep8 E12* items

Change-Id: I216d649bf081a6d70321e72e06357ef5a729a998

11 years agoAllow tools/install_venv_common.py to be run from within the source directory.
Davanum Srinivas [Wed, 6 Feb 2013 01:54:43 +0000 (20:54 -0500)]
Allow tools/install_venv_common.py to be run from within the source directory.

(Copy latest update from oslo)

Not doing this raised exceptions when it tried importing modules
that didn't exist in the path.

Fixes LP# 1112484

Change-Id: I2be7bde0bf873a22318617b987a76b209caef22a

11 years agoMerge "Update 3PAR driver"
Jenkins [Tue, 5 Feb 2013 23:35:20 +0000 (23:35 +0000)]
Merge "Update 3PAR driver"

11 years agoMerge "Add unit tests for ISCSIDriver._do_iscsi_discovery and ISCSIDriver._get_iscsi_...
Jenkins [Tue, 5 Feb 2013 23:05:05 +0000 (23:05 +0000)]
Merge "Add unit tests for ISCSIDriver._do_iscsi_discovery and ISCSIDriver._get_iscsi_properties"

11 years agoadd data injection on migrations
Sean Dague [Tue, 5 Feb 2013 12:28:22 +0000 (07:28 -0500)]
add data injection on migrations

bring over the data injection from migrations from nova, which allows
us to inject sample data at every migration in the walk_versions, and
run a check after the migration to make sure that things look as we
expected.

Change-Id: I8b1d36f1363c12768dea228a3ecfafc1b919f083

11 years agosync database connect changes from nova
Sean Dague [Tue, 5 Feb 2013 12:20:32 +0000 (07:20 -0500)]
sync database connect changes from nova

bring over the changes from nova that let opportunistic testing
work on pg as well as mysql. Preparitory for data injection changes.

Change-Id: I368f8645cf1be477c25b0fbd1d35cff8859b615a

11 years agoXenAPINFS: Copy volume to glance
Mate Lakat [Tue, 5 Feb 2013 13:11:50 +0000 (13:11 +0000)]
XenAPINFS: Copy volume to glance

related to blueprint xenapinfs-glance-integration

This patch enables to upload XenAPINFS backed cinder volumes to glance
by using the nova glance plugin.

Change-Id: Ie41aa6871fec691556b82501ce3bfdf50898471d

11 years agoXenAPINFS: Copy image from glance
Mate Lakat [Fri, 25 Jan 2013 14:44:08 +0000 (14:44 +0000)]
XenAPINFS: Copy image from glance

related to blueprint xenapinfs-glance-integration

This change is using the glance xenapi plugin to copy a glance image to
a xenapinfs backed volume. It slightly differs from the reference
implementation, as this implementation is composed of three steps:
- create volume
- overwrite the created volume with the one downloaded from glance
- resize the volume
As opposed to fill the bytes from glance to the created image. This
approach works more effective with XenServer type semi ovf tgz -ed vhds.

Change-Id: I2345f6bb355aa285eee0455380c580e4724f004e

11 years agoMerge "Fix provider_location column add for PSQL"
Jenkins [Tue, 5 Feb 2013 17:50:29 +0000 (17:50 +0000)]
Merge "Fix provider_location column add for PSQL"

11 years agoMerge "Fix inability to delete volumes in error state for NetApp driver"
Jenkins [Tue, 5 Feb 2013 17:50:24 +0000 (17:50 +0000)]
Merge "Fix inability to delete volumes in error state for NetApp driver"