]> review.fuel-infra Code Review - openstack-build/cinder-build.git/log
openstack-build/cinder-build.git
10 years agoUse urllib.urlencode instead of dict_to_query_str
Ivan Kolodyazhny [Mon, 22 Sep 2014 13:30:11 +0000 (16:30 +0300)]
Use urllib.urlencode instead of dict_to_query_str

dict_to_query_str is only used to generate 'next' links
and this part of data is not used in a cinderclient now.
So it is safe to move forward and generate correct links right now.

Change-Id: I1d7a2e0bff3827011a787b70d7c54cd6a0b5de1f

10 years agoMerge "Allow scheduler pool information to be retrieved"
Jenkins [Sun, 21 Sep 2014 14:15:13 +0000 (14:15 +0000)]
Merge "Allow scheduler pool information to be retrieved"

10 years agoMerge "Timeout triggers failures running tempest for ZFSSA driver."
Jenkins [Sun, 21 Sep 2014 13:38:28 +0000 (13:38 +0000)]
Merge "Timeout triggers failures running tempest for ZFSSA driver."

10 years agoAllow scheduler pool information to be retrieved
Zhiteng Huang [Mon, 8 Sep 2014 21:42:39 +0000 (14:42 -0700)]
Allow scheduler pool information to be retrieved

With pool support added to Cinder, now we are kind of in an awkward
situation where we require admin to input exact location for volumes
to-be managed (imported) or migrated, which must have pool info, but
there is no way to find out what pools are there for backends except
looking at the scheduler log.  That causes bad user experience, and
thus is a bug from UX POV.

This change simply adds a new admin-api extension to allow admin to
fetch all the pool information from scheduler cache (memory), which
closes the gap for end users.

This extension provides two level of pool information: names only or
detailed information:

Pool name only:
GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools

Detailed Pool info:
GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools
\?detail\=True

Closes-bug: #1364279

Change-Id: I445d4e472c83db2f2d8db414de139c87d09f8fda

10 years agoMerge "Increase the 3PAR hostname length"
Jenkins [Sat, 20 Sep 2014 13:03:59 +0000 (13:03 +0000)]
Merge "Increase the 3PAR hostname length"

10 years agoMerge "Revert iSCSI Target objects as independent objects"
Jenkins [Sat, 20 Sep 2014 01:18:17 +0000 (01:18 +0000)]
Merge "Revert iSCSI Target objects as independent objects"

10 years agoIncrease the 3PAR hostname length
Walter A. Boring IV [Thu, 18 Sep 2014 19:03:46 +0000 (12:03 -0700)]
Increase the 3PAR hostname length

The latest 3PAR firmware supports a hostname of 31 characters.
This patch increases the hostname on the 3PAR from 23 characters to
31.

The driver currently has a fallback mechanism in place for detecting
existing hosts.   This handles the case where upgrading from
Icehouse to Juno where Icehouse hosts have a limit of 23 characters.

Change-Id: I171e54b2e03a4ae11d2bf07c9c48febab268ce84
Closes-Bug: 1371242

10 years agoTimeout triggers failures running tempest for ZFSSA driver.
Juan Zuluaga [Tue, 16 Sep 2014 15:09:02 +0000 (11:09 -0400)]
Timeout triggers failures running tempest for ZFSSA driver.

Adding a property to setup the RESTAPI connection timeout with
ZFS Storage Appliance, allow tempest to pass with slower network links.

DocImpact: New config parameter is added to allow configuring timeout value.
Closes-Bug: #1369136

Change-Id: I8de19f56a18106324ed414cf41ee2323de639359

10 years agoMerge "Add tests for consistency groups DB migration"
Jenkins [Fri, 19 Sep 2014 08:27:21 +0000 (08:27 +0000)]
Merge "Add tests for consistency groups DB migration"

10 years agoMerge "HP 3PAR drivers should not claim to have 'infinite' space"
Jenkins [Fri, 19 Sep 2014 04:31:24 +0000 (04:31 +0000)]
Merge "HP 3PAR drivers should not claim to have 'infinite' space"

10 years agoMerge "HP 3PAR: Allow retype when the old snapshot CPG (3PAR pool) is None"
Jenkins [Fri, 19 Sep 2014 02:43:29 +0000 (02:43 +0000)]
Merge "HP 3PAR: Allow retype when the old snapshot CPG (3PAR pool) is None"

10 years agoMerge "Verify requested size in volume.api create"
Jenkins [Fri, 19 Sep 2014 02:42:15 +0000 (02:42 +0000)]
Merge "Verify requested size in volume.api create"

10 years agoMerge "Fix a problem with 'volume list' when 'all_tenants=0'"
Jenkins [Thu, 18 Sep 2014 22:26:03 +0000 (22:26 +0000)]
Merge "Fix a problem with 'volume list' when 'all_tenants=0'"

10 years agoHP 3PAR drivers should not claim to have 'infinite' space
Mark Sturdevant [Sun, 14 Sep 2014 00:04:27 +0000 (17:04 -0700)]
HP 3PAR drivers should not claim to have 'infinite' space

The HP 3PAR drivers report 'infinite' space when there is not a limit
set on the CPG. In this case, it would be better to at least use the
free space estimate of the array instead of 'infinite'.

