Fix a problem building spare amphora

When amphora a being built via the housekeeping manager spares
pool management the amphora records in the database are not
being properly updated with the nova details. This results in
the amphora not having a lb_network_ip in the database.
This patch makes sure the amphora database record is updated.

Change-Id: I4a364b6fc631d19f4a93f9fe7c5348a2c9617790
Closes-Bug: #1515009
This commit is contained in:
Michael Johnson 2015-11-10 21:43:30 +00:00
parent e62d772c94
commit a36f8f2a8d
2 changed files with 7 additions and 3 deletions
octavia
controller/worker/flows
tests/unit/controller/worker/flows

@ -66,7 +66,11 @@ class AmphoraFlows(object):
controller_worker.
amp_active_retries))
wait_flow.add(compute_tasks.ComputeWait(
requires=constants.COMPUTE_ID))
requires=constants.COMPUTE_ID,
provides=constants.COMPUTE_OBJ))
wait_flow.add(database_tasks.UpdateAmphoraInfo(
requires=(constants.AMPHORA_ID, constants.COMPUTE_OBJ),
provides=constants.AMPHORA))
create_amphora_flow.add(wait_flow)
create_amphora_flow.add(database_tasks.ReloadAmphora(
requires=constants.AMPHORA_ID,

@ -45,7 +45,7 @@ class TestAmphoraFlows(base.TestCase):
self.assertIn(constants.AMPHORA_ID, amp_flow.provides)
self.assertIn(constants.COMPUTE_ID, amp_flow.provides)
self.assertEqual(3, len(amp_flow.provides))
self.assertEqual(4, len(amp_flow.provides))
self.assertEqual(0, len(amp_flow.requires))
def test_get_create_amphora_flow_cert(self):
@ -61,7 +61,7 @@ class TestAmphoraFlows(base.TestCase):
self.assertIn(constants.AMPHORA_ID, amp_flow.provides)
self.assertIn(constants.COMPUTE_ID, amp_flow.provides)
self.assertEqual(4, len(amp_flow.provides))
self.assertEqual(5, len(amp_flow.provides))
self.assertEqual(0, len(amp_flow.requires))
def test_get_create_amphora_for_lb_flow(self):