diff --git a/reactive/ovn_chassis_charm_handlers.py b/reactive/ovn_chassis_charm_handlers.py index 129d34e..c25441e 100644 --- a/reactive/ovn_chassis_charm_handlers.py +++ b/reactive/ovn_chassis_charm_handlers.py @@ -46,7 +46,7 @@ def pause_unit_from_config(): # Note that RabbitMQ is only used for the Neutron SR-IOV agent -@reactive.when_none('charm.paused') +@reactive.when_none('charm.paused', 'is-update-status-hook') @reactive.when(OVN_CHASSIS_ENABLE_HANDLERS_FLAG, 'amqp.connected') def amqp_connection(): amqp = reactive.endpoint_from_flag('amqp.connected') @@ -55,13 +55,14 @@ def amqp_connection(): instance.assess_status() -@reactive.when_none('charm.paused', 'nova-compute.connected') +@reactive.when_none('charm.paused', 'is-update-status-hook', + 'nova-compute.connected') @reactive.when(OVN_CHASSIS_ENABLE_HANDLERS_FLAG) def disable_openstack(): reactive.clear_flag('charm.ovn-chassis.enable-openstack') -@reactive.when_none('charm.paused') +@reactive.when_none('charm.paused', 'is-update-status-hook') @reactive.when(OVN_CHASSIS_ENABLE_HANDLERS_FLAG, 'nova-compute.connected') def enable_openstack(): reactive.set_flag('charm.ovn-chassis.enable-openstack') @@ -72,7 +73,7 @@ def enable_openstack(): charm_instance.assess_status() -@reactive.when_none('charm.paused') +@reactive.when_none('charm.paused', 'is-update-status-hook') @reactive.when(OVN_CHASSIS_ENABLE_HANDLERS_FLAG, 'config.rendered') def configure_bridges(): with charm.provide_charm_instance() as charm_instance: @@ -80,7 +81,7 @@ def configure_bridges(): charm_instance.assess_status() -@reactive.when_none('charm.paused') +@reactive.when_none('charm.paused', 'is-update-status-hook') @reactive.when(OVN_CHASSIS_ENABLE_HANDLERS_FLAG, 'ovsdb.available', 'certificates.available') diff --git a/unit_tests/test_reactive_ovn_chassis_charm_handlers.py b/unit_tests/test_reactive_ovn_chassis_charm_handlers.py index bf3868c..6b1ba51 100644 --- a/unit_tests/test_reactive_ovn_chassis_charm_handlers.py +++ b/unit_tests/test_reactive_ovn_chassis_charm_handlers.py @@ -58,13 +58,16 @@ def test_hooks(self): 'config.rendered',), }, 'when_none': { - 'amqp_connection': ('charm.paused',), + 'amqp_connection': ('charm.paused', 'is-update-status-hook'), 'disable_openstack': ( 'charm.paused', + 'is-update-status-hook', 'nova-compute.connected',), - 'enable_openstack': ('charm.paused',), - 'configure_bridges': ('charm.paused',), - 'configure_ovs': ('charm.paused',), + 'enable_openstack': ('charm.paused', 'is-update-status-hook'), + 'configure_bridges': ( + 'charm.paused', + 'is-update-status-hook'), + 'configure_ovs': ('charm.paused', 'is-update-status-hook'), 'pause_unit_from_config': ('charm.installed', 'charm.paused'), 'configure_nrpe': ( 'charm.paused',