Make service all-cells min version helper use scatter-gather

This makes the Service get_minimum_version_all_cells() helper use the parallel
scatter-gather utilities to make the determination. It also adds fault handling
for cases where a cell fails to respond, and an option to ignore or raise in
that situation.

Closes-Bug: #1746558
Change-Id: I62dc1033437f91bded28a9fd58759d2dbd7e55fb
This commit is contained in:
Dan Smith
2018-01-31 08:13:36 -08:00
parent c2d9e441bf
commit 719d43e51a

View File

@@ -1040,6 +1040,9 @@ class AllServicesCurrent(fixtures.Fixture):
self.useFixture(fixtures.MonkeyPatch( self.useFixture(fixtures.MonkeyPatch(
'nova.objects.Service.get_minimum_version_multi', 'nova.objects.Service.get_minimum_version_multi',
self._fake_minimum)) self._fake_minimum))
self.useFixture(fixtures.MonkeyPatch(
'nova.objects.service.get_minimum_version_all_cells',
lambda *a, **k: service_obj.SERVICE_VERSION))
compute_rpcapi.LAST_VERSION = None compute_rpcapi.LAST_VERSION = None
def _fake_minimum(self, *args, **kwargs): def _fake_minimum(self, *args, **kwargs):