Change-Id: I8c34ea3982fe61a1b6fa01245ca6da23ca5b8b7b
Closes-Bug: 1369057

10 years agoAdd tests for consistency groups DB migration
Xing Yang [Thu, 18 Sep 2014 20:50:58 +0000 (16:50 -0400)]
Add tests for consistency groups DB migration

The consistency group patch added 2 new DB migration versions:
025 and 026. However, there were no unit tests to support them in
cinder/tests/test_migrations.py. This patch added missing tests.

Change-Id: I670825980fddd4b6dc400e5a17e1003ad47ace1a
Closes-Bug: #1370756

10 years agoVerify requested size in volume.api create
John Griffith [Thu, 18 Sep 2014 03:16:18 +0000 (21:16 -0600)]
Verify requested size in volume.api create

Currently we're not checking that the input value requested
for size on volume create is valid, but taskflow portion of
the code expects it to be and as a result when it receives invalid
input we litter the logs with Trace messages.

This patch adds a check that verifies that if we pass in a
size to create_volume in the volume.api that it is in fact
an int or a string representation of an int.

Worst commit ever

Change-Id: I81bf515360eacf63e6f3cdb672ec7f37001aa4fb
Closes-Bug: 1370773

10 years agoUpdated from global requirements
OpenStack Proposal Bot [Thu, 18 Sep 2014 13:58:41 +0000 (13:58 +0000)]
Updated from global requirements

Change-Id: I948862c12267ac530c5aa136ac490b134b81d41d

10 years agoMerge "Some tcp configuration paramters are ignored"
Jenkins [Thu, 18 Sep 2014 12:56:34 +0000 (12:56 +0000)]
Merge "Some tcp configuration paramters are ignored"

10 years agoMerge "Stop using intersphinx"
Jenkins [Thu, 18 Sep 2014 06:49:17 +0000 (06:49 +0000)]
Merge "Stop using intersphinx"

10 years agoHP 3PAR: Allow retype when the old snapshot CPG (3PAR pool) is None
Mark Sturdevant [Fri, 12 Sep 2014 21:03:28 +0000 (14:03 -0700)]
HP 3PAR: Allow retype when the old snapshot CPG (3PAR pool) is None

A common provisioning group (CPG) is a virtual pool of logical disks.
A volume is stored in a CPG. The volume's snapshots may be stored in
the same CPG or in a separate CPG. In 3PAR this is the "snapCPG".

Before the 3PAR driver supported "manage", the snapCPG was never None in
OpenStack because when we create volumes, we explicitly default snapCPG
to match the volume CPG unless otherwise specified. So, the original
retype pre-checks raised an exception if this unexpected case occurred
and a unit test was provided for that exception.

Now that we support manage_existing(), it should be a valid use case
to manage an existing volume created outside of OpenStack with a snapCPG
set to None. Unfortunately, when we applied volume-type settings to this
volume we would hit that old exception.

That exception has been removed.

Removing it required the following changes:

1. When retype pre-checks validate the domain of the new snapCPG, it
   will not use the optional old snapCPG. Instead it will compare the
   new snapCPG domain with the old volume CPG domain. This satisfies
   the requirement that domains cannot be mixed and avoids the need
   to have an old snapCPG setting.

2. Remove the no longer used old_snap_cpg parameter and remove the
   code that raised an exception "if not old_snap_cpg".

3. Remove the unit test that was just to test that obsolete exception.

4. Adjust the exiting test_retype_across_snap_cpg_domains to
   verify that a snapCPG domain that does not match the volume
   CPG domain will still raise Invalid3PARDomain

Change-Id: Icd2c66898ef64f81116df102f5529a8da30c14d5
Closes-Bug: 1368927

10 years agoMerge "Remove executable bits on various files"
Jenkins [Thu, 18 Sep 2014 03:08:36 +0000 (03:08 +0000)]
Merge "Remove executable bits on various files"

10 years agoMerge "Updated from global requirements"
Jenkins [Thu, 18 Sep 2014 02:50:24 +0000 (02:50 +0000)]
Merge "Updated from global requirements"

10 years agoMerge "Sync latest strutils from oslo-incubator for mask_password fix"
Jenkins [Wed, 17 Sep 2014 23:34:21 +0000 (23:34 +0000)]
Merge "Sync latest strutils from oslo-incubator for mask_password fix"

10 years agoMerge "Use right body for test_create_missing_specs_name"
Jenkins [Wed, 17 Sep 2014 22:34:39 +0000 (22:34 +0000)]
Merge "Use right body for test_create_missing_specs_name"

10 years agoMerge "Volume types need to be specified when creating CG"
Jenkins [Wed, 17 Sep 2014 20:11:10 +0000 (20:11 +0000)]
Merge "Volume types need to be specified when creating CG"

10 years agoMerge "Getting iscsi_ip_address from cinder.conf"
Jenkins [Wed, 17 Sep 2014 18:30:42 +0000 (18:30 +0000)]
Merge "Getting iscsi_ip_address from cinder.conf"

10 years agoMerge "Handle config file with newlines and whitespaces"
Jenkins [Wed, 17 Sep 2014 18:30:33 +0000 (18:30 +0000)]
Merge "Handle config file with newlines and whitespaces"

