Merge "Check master/backup router status in DVR functional tests" into stable/pike
This commit is contained in:
commit
e03c289937
|
@ -609,26 +609,30 @@ class L3AgentTestFramework(base.BaseSudoTestCase):
|
|||
|
||||
return (router1, router2)
|
||||
|
||||
def _get_master_and_slave_routers(self, router1, router2):
|
||||
def _get_master_and_slave_routers(self, router1, router2,
|
||||
check_external_device=True):
|
||||
|
||||
try:
|
||||
common_utils.wait_until_true(
|
||||
lambda: router1.ha_state == 'master')
|
||||
common_utils.wait_until_true(
|
||||
lambda: self._check_external_device(router1))
|
||||
if check_external_device:
|
||||
common_utils.wait_until_true(
|
||||
lambda: self._check_external_device(router1))
|
||||
master_router = router1
|
||||
slave_router = router2
|
||||
except common_utils.WaitTimeout:
|
||||
common_utils.wait_until_true(
|
||||
lambda: router2.ha_state == 'master')
|
||||
common_utils.wait_until_true(
|
||||
lambda: self._check_external_device(router2))
|
||||
if check_external_device:
|
||||
common_utils.wait_until_true(
|
||||
lambda: self._check_external_device(router2))
|
||||
master_router = router2
|
||||
slave_router = router1
|
||||
|
||||
common_utils.wait_until_true(
|
||||
lambda: master_router.ha_state == 'master')
|
||||
common_utils.wait_until_true(
|
||||
if check_external_device:
|
||||
common_utils.wait_until_true(
|
||||
lambda: self._check_external_device(master_router))
|
||||
common_utils.wait_until_true(
|
||||
lambda: slave_router.ha_state == 'backup')
|
||||
|
|
|
@ -1483,18 +1483,18 @@ class TestDvrRouter(framework.L3AgentTestFramework):
|
|||
self.failover_agent, enable_gw=enable_gw,
|
||||
enable_centralized_fip=enable_centralized_fip,
|
||||
snat_bound_fip=snat_bound_fip)
|
||||
utils.wait_until_true(lambda: router1.ha_state == 'master')
|
||||
utils.wait_until_true(lambda: router2.ha_state == 'backup')
|
||||
master, backup = self._get_master_and_slave_routers(
|
||||
router1, router2, check_external_device=False)
|
||||
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace_with_fip(router1)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace_with_fip(router2)
|
||||
self.fail_ha_router(router1)
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace_with_fip(master)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace_with_fip(backup)
|
||||
self.fail_ha_router(master)
|
||||
|
||||
utils.wait_until_true(lambda: router2.ha_state == 'master')
|
||||
utils.wait_until_true(lambda: router1.ha_state == 'backup')
|
||||
utils.wait_until_true(lambda: backup.ha_state == 'master')
|
||||
utils.wait_until_true(lambda: master.ha_state == 'backup')
|
||||
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace_with_fip(router2)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace_with_fip(router1)
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace_with_fip(backup)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace_with_fip(master)
|
||||
|
||||
def _test_dvr_ha_router_failover(self, enable_gw):
|
||||
self._setup_dvr_ha_agents()
|
||||
|
@ -1503,19 +1503,19 @@ class TestDvrRouter(framework.L3AgentTestFramework):
|
|||
router1 = self._create_dvr_ha_router(self.agent, enable_gw=enable_gw)
|
||||
router2 = self._create_dvr_ha_router(self.failover_agent, enable_gw)
|
||||
|
||||
utils.wait_until_true(lambda: router1.ha_state == 'master')
|
||||
utils.wait_until_true(lambda: router2.ha_state == 'backup')
|
||||
master, backup = self._get_master_and_slave_routers(
|
||||
router1, router2, check_external_device=False)
|
||||
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace(router1)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace(router2)
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace(master)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace(backup)
|
||||
|
||||
self.fail_ha_router(router1)
|
||||
self.fail_ha_router(master)
|
||||
|
||||
utils.wait_until_true(lambda: router2.ha_state == 'master')
|
||||
utils.wait_until_true(lambda: router1.ha_state == 'backup')
|
||||
utils.wait_until_true(lambda: backup.ha_state == 'master')
|
||||
utils.wait_until_true(lambda: master.ha_state == 'backup')
|
||||
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace(router2)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace(router1)
|
||||
self._assert_ip_addresses_in_dvr_ha_snat_namespace(backup)
|
||||
self._assert_no_ip_addresses_in_dvr_ha_snat_namespace(master)
|
||||
|
||||
def test_dvr_ha_router_failover_with_gw(self):
|
||||
self._test_dvr_ha_router_failover(enable_gw=True)
|
||||
|
|
Loading…
Reference in New Issue