Enable use of filter_function in PureISCIDriver
Adding filter_function to capabilities of PureISCIDriver. Return
total_volumes as well for use with filter_function.
This will open a way for admins to prevent Cinder from scheduling
volumes on a Pure backend once it has reached the array’s limits. The
primary use case for this is volume limits. An example of a
filter_function that will prevent this issue would be:
filter_function="capabilities.total_volumes < 500”
This will prevent any issues with Purity versions that are limited to
500 volumes.
Without that filter_function the scheduler will continue to try and
schedule volume creation if space is available instead of selecting
another backend. The end result would be volume creation fails and the
volume is in an error state even though there are backends available
that could have handled it.
DocImpact: This means the PureISCSIDriver will now respect the
filter_function config option. Special Pure specific fields to filter
off of need to be added to the driver config manual.
Change-Id: I1368b74f79eb8c8560cf86df27f9af9541963a87
Closes-Bug:
1437082