10 years agoMerge "Check replication status failed for non-replication"
Jenkins [Wed, 17 Sep 2014 17:07:36 +0000 (17:07 +0000)]
Merge "Check replication status failed for non-replication"

10 years agoCheck replication status failed for non-replication
TaoBai [Tue, 16 Sep 2014 08:14:16 +0000 (11:14 +0300)]
Check replication status failed for non-replication

Need to check self.replication whether is None before the
function get_replication_status be called.

Closes-bug: #1365392

Change-Id: I6f6939a98091e40537f2355bb716b4b3205845e2

10 years agoSync latest strutils from oslo-incubator for mask_password fix
James Carey [Tue, 16 Sep 2014 14:13:51 +0000 (14:13 +0000)]
Sync latest strutils from oslo-incubator for mask_password fix

This sync pulls in:
   1131b56 Enable mask_password to handle byte code strings

This is the only update since the last sync:
   beca4db Sync latest strutils from oslo-incubator

This is needed to fix a delete volume failure when processutils
calls mask_password with a byte code string.

Change-Id: Ie8a8c8e26abc0e387830bc9246e9a44913ae9b24
Closes-bug: #1368527

10 years agoRemove executable bits on various files
Eric Harney [Tue, 16 Sep 2014 15:01:51 +0000 (11:01 -0400)]
Remove executable bits on various files

During the Juno cycle we landed a number of commits
making files executable that shouldn't be.

Change-Id: If2c5279b263b35526a41f4f026386b75329ff9a7

10 years agoMerge "Avoid using the disk cache on volume initialisation"
Jenkins [Tue, 16 Sep 2014 14:22:14 +0000 (14:22 +0000)]
Merge "Avoid using the disk cache on volume initialisation"

10 years agoMerge "HP 3PAR configurable ssh-host-key-policy"
Jenkins [Tue, 16 Sep 2014 13:26:23 +0000 (13:26 +0000)]
Merge "HP 3PAR configurable ssh-host-key-policy"

10 years agoFix a problem with 'volume list' when 'all_tenants=0'
Ian Govett [Tue, 16 Sep 2014 11:32:49 +0000 (07:32 -0400)]
Fix a problem with 'volume list' when 'all_tenants=0'

This change checks the value of 'all_tenants' and returns a list of volumes
for all tenants when 'all_tenants' is 1 (or True). A tenant-specific volume
list is returned when 'all_tenants' is 0 (or False).

An InvalidInput exception is thrown if the 'all_tenants' value is not 0, 1,
True, or False (case insensitive).

Provided new unit tests for the get_all api which check the all_tenants, and
limits parameters.

Fixed pep8 compliance test fails with code being improperly indented, and
changed calls using str() to use six.text_type()

Change-Id: If0b8c343ee7e4e05c9aec89241458dbdf2e4734b
Closes-Bug: #1342046

10 years agoIBMNAS: Remove call to set r/w permissions to all
Nilesh Bhosale [Sun, 24 Aug 2014 07:36:29 +0000 (13:06 +0530)]
IBMNAS: Remove call to set r/w permissions to all

During cinder volume create operation from a volume snapshot or
from an existing volume (volume clone operation), the ibmnas
driver sets 'rw' permissions to all, which is unnecessary and
also poses security concerns.
Fixing this issue, removing the calls to set rw permissions to
all during these operations and adding a call to set 'rw'
permissions only to the owner to make sure even if umask is set
at the filesystem level, which might deny 'rw' access to the owner
we explicitely set the required permissions on the volume file.

Change-Id: I0e5ba9262a298e088f7724ddeda3537afa4b023e
Closes-Bug: #1367238

10 years agoUpdated from global requirements
OpenStack Proposal Bot [Mon, 15 Sep 2014 16:58:10 +0000 (16:58 +0000)]
Updated from global requirements

Change-Id: Ie85ed9ad591edc3e38352fe0c7ee751a43557a38

10 years agoMerge "Fix help for running specified unit tests"
Jenkins [Mon, 15 Sep 2014 08:28:25 +0000 (08:28 +0000)]
Merge "Fix help for running specified unit tests"

10 years agoMerge "Don't clear _mounted_shares list in remoteFS while updating"
Jenkins [Mon, 15 Sep 2014 04:04:13 +0000 (04:04 +0000)]
Merge "Don't clear _mounted_shares list in remoteFS while updating"

10 years agoGetting iscsi_ip_address from cinder.conf
Xing Yang [Sun, 14 Sep 2014 23:50:01 +0000 (19:50 -0400)]
Getting iscsi_ip_address from cinder.conf

In the current version (2.0) of the VMAX driver, we retrieve iSCSI IP
addresses dynamically from SMI-S. However, we ran into situations where
we can't get them reliably during testing. The fix is to get this
information from cinder.conf, just like in version 1.0.

Change-Id: If474f44e99cc45592bacfdec9e1eb2fa48c41e68
Closes-Bug: #1369355

10 years agoHandle config file with newlines and whitespaces
Xing Yang [Sat, 13 Sep 2014 00:16:56 +0000 (20:16 -0400)]
Handle config file with newlines and whitespaces

