diff --git a/cinder/volume/drivers/pure.py b/cinder/volume/drivers/pure.py index 03edf9544b8..df6cf973351 100644 --- a/cinder/volume/drivers/pure.py +++ b/cinder/volume/drivers/pure.py @@ -1086,8 +1086,15 @@ class PureBaseVolumeDriver(san.SanDriver): total_capacity = float(space_info.capacity) / units.Gi used_space = float(space_info.space.total_physical) / units.Gi free_space = float(total_capacity - used_space) - provisioned_space = float(space_info.space. - total_provisioned) / units.Gi + # If array uses Evergreen/One model then total_provisioned + # is not reported so use the closest value avaible in that + # consumption model + try: + provisioned_space = float(space_info.space. + total_provisioned) / units.Gi + except AttributeError: + provisioned_space = float(space_info.space. + used_provisioned) / units.Gi total_reduction = float(space_info.space.total_reduction) total_vols = len(volumes) total_hosts = len(hosts) diff --git a/releasenotes/notes/pure_evergreen_one_model-0533b91fb096c468.yaml b/releasenotes/notes/pure_evergreen_one_model-0533b91fb096c468.yaml new file mode 100644 index 00000000000..64f1bf9d648 --- /dev/null +++ b/releasenotes/notes/pure_evergreen_one_model-0533b91fb096c468.yaml @@ -0,0 +1,7 @@ +--- +fixes: + - | + `Bug #2090310 `_: + [Pure Storage] Fixed issue with FlashArray using the Evergreen//One + consumption model not reporting ``total_provisioned``. Used + ``used_provisoned`` instead in this case.