Fixes 3par driver methods that were double locking

There were many cases where the 3par drivers(FC and iSCSI) were double
locking, e.g. we were locking in the individual driver and in ‘common’.
This patch set removes all the locks in ‘common’ except the one on
‘create_cloned_volume’.

The methods ’_get_volume_state’ and ‘_copy_volume’ are only called in
‘create_cloned_volume’, so those locks were removed as well. All the other
methods in ‘common’ are only called by the driver which provide the lock,
except ‘create_volume’ which is also called by ‘create_cloned_volume’.

Change-Id: I660fbd04824bd2837e06480c8298ea5a709fc82a
Fixes: bug 1175791
Fixes the 3PAR drivers CPG validation

The 3PAR drivers were not checking if the Common Provisioning
Group(CPG) exists in the virtual domain at volume create time when
the default was being overwritten by volume type extra_specs value.
It was also reporting the default CPG in the metadata returning
after creating the volume. Now it reporting the correct CPG and
setting the correct snapshot cpg if different from the default
or not set.

Fixes bug 1186427

Change-Id: Idef7a4f29854c82980789786f2414e5046c8d8fb
Clean up started volume services in tests.

The test_preattach_status_volume test was failing due to state left by
another test. The interim solution was to skip the aforementioned test.
I tracked down the problem to 4 tests in test_admin_actions.py that
call self.start_service('volume', host='test'), and don't stop the
service. Stopping it in all 4 tests solves the problem.

HOWEVER, I don't know why these started services caused this particular
test to fail. I am still working to figure that out, but maybe someone
has an idea.

Change-Id: I2a5caaae9f61e7c7617c934917a10cf1cf3c0db6
Fixes: bug 1153108
Prevent create volume from snapshot with bad size

Prevent to create a volume from a snapshot with a volume size less
than the snapshot size.

Check if a volume size is specified that it is less than
the snapshot size.

Raise a exception if it's lesser.

Fixes bug 1161841

Change-Id: Ic1afbfb025ce0b3906c35c6c50a71734d74a9851
leave re-scheduled volume status to creating

A re-scheduled volume should not be exported and set to available

Fixes bug #1159027

Change-Id: Ie61d9132ce1bd6461d5e4d9836424ebf14100389
Fix cinder-manage backup list to work with uuids

Fixes bug #1164922

Change-Id: I8ed7ff7ca334b983d60445d96cd1f6c368766407
Allow deletion of backups where the service is None

If a backup is created while both cinder-backup and rabbitmq
are not running, backup records are created in the database with a
service entry of None.

There is no actual backup data created on the service, since the service
isn't running. This fix allows removal of these records without an error
when a delete backup request is received.

This fix also ensures backup status is set to error in the event of
an exception during a delete.

Fixes bug #1162908

Change-Id: I5771747a00a70621f7cc101f8c1da2f613e83cdf
Fixed a volume creation re-schedule error

Don't see any reason to construct a list for request_spec['volume_id'].
And it indeed causes problems when the scheduler receives a reschedule
request with such a request_spec.

Fixes bug #1164857

Change-Id: I811e957d5bf9c814165d55ea0042833ea72c8de5
Implement get_volume_stats for GlusterFS driver

Implement get_volume_stats(), so that the GlusterFS driver
will work correctly with the scheduler.

Fixes bug: 1164038

Change-Id: Ib4db8bad897212227b39704e2e6cb5f07f2bb70e
Remove update_volume_status log message from NFS driver

The manager logs an INFO message when this action occurs already,
and it not called by anyone else, so don't log twice:

INFO [cinder.volume.manager] Updating volume status
DEBUG [cinder.volume.drivers.nfs] Updating volume status

Change-Id: Id99be0c0e50837c2b59963d983b9a7db3d25919a
Don't hard code AUTH_ into the swift backup url

Instead make it configurable as part of the backup_swift_url option

Change-Id: I32019d8d4af2f8876da3807a5af3f0b921456935
Merge "Remove update_volume_status log message from NFS driver"
Merge "Fix cinder-manage backup list to work with uuids"
Merge "Implement get_volume_stats for GlusterFS driver"
Merge "Fixed a volume creation re-schedule error"
Merge "Allow deletion of backups where the service is None"
Sync with oslo-incubator copy of setup.py

Keep up with the changes to the master copy

Change-Id: I6b87762a25f11c2548cd8df548a217295b8129d4
Reformat openstack-common.conf

Use the new 'module' option in openstack-common.conf which is a
multi-string option, allowing each module name to be placed on a
separate line.

This makes it much easier to review changes to the modules list.

Change-Id: I2b5c56dbf941b272bd89b0dbe6f651196d90944f
Merge "Clean up started volume services in tests."
Merge "Sync with oslo-incubator copy of setup.py"