EMC VMAX driver does not handle newlines and whitespaces
consistently in the XML config file. This patch addressed
this issue.

Change-Id: I45f61f167feee9174ba2bc3229695b680f8e946d
Closes-Bug: #1364232

10 years agoMerge "Add reset-state function for backups"
Jenkins [Sun, 14 Sep 2014 09:16:30 +0000 (09:16 +0000)]
Merge "Add reset-state function for backups"

10 years agoMerge "VMware: Remove redundant extend disk API call"
Jenkins [Sun, 14 Sep 2014 05:21:29 +0000 (05:21 +0000)]
Merge "VMware: Remove redundant extend disk API call"

10 years agoMerge "Destroy Datera export target after detach"
Jenkins [Sun, 14 Sep 2014 05:07:45 +0000 (05:07 +0000)]
Merge "Destroy Datera export target after detach"

10 years agoVolume types need to be specified when creating CG
Xing Yang [Sat, 6 Sep 2014 17:32:02 +0000 (13:32 -0400)]
Volume types need to be specified when creating CG

When creating a consistency group, the scheduler will find a backend that
supports all input volume types. If volume types are not provided, the
default_volume_type in cinder.conf will be used, however, this could cause
inconsistent behavior in a user environment where the default_volume_type
is defined in some places but not in others. This fix removed the use of
default_volume_type for CG creation, added a check to verify that volume
types are provided when creating a CG.

When creating a volume and adding it to a CG, we need to make sure a
volume type is provided as well.

Change-Id: I078d4fdd8d92529e853be16272ad74d1e130f712
Closes-Bug: #1366371

10 years agoMerge "EMC VNX Direct Driver Consistency Group support"
Jenkins [Sat, 13 Sep 2014 17:28:03 +0000 (17:28 +0000)]
Merge "EMC VNX Direct Driver Consistency Group support"

10 years agoMerge "coraid: fix snapshot deletion"
Jenkins [Sat, 13 Sep 2014 17:26:55 +0000 (17:26 +0000)]
Merge "coraid: fix snapshot deletion"

10 years agoMerge "Add test case for volume_types.py"
Jenkins [Sat, 13 Sep 2014 17:24:56 +0000 (17:24 +0000)]
Merge "Add test case for volume_types.py"

10 years agoMerge "fix a small typo in development.environment.rst"
Jenkins [Sat, 13 Sep 2014 17:13:54 +0000 (17:13 +0000)]
Merge "fix a small typo in development.environment.rst"

10 years agoMerge "Log an error on nfs mount failure"
Jenkins [Sat, 13 Sep 2014 15:53:05 +0000 (15:53 +0000)]
Merge "Log an error on nfs mount failure"

10 years agoMerge "Netapp drivers support for pool-aware scheduling"
Jenkins [Sat, 13 Sep 2014 15:52:56 +0000 (15:52 +0000)]
Merge "Netapp drivers support for pool-aware scheduling"

10 years agoMerge "Fixing leaking sessions in 3PAR on attach/detach"
Jenkins [Sat, 13 Sep 2014 15:44:03 +0000 (15:44 +0000)]
Merge "Fixing leaking sessions in 3PAR on attach/detach"

10 years agoMerge "Unit test for restore with different hosts"
Jenkins [Sat, 13 Sep 2014 15:43:46 +0000 (15:43 +0000)]
Merge "Unit test for restore with different hosts"

10 years agoMerge "Delete consistency group failed"
Jenkins [Sat, 13 Sep 2014 15:30:44 +0000 (15:30 +0000)]
Merge "Delete consistency group failed"

10 years agoMerge "Fixes Windows Volume Driver upload volume fails"
Jenkins [Sat, 13 Sep 2014 14:01:45 +0000 (14:01 +0000)]
Merge "Fixes Windows Volume Driver upload volume fails"

10 years agoMerge "Adds CA cert file path option for glance connections"
Jenkins [Sat, 13 Sep 2014 13:44:42 +0000 (13:44 +0000)]
Merge "Adds CA cert file path option for glance connections"

10 years agoMerge "Add filter to volume transfer REST api"
Jenkins [Sat, 13 Sep 2014 13:44:33 +0000 (13:44 +0000)]
Merge "Add filter to volume transfer REST api"

10 years agoMerge "VMware: Implement backup/restore for VMDK driver"
Jenkins [Sat, 13 Sep 2014 11:15:45 +0000 (11:15 +0000)]
Merge "VMware: Implement backup/restore for VMDK driver"

10 years agoMerge "Sync service.py and its dependencies to Cinder"
Jenkins [Sat, 13 Sep 2014 07:19:01 +0000 (07:19 +0000)]
Merge "Sync service.py and its dependencies to Cinder"

10 years agoMerge "Update oslo.config and oslo.messaging requirements"
Jenkins [Sat, 13 Sep 2014 02:28:58 +0000 (02:28 +0000)]
Merge "Update oslo.config and oslo.messaging requirements"

10 years agoStop using intersphinx
Andreas Jaeger [Fri, 12 Sep 2014 20:40:23 +0000 (22:40 +0200)]
Stop using intersphinx

Remove intersphinx from the docs build as it triggers network calls that
occasionally fail, and we don't really use intersphinx (links other
sphinx documents out on the internet)

