3434 RunSummary ,
3535)
3636from pypsa_app .backend .services .backend_registry import backend_registry
37+ from pypsa_app .backend .services .callback import (
38+ _build_payload ,
39+ post_callback_sync ,
40+ )
3741from pypsa_app .backend .services .run import SnakedispatchClient , SnakedispatchError
38- from pypsa_app .backend .services .callback import fire_callback_sync
3942from pypsa_app .backend .services .sync import (
4043 SYNCED_STATUSES ,
4144 sync_run_from_job ,
@@ -292,9 +295,11 @@ def get_run(
292295 if needs_callback :
293296 # TODO: replace with proper async callback or
294297 # FastAPI BackgroundTasks.
298+ url = str (run .callback_url )
299+ payload = _build_payload (run )
295300 threading .Thread (
296- target = fire_callback_sync ,
297- args = (run , ),
301+ target = post_callback_sync ,
302+ args = (url , payload ),
298303 daemon = True ,
299304 ).start ()
300305 except SnakedispatchError :
@@ -397,8 +402,10 @@ def cancel_run(
397402 if needs_callback :
398403 # TODO: replace with proper async callback or
399404 # FastAPI BackgroundTasks.
405+ url = str (run .callback_url )
406+ payload = _build_payload (run )
400407 threading .Thread (
401- target = fire_callback_sync , args = (run , ), daemon = True
408+ target = post_callback_sync , args = (url , payload ), daemon = True
402409 ).start ()
403410 except SnakedispatchError as e :
404411 if e .status_code in (404 , 409 ):
@@ -407,8 +414,10 @@ def cancel_run(
407414 db .commit ()
408415 # TODO: replace with proper async callback or
409416 # FastAPI BackgroundTasks.
417+ url = str (run .callback_url )
418+ payload = _build_payload (run )
410419 threading .Thread (
411- target = fire_callback_sync , args = (run , ), daemon = True
420+ target = post_callback_sync , args = (url , payload ), daemon = True
412421 ).start ()
413422 else :
414423 raise
0 commit comments