This patch adds the new mechanism for tagging drivers as supported
or not as discussed in the TC mailing list post:
http://lists.openstack.org/pipermail/openstack-dev/2016-August/101589.html
This adds the following in place:
1) add new supported flag in every driver
2) When a driver no longer meets the Cinder community testing standards
the driver supported flag will be set to False.
3) When the volume manager starts it checks to see if the driver is
flagged not supported. If the supported flag is False, then the
volume manager will log an error and then check to see if the driver
section configuration setting of 'enable_unsupported_driver = True'.
If the conf setting is not enabled, the driver will not be started.
a) When the driver maintainer conforms to the community testing
standards, then a follow up patch will be submitted to re-enable
the supported flag.
b) If the driver maintainer continues to not support the community
testing standards, then the Cinder community will revisit
removing the driver in the following release.
c) If the driver section in cinder.conf has the
enable_unsupported_driver set, then the volume manager will start
the driver, but log a warning on every driver call saying the
driver isn't supported and may be removed in the future.
Implements: blueprint supported-drivers
Change-Id: I19a60df85d5fb205fc63e700475ae20b86309c1e