This also removes the requirement for internet access during docs build.

This causes docs jobs to fail because we error out on warnings.

Change-Id: I71e941e2a639641a662a163c682eb86d51de42fb
Related-Bug: #1368910

10 years agoNetapp drivers support for pool-aware scheduling
Clinton Knight [Fri, 15 Aug 2014 15:12:14 +0000 (11:12 -0400)]
Netapp drivers support for pool-aware scheduling

Adds pools support for all NetApp drivers: eseries, 7mode (iscsi and nfs), and
cmode (iscsi and nfs). With 7mode and cmode drivers, a pool is one-to-one with a
Ontap flexvol. With eseries, a pool is one-to-one with a dynamic disk pool.

DocImpact
Implements: blueprint pool-aware-cinder-scheduler-support-in-netapp-drivers

Change-Id: Ie6f155df7bc1ae2cd5f7fa39f1b1a0ad38075988

10 years agocoraid: fix snapshot deletion
Roman Bogorodskiy [Thu, 4 Sep 2014 10:04:59 +0000 (10:04 +0000)]
coraid: fix snapshot deletion

Currently, a request to ESM API for a snapshot deletion looks this way:

{'addr': 'cms',
 'data': {
    'repoName': repository_name,
    'lvName': snapshot_name},
 'op': 'orchStrLunMods',
 'args': 'delClSnap'}

This is correct, however, some versions of the ESM API have a bug that
prevents it from validation this valid request and it fails with:

Must define the new LV name to be assigned to the clone/clSnap.

As a workaround for this bug, provide an 'newLvName' property with a
'noop' value to make the validation pass even on buggy versions.

Fixes bug #1365417

Change-Id: I3fd7f3c6a64cac992735b098368b52b9ab21d85c

10 years agoAdd reset-state function for backups
ling-yun [Tue, 26 Aug 2014 10:39:30 +0000 (18:39 +0800)]
Add reset-state function for backups

Since there are volume reset-state function and snapshot reset-state
function, backup also needs reset-state as well.
When creating or restoring backup, it may leave the backup stuck in
creating or restoring status due to database down or rabbitmq down, etc.
Currently we could only solve these problems by restarting cinder-backup
service.

This BP is to provide another means for administrators to solve these
problems by calling backup reset state API, instead of directly
restarting cinder-backup service.

DocImpact: Support reset backup status

blueprint support-reset-state-for-backup

Change-Id: Icd677a0b48083894bcd969d5199fa91b307080de

10 years agoAdd test case for volume_types.py
Eiichi Aikawa [Fri, 12 Sep 2014 07:19:53 +0000 (16:19 +0900)]
Add test case for volume_types.py

Test coverage for volume_types.py is not enough.
Here I added some test case.

Change-Id: I3a78c87437044cb2b3697fcb7c126f4fc2422a21

10 years agoBlock sqlalchemy-migrate 0.9.2
Eric Harney [Thu, 11 Sep 2014 20:53:11 +0000 (16:53 -0400)]
Block sqlalchemy-migrate 0.9.2

Breaks unit tests.

Closes-Bug: #1368391

Change-Id: Ic814a91038800201603baf33ca40e4586944343b

10 years agoDestroy Datera export target after detach
Mike Perez [Thu, 4 Sep 2014 04:05:53 +0000 (21:05 -0700)]
Destroy Datera export target after detach

Since there is only one lun associated with each target export object in
the Datera backend, we will destroy the target export object after
detaching the volume so they don't build up. This patch also fixes some
missing values for formatted strings.

Closes-Bug: #1368381
Change-Id: Id44ac4bb385ab39af50865a295938861ca977fa3

10 years agoEMC VNX Direct Driver Consistency Group support
Xing Yang [Tue, 9 Sep 2014 22:18:21 +0000 (18:18 -0400)]
EMC VNX Direct Driver Consistency Group support

Consistency Group support is newly introduced in Juno.

This commit is to add the changes in EMC VNX Direct Driver to
support CG.

Implements: blueprint emc-vnx-direct-driver-cg-support

Change-Id: I6c30ef2609ca8a559f5635129ce6a7c960a9f0a7

10 years agoUpdate oslo.config and oslo.messaging requirements
Eric Harney [Wed, 20 Aug 2014 15:27:16 +0000 (11:27 -0400)]
Update oslo.config and oslo.messaging requirements

Need to land the sample config update with these
updates so that the global requirements update can
pass tests.

Change-Id: Iaae306f05098165d80a7398a22038b322e9f7935

10 years agoFixes Windows Volume Driver upload volume fails
Adelina Tuvenie [Fri, 5 Sep 2014 15:16:55 +0000 (18:16 +0300)]
Fixes Windows Volume Driver upload volume fails

The copy_volume_to_image requires in some cases an intermediary
conversion, which takes place in the configured image conversion
dir. If this folder is not created, the operation will fail.

This patch ensures that method will create the folder if it does
not exist.

Change-Id: I82b5e76c6d6f3114666f184672667dc3b95bab8b
Closes-Bug: #1356415

10 years agoLog an error on nfs mount failure
Alex Meade [Thu, 7 Aug 2014 14:08:36 +0000 (10:08 -0400)]
Log an error on nfs mount failure

