Coverage for src/backend/InvenTree/common/apps.py: 66%

23 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-10-07 17:47 +0000

1"""App config for common app.""" 

2 

3from django.apps import AppConfig 

4 

5import structlog 

6 

7import InvenTree.ready 

8from common.settings import get_global_setting, set_global_setting 

9from InvenTree.ready import ignore_ready_warning 

10 

11logger = structlog.get_logger('inventree') 

12 

13 

14class CommonConfig(AppConfig): 

15 """AppConfig for common app. 

16 

17 Clears system wide flags on ready. 

18 """ 

19 

20 name = 'common' 

21 

22 def ready(self): 

23 """Initialize restart flag clearance on startup.""" 

24 from InvenTree.ready import setAppLoaded 

25 

26 setAppLoaded(self.name) 

27 

28 if InvenTree.ready.isRunningMigrations(): # pragma: no cover 28 ↛ 29line 28 didn't jump to line 29 because the condition on line 28 was never true

29 return 

30 

31 self.clear_restart_flag() 

32 

33 @ignore_ready_warning 

34 def clear_restart_flag(self): 

35 """Clear the SERVER_RESTART_REQUIRED setting.""" 

36 try: 

37 if get_global_setting( 37 ↛ 40line 37 didn't jump to line 40 because the condition on line 37 was never true

38 'SERVER_RESTART_REQUIRED', backup_value=False, create=False, cache=False 

39 ): 

40 logger.info('Clearing SERVER_RESTART_REQUIRED flag') 

41 

42 if not InvenTree.ready.isImportingData(): 

43 set_global_setting('SERVER_RESTART_REQUIRED', False, None) 

44 except Exception: # pragma: no cover 

45 pass