Example #1
0
 def test_context_manager_on(self):
     with self.settings(MAINTENANCE_MODE_STATE_FILE_PATH=self.tmp_dir):
         for value in [True, False]:
             core.set_maintenance_mode(value)
             with core.maintenance_mode_on():
                 self.assertEqual(core.get_maintenance_mode(), True)
             self.assertEqual(core.get_maintenance_mode(), value)
Example #2
0
    def reload_plugins(self):
        """safely reload IntegrationPlugins"""
        # do not reload whe currently loading
        if self.is_loading:
            return

        logger.info('Start reloading plugins')
        with maintenance_mode_on():
            self.unload_plugins()
            self.load_plugins()
        logger.info('Finished reloading plugins')
Example #3
0
    def reload_plugins(self, full_reload: bool = False):
        """Safely reload.

        Args:
            full_reload (bool, optional): Reload everything - including plugin mechanism. Defaults to False.
        """
        # Do not reload whe currently loading
        if self.is_loading:
            return  # pragma: no cover

        logger.info('Start reloading plugins')

        with maintenance_mode_on():
            self.unload_plugins()
            self.load_plugins(full_reload)

        logger.info('Finished reloading plugins')