Change from a log warning to a log error when an nfs driver
cannot mount the backend share. Add tests to ensure the error is
logged correctly.

Change-Id: Id9d51aebe349e7a4e09d1211b17efd8d47af97f5

10 years agoMerge "Fixes Cinder fails to upload volume to vhd image"
Jenkins [Wed, 10 Sep 2014 18:54:07 +0000 (18:54 +0000)]
Merge "Fixes Cinder fails to upload volume to vhd image"

10 years agoSync service.py and its dependencies to Cinder
Jay S. Bryant [Wed, 10 Sep 2014 15:18:22 +0000 (10:18 -0500)]
Sync service.py and its dependencies to Cinder

Bug 1362455 made note that our sevice.py was out of sync
from what is currently in oslo-incubator.  We have been syncing
things piece meal.  It would be good to get this code synced up.

----------------------------------------------

Head of oslo-incubator:

commit 820752a10d8277464261661ca211f2c3e7282ce0
Merge: 8ebe497 422e94b
Author: Jenkins <jenkins@review.openstack.org>
Date:   Wed Sep 10 14:14:28 2014 +0000

    Merge "Switch to using pbr's autodoc capability"

-----------------------------------------------

This commit pulls in the following changes listed by file,
ordered from newest to oldest:

cinder/openstack/common/eventlet_backdoor.py
------------------------------------------------
90ae24bf Remove redundant default=None for config options
fcf517d7 Update oslo log messages with translation domains

cinder/openstack/common/jsonutils.py
------------------------------------------------
d9060f69 Check for namedtuple_as_object support before using it
ad248f66 Specify namedtuple_as_object=False when using simplejson

cinder/openstack/common/log.py
------------------------------------------------
037dee00 Set stevedore log level to WARN by default

cinder/openstack/common/loopingcall.py
------------------------------------------------
e3773930 Changes calcuation of variable delay
ab5d5f1c Use timestamp in loopingcall
bc48099a Log the function name of looping call
fb4e863c Remove deprecated LoopingCall
fcf517d7 Update oslo log messages with translation domains

cinder/openstack/common/service.py
------------------------------------------------
5f12bba4 Implement stop method in ProcessLauncher
8c00b361 Merge "Remove duplicated "caught" message"
f718e404 Remove duplicated "caught" message
356ecd4d Move notification point to a better place
e2634a75 Add missing _LI for LOG.info in service module
0150ad75 Merge "Reap child processes gracefully if greenlet thread gets killed"
53e1214c notify calling process we are ready to serve
a6fec438 Reap child processes gracefully if greenlet thread gets killed
fcf517d7 Update oslo log messages with translation domains
1e700782 Revert "service: replace eventlet event by threading"
0644073e Simplify launch method
6b4d255e Merge "service: replace eventlet event by threading"
a4f145e4 Merge "Allow configurable ProcessLauncher liveness check"

cinder/openstack/common/threadgroup.py
------------------------------------------------
5a1a0166 Make stop_timers() method public
fdc88831 Add graceful stop function to ThreadGroup.stop
5f8ace05 Merge "threadgroup: use threading rather than greenthread"
2d06d6ca Simple typo correction
4d18b57a threadgroup: use threading rather than greenthread

cinder/openstack/common/systemd.py
-------------------------------------------------
17c4e21e  Fix docstring indentation in systemd
667d1bac Fixed spelling error - occured to occurred
53e1214c notify calling process we are ready to serve

Change-Id: I163f0b80c32c3b8485d9c007fa6e4474494ba31f
Closes-bug: 1362455

10 years agoHP 3PAR configurable ssh-host-key-policy
Mark Sturdevant [Tue, 2 Sep 2014 23:25:47 +0000 (16:25 -0700)]
HP 3PAR configurable ssh-host-key-policy

Cinder added configurable SSH strict key policy (RejectPolicy)
and configurable known_hosts_file.  This patch configures the
hp3parclient (used by the 3PAR drivers) using those settings.

Change-Id: I71fa7d8be28d1cb7c0102590e03cba994b6035a0
Closes-bug: 1365697

10 years agoMerge "Add Windows SMB Volume Driver"
Jenkins [Wed, 10 Sep 2014 11:12:25 +0000 (11:12 +0000)]
Merge "Add Windows SMB Volume Driver"

10 years agoMerge "Set default pool value to system in gpfs driver"
Jenkins [Wed, 10 Sep 2014 11:12:16 +0000 (11:12 +0000)]
Merge "Set default pool value to system in gpfs driver"

10 years agoMerge "Fixed Typo - from hypens to hyphens"
Jenkins [Wed, 10 Sep 2014 09:21:15 +0000 (09:21 +0000)]
Merge "Fixed Typo - from hypens to hyphens"

10 years agoDelete consistency group failed
Xing Yang [Fri, 5 Sep 2014 21:48:00 +0000 (17:48 -0400)]
Delete consistency group failed

Delete CG failed because it compares host@backend with host@backend#pool
(in delete_consistencygroup in volume/manager.py). The fix is to call
extract_host before doing the comparison.

