@@ -52,37 +52,41 @@ def clear_db_jobs():
5252
5353
5454async def run_immediate ():
55- logger .info ("Clearing existing jobs" )
56- clear_db_jobs ()
57- now_trigger = DateTrigger (run_date = datetime .now (UTC ))
58- logger .info ("Adding one-off job: populate DB groups" )
59- SCHEDULER .add_job (
60- populate_db_groups ,
61- trigger = now_trigger ,
62- id = "populate_db_groups" ,
63- replace_existing = True
64- )
65- logger .info ("Adding one-off job: sync_auth0_roles" )
66- SCHEDULER .add_job (
67- sync_auth0_roles ,
68- trigger = now_trigger ,
69- id = "sync_auth0_roles" ,
70- replace_existing = True
71- )
72- logger .info ("Adding one-off job: sync_auth0_users" )
73- SCHEDULER .add_job (
74- sync_auth0_users ,
75- trigger = now_trigger ,
76- id = "sync_auth0_users" ,
77- replace_existing = True
78- )
79- SCHEDULER .start ()
80- logger .info ("Scheduler started, waiting for jobs to complete..." )
81- while SCHEDULER .get_jobs ():
82- SCHEDULER .print_jobs ()
83- await asyncio .sleep (0.5 )
84- logger .info ("Stopping scheduler" )
85- SCHEDULER .shutdown (wait = True )
55+ logger .info ("Starting scheduler in paused mode to initialize job store" )
56+ SCHEDULER .start (paused = True )
57+ try :
58+ logger .info ("Clearing existing jobs" )
59+ clear_db_jobs ()
60+ now_trigger = DateTrigger (run_date = datetime .now (UTC ))
61+ logger .info ("Adding one-off job: populate DB groups" )
62+ SCHEDULER .add_job (
63+ populate_db_groups ,
64+ trigger = now_trigger ,
65+ id = "populate_db_groups" ,
66+ replace_existing = True
67+ )
68+ logger .info ("Adding one-off job: sync_auth0_roles" )
69+ SCHEDULER .add_job (
70+ sync_auth0_roles ,
71+ trigger = now_trigger ,
72+ id = "sync_auth0_roles" ,
73+ replace_existing = True
74+ )
75+ logger .info ("Adding one-off job: sync_auth0_users" )
76+ SCHEDULER .add_job (
77+ sync_auth0_users ,
78+ trigger = now_trigger ,
79+ id = "sync_auth0_users" ,
80+ replace_existing = True
81+ )
82+ logger .info ("Resuming scheduler and waiting for jobs to complete..." )
83+ SCHEDULER .resume ()
84+ while SCHEDULER .get_jobs ():
85+ SCHEDULER .print_jobs ()
86+ await asyncio .sleep (0.5 )
87+ finally :
88+ logger .info ("Stopping scheduler" )
89+ SCHEDULER .shutdown (wait = True )
8690
8791
8892async def run_with_scheduler ():
0 commit comments