NetApp direct to filer drivers for iscsi and nfs.

The drivers are designed to work with 7 mode and cluster storage systems.
The drivers are designed to communicate with the NetApp storage controllers
directly without requiring any intermediate management softwares in place using
the NetApp api. Hence these represent the direct to filer versions of NetApp drivers.
This also contains conventional nfs driver for cluster systems which requires
NetApp management software as middle layer. Implementation for cloning support
and basic volume type scheduler support in driver added. All NetApp drivers
shifted into separate NetApp package. NetApp api refactored into a separate file
other than drivers.

blueprint netapp-direct-volume-drivers
blueprint netapp-cluster-nfs-driver

Change-Id: If3f5389d1f98eba899c4928a8ae1c1d3430bd847
Update some Oslo Packages

I exluded packages that caused unit tests to fail.   We'll have
to tackle those individually.

Change-Id: I24c9c29decf1f171a214a837e69fc47d7e763a92
Add unit tests for ISCSIDriver._do_iscsi_discovery and ISCSIDriver._get_iscsi_properties

Change-Id: Id62124247e264a248ca071d45c03969ee75a31d3
Update 3PAR driver

Added support for get_volume_stats()
Add sanity checks for:
    Ensure the CPG lives in the Domain that's configured.
    On 3PAR systems, the create volume from snapshot has to be
    the same size. The driver now checks to make sure that they
    are the same size.
    Now using volume and snapshot id's instead of the names.
    Checking for optional fields before using them(i.e. description).
    Added a new method get_ports() to gather the active array ports.
    Fixed inline comments, added a space between the comment and # sign

Change-Id: Ie2aed38c6349bb5ee8bbea4d0928cd606427a26f
Fix provider_location column add for PSQL

Migration 006 (commit 690cae58e6bbac5758ea2f7b60774c797d28fba5)
didn't work properly for postgres,
this patch corrects the upgrade by ensuring the execute
is performed and the value is initialized to None.

Since we haven't released a milestone etc with this migration in the
code it should be safe to just fix it here and submit.

Change-Id: I10a09aed3470c35c8ebbe22f29aa511592167c35
Mark password config options with secret

Config object supports masking values when writing out if the secret
flag is set on the option definition.  This change flags all cinder
options containing a password.

Change-Id: Ia0b203417774797c1fe1eaf2946453c9b2509b98
Import Oslo's common rootwrap to Cinder

Import oslo-incubator's rootwrap, which contains all the new
features and bugfixes that were pushed to nova-rootwrap earlier
in this cycle, including logging support and path search.

Implements bp: cinder-common-rootwrap

Change-Id: I68cbb788a3dda58dc146933be190146607b48801
Add volume_glance_metadata to volume.api.get

The dict(rv.iteritems()) agains the volume object from
volume.api.get does NOT set the volume_glance_metadata k/v.

This is used to show bootable in the show and list api calls,
the result was that list properly reflected the bootable status
of a volume, however show would always describe the flag as False.

So we simply check if the rv includes the glance_metadata and if
so go ahead and create the entry in the volume dict.

Fixes bug: 1115629

Change-Id: Ia0be08f3d2c85b7fe8390fca264803c96cdce7f7
Copy glance_image_metadata when cloning volumes.

When cloning a volume we were not capturing/copying
the glance_image_metadata from the source volume.

This change implements a copy_image_metadata_from_vol_to_vol.
So now we can clone bootable volumes without going back to glance
or messing with them otherwise, they're just ready to be booted.

Fixes bug: 1115634

Change-Id: I859bb2550267c6a5142e85ec89f1c7ff885588ac
Fix inability to delete volumes in error state for NetApp driver

While using NetApp 7-mode storage box to create volumes, if the volume
is not created on the storage box (possibly due to wrong/missing
options in cinder.conf file), the volume goes in error state, and when
one tries to delete the volume, an exception was raised which made
the volume go in error_deleting state, which is unrecoverable. This
commit quiesces that exception, resulting in successful removal of the
volume entry from the volume table.

Fixes bug 1090167

Change-Id: I0a25b71ad03e7f7acf58df3952e074ff164b82ff
Merge "Mark password config options with secret"
Merge "Fix inability to delete volumes in error state for NetApp driver"
Merge "Fix provider_location column add for PSQL"
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
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
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
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
Merge "Add unit tests for ISCSIDriver._do_iscsi_discovery and ISCSIDriver._get_iscsi_properties"
Merge "Update 3PAR driver"
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