Another issue is about deleting a CG with no host. This will throw exception
when extract_host(group['host']) is called in delete_consistencygroup in
volume/rpcapi.py. The solution is to check the host field in consistencygroup/
api.py and delete it from db there.

Change-Id: Ife28a4f91bd8a4e123c74dac9748ee31cc7b7306
Closes-Bug: #1366205

10 years agoMerge "Netapp: fix multiple copies of cinder-volume"
Jenkins [Tue, 9 Sep 2014 15:58:13 +0000 (15:58 +0000)]
Merge "Netapp: fix multiple copies of cinder-volume"

10 years agoMerge "Add SMB Volume Driver"
Jenkins [Tue, 9 Sep 2014 15:50:37 +0000 (15:50 +0000)]
Merge "Add SMB Volume Driver"

10 years agoFixing leaking sessions in 3PAR on attach/detach
Anthony Lee [Tue, 9 Sep 2014 13:53:25 +0000 (06:53 -0700)]
Fixing leaking sessions in 3PAR on attach/detach

Fixed an issue where sessions were not being closed properly
during an attach or detach of a volume.

Closes-Bug: 1367429
Change-Id: Ic7a4ceca855111a8c8a9512fc2d99fcf6df6d79e

10 years agoAdd Windows SMB Volume Driver
Lucian Petrut [Thu, 10 Jul 2014 13:36:19 +0000 (16:36 +0300)]
Add Windows SMB Volume Driver

Introduces a volume driver which makes use of SMB shares for hosting
volumes as disk images, having a similar workflow with the other NFS
like drivers.

This driver is based on the SMB Volume driver proposed for Linux,
overriding the platform specific methods.

It includes all the features required by the Juno release.

Driver cert results:
http://paste.openstack.org/show/100600/

The online snapshot related tests have been skipped as this
feature is not supported yet.

Change-Id: Idd5964690bca618c11fd116f80dd802d6cc2f31b
Implements: blueprint windows-smbfs-volume-driver

10 years agoMerge "Fix possible race condition for accept transfer"
Jenkins [Tue, 9 Sep 2014 06:28:17 +0000 (06:28 +0000)]
Merge "Fix possible race condition for accept transfer"

10 years agoMerge "remove object in wsgi LOG.info"
Jenkins [Tue, 9 Sep 2014 02:11:01 +0000 (02:11 +0000)]
Merge "remove object in wsgi LOG.info"

10 years agoNetapp: fix multiple copies of cinder-volume
Vishvananda Ishaya [Tue, 9 Sep 2014 00:05:13 +0000 (17:05 -0700)]
Netapp: fix multiple copies of cinder-volume

Various commands were failing when running multiple copies of
cinder-volume. This is due to storing an in memory copy of the luns
which may get updated in the backend by another cinder-volume. Fix
it by attempting to refresh the list of luns if one is not found
during a request.

Change-Id: Iecd1dc5146525d7240a09f71669a3ab239c488bd
Resolves-bug: #1367044

10 years agoAdd SMB Volume Driver
Lucian Petrut [Thu, 10 Jul 2014 12:45:31 +0000 (15:45 +0300)]
Add SMB Volume Driver

Introduces a volume driver which makes use of SMB shares for
hosting volumes as disk images, having a similar workflow with the
other NFS like drivers.

The driver uses Samba in order to access the SMB shares. It takes
SMB shares information such as share path, credentials and other
mount flags from a config file of which location can be configured
in the cinder config file.

It includes all the features required by the Juno release.

Driver cert results:
http://paste.openstack.org/show/100915/

The online snapshot related tests have been skipped as this
feature is not supported yet.

Implements: blueprint smbfs-volume-driver

DocImpact

Co-Authored-By: Adelina Tuvenie <atuvenie@cloudbasesolutions.com>
Change-Id: I3b4bebf73122d5b784228af18f9b1eddfc02b643

10 years agoFix possible race condition for accept transfer
Zhiteng Huang [Sun, 7 Sep 2014 17:22:52 +0000 (10:22 -0700)]
Fix possible race condition for accept transfer

Accept transfer API workflow is currently like this:

  call volume_api.accept_transfer()
    |
    --- RPC cast to volume manager
          |
          --- volume manager calls volume driver accept_transfer()

  update volume's DB record

Given the non-blocking nature of RPC cast, what happens in volume
manager and volume driver can happen in parallel with the DB update.
If volume driver relies on original DB record to do things, then
DB record shouldn't be updated until volume driver finishes its job.

So this patch change volume RPC API accept_transfer() from cast
to call to make sure the workflow is in serialized manner.  Also
elevated the context when volume manager tries to update the DB
record when driver has done accept_transfer().

Change-Id: Ieae52e167aa02967338e0be5d78d570d682faa7a
Closes-bug: #1357432

10 years agoImported Translations from Transifex
OpenStack Proposal Bot [Mon, 8 Sep 2014 06:09:17 +0000 (06:09 +0000)]
Imported Translations from Transifex

Change-Id: I6e73820384a15740729aef1027c6cf672580a1e6

10 years agoMock glance client object in version unit tests
Rushi Agrawal [Sun, 7 Sep 2014 18:58:57 +0000 (00:28 +0530)]
Mock glance client object in version unit tests

