[Pure Storage] Fix failure in replication failover

A previous patch incorrectly removed a call using a specific
version of API as part of the replication failover process.

The call being made to the backend fails as one of the
parameters is not supported in later API version.

This patch fixes the call to the backend to use the required
API version.

There are no tempest tests for replication failover, hence
why the original patch passed tests.

Closes-Bug: #2028380
Change-Id: Id4f5f16a04220cc880e17ffd69a8303c93a6e8ba
This commit is contained in:
Simon Dodsley 2023-06-08 12:04:56 -04:00
parent b1536ea300
commit 084d84152a
2 changed files with 11 additions and 1 deletions

View File

@ -2666,10 +2666,13 @@ class PureBaseVolumeDriver(san.SanDriver):
def _async_failover_host(self, volumes, secondary_array, pg_snap):
# Try to copy the flasharray as close as we can.
# We have to rely on a call that is only available in REST API 1.3
# therefore we have to create a temporary FlashArray for this.
target_array = self._get_flasharray(
secondary_array._target,
api_token=secondary_array._api_token,
request_kwargs=secondary_array._request_kwargs,
rest_version='1.3',
)
volume_snaps = target_array.get_volume(pg_snap['name'],

View File

@ -0,0 +1,7 @@
---
fixes:
- |
[Pure Storage] 'bug #2028380
<https://bugs.launchpad.net/cinder/+bug/2028380>'_:
Fixed issue with cinder replication failover failing due to
incorrect REST call.