This patch changes the glance client version unit tests
to mock the Client object completely.  Previously the
tests were ensuring the right version of the client was
returned, but that required too much knowledge of glance's
implementation and ended up breaking the tests when glance
changed the implementation details of the Client class.

The new code tests if cinder is calling the integration
point correctly for the version, rather than if glance
is correctly returning the right client; that should be
a glance test, not a cinder test.

Closes-Bug: 1366596
Change-Id: I979175e6c3b5f98076bde6d36ca52fb8b03009b8

10 years agoRevert iSCSI Target objects as independent objects
Mike Perez [Fri, 5 Sep 2014 02:37:47 +0000 (19:37 -0700)]
Revert iSCSI Target objects as independent objects

Removing from gate queue since failing unit tests

The second half of this code didn't make it in, so this is essentially
dead code. We'll readd this code back in Kilo.

This reverts commit d10fb796f491152486e394481e920479bab9e3d1.

Closes-Bug: #1365516
Change-Id: Ia4b3b4ef4a7b6f3829fe576ec370b6d74a7bc922

10 years agoUse right body for test_create_missing_specs_name
liyingjun [Sat, 6 Sep 2014 05:37:53 +0000 (13:37 +0800)]
Use right body for test_create_missing_specs_name

Since the test is `test_create_missing_specs_name`, we should define
the the body like `body = {'qos_specs': {'a': 'b'}}`. And add a test
to cover the invalid body case.

Change-Id: Ib1cf9a8b5bfddc0091e28e3765a36c75044642f3
Closes-bug: #1370308

10 years agoMerge "Deprecate the V1 API"
Jenkins [Fri, 5 Sep 2014 20:31:49 +0000 (20:31 +0000)]
Merge "Deprecate the V1 API"

10 years agoremove object in wsgi LOG.info
Zhi Kun Liu [Fri, 5 Sep 2014 08:51:30 +0000 (16:51 +0800)]
remove object in wsgi LOG.info

Method __init__ in Server class records log for wsgi server name, host
and port using its __dict__ which includes a socket object. i18n message
will deep copy each item's value in __dict__. In python2.6, deep copy
the socket object will raise "Exception RuntimeError" and can not be
caught. This makes cinder-api run into a hang loop. This patch uses the
related properties instead of __dict__ object to fix the problem.

Closes-Bug: #1365901
Change-Id: Ia6ac51f4849d369c54ac88b1587741a2d2beb40b

10 years agoDon't clear _mounted_shares list in remoteFS while updating
Andrew Kerr [Fri, 5 Sep 2014 15:28:06 +0000 (10:28 -0500)]
Don't clear _mounted_shares list in remoteFS while updating

This fix makes the updating of the _mounted_shares list in
remoteFS more of an atomic operation.  Previously this list
would be cleared, then rebuilt.  That allowed a race
condition where operations that took place during this
update would have a list of 0 shares to work with.

Change-Id: I740d8f1b87db911242326a38ff398b81c5974cea
Closes-Bug: #1366083

10 years agoSome tcp configuration paramters are ignored
Stuart McLaren [Fri, 5 Sep 2014 13:04:31 +0000 (13:04 +0000)]
Some tcp configuration paramters are ignored

The values for tcp_keepalive, tcp_keepidle, tcp_keepalive_count and
tcp_keepalive_interval in cinder.conf are not being picked up.

Change-Id: Ie0a232ae6b9b9a34d57b48f3b0d8694f90504517
Closes-bug: #1366011

10 years agoAdd filter to volume transfer REST api
liyingjun [Wed, 6 Aug 2014 21:58:17 +0000 (05:58 +0800)]
Add filter to volume transfer REST api

The transfer api supports filter param,
https://github.com/openstack/cinder/blob/master/cinder/transfer/api.py#L72
But the transfer REST api didn't pass the filter params when calling get_all.

Change-Id: I1e29614a3368296571378b4a80a5cfa29b16754e
Closes-bug: 1351084

10 years agoFix help for running specified unit tests
Ivan Kolodyazhny [Fri, 5 Sep 2014 09:39:03 +0000 (12:39 +0300)]
Fix help for running specified unit tests

Change-Id: I385fcf88ae6a2e839c99ef13cd4f410ce3c0ee5f

10 years agoDeprecate the V1 API
Mike Perez [Sun, 16 Feb 2014 05:40:59 +0000 (21:40 -0800)]
Deprecate the V1 API

This gives a warning for using the V1 API in Juno and encourages users
to switch to V2 before the K release where it will be removed.

DocImpact
Implements blueprint deprecate-v1-api
Change-Id: I89eb9eb2a7819edb2a97b2ea2b5239a89124ca4d

10 years agoMerge "warn against sorting requirements"
Jenkins [Fri, 5 Sep 2014 00:12:02 +0000 (00:12 +0000)]
Merge "warn against sorting requirements"

10 years agoMerge "During a restore send the restore request to the right host"
Jenkins [Thu, 4 Sep 2014 23:40:52 +0000 (23:40 +0000)]
Merge "During a restore send the restore request to the right host"

10 years agoMerge "Add Datera driver for Cinder"
Jenkins [Thu, 4 Sep 2014 23:40:28 +0000 (23:40 +0000)]
Merge "Add Datera driver for Cinder"