@@ -278,7 +278,7 @@ def update_job_on_unit(pioreactor_unit: str, experiment: str, job: str) -> Respo
278278 return Response (status = 202 )
279279
280280
281- @api .route ("/workers /<pioreactor_unit>/system/reboot" , methods = ["POST" ])
281+ @api .route ("/units /<pioreactor_unit>/system/reboot" , methods = ["POST" ])
282282def reboot_unit (pioreactor_unit : str ) -> ResponseReturnValue :
283283 """Reboots unit"""
284284 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
@@ -288,7 +288,7 @@ def reboot_unit(pioreactor_unit: str) -> ResponseReturnValue:
288288 return create_task_response (task )
289289
290290
291- @api .route ("/workers /<pioreactor_unit>/system/shutdown" , methods = ["POST" ])
291+ @api .route ("/units /<pioreactor_unit>/system/shutdown" , methods = ["POST" ])
292292def shutdown_unit (pioreactor_unit : str ) -> ResponseReturnValue :
293293 """Shutdown unit"""
294294 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
@@ -428,7 +428,7 @@ def get_recent_logs_for_unit_and_experiment(
428428 return jsonify (recent_logs )
429429
430430
431- @api .route ("/units /<pioreactor_unit>/experiments/<experiment>/logs" , methods = ["GET" ])
431+ @api .route ("/workers /<pioreactor_unit>/experiments/<experiment>/logs" , methods = ["GET" ])
432432def get_logs_for_unit_and_experiment (pioreactor_unit : str , experiment : str ) -> ResponseReturnValue :
433433 """Shows event logs from all units, uses pagination."""
434434
@@ -477,7 +477,7 @@ def get_logs_for_unit(pioreactor_unit: str) -> ResponseReturnValue:
477477 return jsonify (recent_logs )
478478
479479
480- @api .route ("/units /<pioreactor_unit>/experiments/<experiment>/logs" , methods = ["POST" ])
480+ @api .route ("/workers /<pioreactor_unit>/experiments/<experiment>/logs" , methods = ["POST" ])
481481def publish_new_log (pioreactor_unit : str , experiment : str ) -> ResponseReturnValue :
482482 body = request .get_json ()
483483
@@ -711,50 +711,46 @@ def get_all_calibrations(pioreactor_unit) -> ResponseReturnValue:
711711 return create_task_response (task )
712712
713713
714- @api .route ("/workers/<pioreactor_unit>/calibrations/<cal_type >" , methods = ["GET" ])
715- def get_calibrations (pioreactor_unit , cal_type ) -> ResponseReturnValue :
714+ @api .route ("/workers/<pioreactor_unit>/calibrations/<device >" , methods = ["GET" ])
715+ def get_calibrations (pioreactor_unit , device ) -> ResponseReturnValue :
716716 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
717- task = broadcast_get_across_cluster (f"/unit_api/calibrations/{ cal_type } " )
717+ task = broadcast_get_across_cluster (f"/unit_api/calibrations/{ device } " )
718718 else :
719719 task = tasks .multicast_get_across_cluster (
720- f"/unit_api/calibrations/{ cal_type } " , [pioreactor_unit ]
720+ f"/unit_api/calibrations/{ device } " , [pioreactor_unit ]
721721 )
722722 return create_task_response (task )
723723
724724
725- @api .route (
726- "/workers/<pioreactor_unit>/calibrations/<cal_type>/<cal_name>/active" , methods = ["PATCH" ]
727- )
728- def set_active_calibration (pioreactor_unit , cal_type , cal_name ) -> ResponseReturnValue :
725+ @api .route ("/workers/<pioreactor_unit>/calibrations/<device>/<cal_name>/active" , methods = ["PATCH" ])
726+ def set_active_calibration (pioreactor_unit , device , cal_name ) -> ResponseReturnValue :
729727 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
730- task = broadcast_patch_across_cluster (
731- f"/unit_api/calibrations/{ cal_type } /{ cal_name } /active"
732- )
728+ task = broadcast_patch_across_cluster (f"/unit_api/calibrations/{ device } /{ cal_name } /active" )
733729 else :
734730 task = tasks .multicast_patch_across_cluster (
735- f"/unit_api/calibrations/{ cal_type } /{ cal_name } /active" , [pioreactor_unit ]
731+ f"/unit_api/calibrations/{ device } /{ cal_name } /active" , [pioreactor_unit ]
736732 )
737733 return create_task_response (task )
738734
739735
740- @api .route ("/workers/<pioreactor_unit>/calibrations/<cal_type >/active" , methods = ["DELETE" ])
741- def remove_active_status_calibration (pioreactor_unit , cal_type ) -> ResponseReturnValue :
736+ @api .route ("/workers/<pioreactor_unit>/calibrations/<device >/active" , methods = ["DELETE" ])
737+ def remove_active_status_calibration (pioreactor_unit , device ) -> ResponseReturnValue :
742738 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
743- task = broadcast_delete_across_cluster (f"/unit_api/calibrations/{ cal_type } /active" )
739+ task = broadcast_delete_across_cluster (f"/unit_api/calibrations/{ device } /active" )
744740 else :
745741 task = tasks .multicast_delete_across_cluster (
746- f"/unit_api/calibrations/{ cal_type } /active" , [pioreactor_unit ]
742+ f"/unit_api/calibrations/{ device } /active" , [pioreactor_unit ]
747743 )
748744 return create_task_response (task )
749745
750746
751- @api .route ("/workers/<pioreactor_unit>/calibrations/<cal_type >/<cal_name>" , methods = ["DELETE" ])
752- def remove_calibration (pioreactor_unit , cal_type , cal_name ) -> ResponseReturnValue :
747+ @api .route ("/workers/<pioreactor_unit>/calibrations/<device >/<cal_name>" , methods = ["DELETE" ])
748+ def remove_calibration (pioreactor_unit , device , cal_name ) -> ResponseReturnValue :
753749 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
754- task = broadcast_delete_across_cluster (f"/unit_api/calibrations/{ cal_type } /{ cal_name } " )
750+ task = broadcast_delete_across_cluster (f"/unit_api/calibrations/{ device } /{ cal_name } " )
755751 else :
756752 task = tasks .multicast_delete_across_cluster (
757- f"/unit_api/calibrations/{ cal_type } /{ cal_name } " , [pioreactor_unit ]
753+ f"/unit_api/calibrations/{ device } /{ cal_name } " , [pioreactor_unit ]
758754 )
759755 return create_task_response (task )
760756
@@ -809,12 +805,17 @@ def uninstall_plugin_across_cluster(pioreactor_unit: str) -> ResponseReturnValue
809805 )
810806
811807
812- @api .route ("/jobs/running" , methods = ["GET" ])
813- def get_jobs_running_across_cluster () -> ResponseReturnValue :
814- return create_task_response (broadcast_get_across_cluster ("/unit_api/jobs/running" ))
808+ @api .route ("/units/<pioreactor_unit>/jobs/running" , methods = ["GET" ])
809+ def get_jobs_running (pioreactor_unit : str ) -> ResponseReturnValue :
810+ if pioreactor_unit == UNIVERSAL_IDENTIFIER :
811+ return create_task_response (broadcast_get_across_cluster ("/unit_api/jobs/running" ))
812+ else :
813+ return create_task_response (
814+ tasks .multicast_get_across_cluster ("/unit_api/jobs/running" , [pioreactor_unit ])
815+ )
815816
816817
817- @api .route ("/jobs/running/ experiments/<experiment>" , methods = ["GET" ])
818+ @api .route ("/experiments/<experiment>/jobs/running " , methods = ["GET" ])
818819def get_jobs_running_across_cluster_in_experiment (experiment ) -> ResponseReturnValue :
819820 list_of_assigned_workers = get_all_workers_in_experiment (experiment )
820821
@@ -852,7 +853,7 @@ def get_setting_for_job_across_cluster_in_experiment(
852853
853854
854855@api .route ("/workers/<pioreactor_unit>/jobs/settings/job_name/<job_name>" , methods = ["GET" ])
855- def get_job_settings_for_worker (pioreactor_unit , job_name ) -> ResponseReturnValue :
856+ def get_job_settings_for_worker (pioreactor_unit : str , job_name : str ) -> ResponseReturnValue :
856857 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
857858 task = broadcast_get_across_cluster (f"/unit_api/jobs/settings/job_name/{ job_name } " )
858859 else :
@@ -866,7 +867,9 @@ def get_job_settings_for_worker(pioreactor_unit, job_name) -> ResponseReturnValu
866867 "/workers/<pioreactor_unit>/jobs/settings/job_name/<job_name>/setting/<setting>" ,
867868 methods = ["GET" ],
868869)
869- def get_job_setting_for_worker (pioreactor_unit , job_name , setting ) -> ResponseReturnValue :
870+ def get_job_setting_for_worker (
871+ pioreactor_unit : str , job_name : str , setting : str
872+ ) -> ResponseReturnValue :
870873 if pioreactor_unit == UNIVERSAL_IDENTIFIER :
871874 task = broadcast_get_across_cluster (
872875 f"/unit_api/jobs/settings/job_name/{ job_name } /setting/{ setting } "
@@ -881,14 +884,24 @@ def get_job_setting_for_worker(pioreactor_unit, job_name, setting) -> ResponseRe
881884## MISC
882885
883886
884- @api .route ("/versions/app" , methods = ["GET" ])
885- def get_app_versions_across_cluster () -> ResponseReturnValue :
886- return create_task_response (broadcast_get_across_cluster ("/unit_api/versions/app" ))
887+ @api .route ("/units/<pioreactor_unit>/versions/app" , methods = ["GET" ])
888+ def get_app_versions (pioreactor_unit : str ) -> ResponseReturnValue :
889+ if pioreactor_unit == UNIVERSAL_IDENTIFIER :
890+ return broadcast_get_across_cluster ("/unit_api/versions/app" )
891+ else :
892+ return create_task_response (
893+ tasks .multicast_get_across_cluster ("/unit_api/versions/app" , [pioreactor_unit ])
894+ )
887895
888896
889- @api .route ("/versions/ui" , methods = ["GET" ])
890- def get_ui_versions_across_cluster () -> ResponseReturnValue :
891- return create_task_response (broadcast_get_across_cluster ("/unit_api/versions/ui" ))
897+ @api .route ("/units/<pioreactor_unit>/versions/ui" , methods = ["GET" ])
898+ def get_ui_versions_across_cluster (pioreactor_unit : str ) -> ResponseReturnValue :
899+ if pioreactor_unit == UNIVERSAL_IDENTIFIER :
900+ return broadcast_get_across_cluster ("/unit_api/versions/ui" )
901+ else :
902+ return create_task_response (
903+ tasks .multicast_get_across_cluster ("/unit_api/versions/ui" , [pioreactor_unit ])
904+ )
892905
893906
894907## UPLOADS
@@ -1942,7 +1955,7 @@ def get_list_of_workers_for_experiment(experiment: str) -> ResponseReturnValue:
19421955 return jsonify (workers )
19431956
19441957
1945- @api .route ("/experiments/<experiment>/historical_workers " , methods = ["GET" ])
1958+ @api .route ("/experiments/<experiment>/historical_worker_assignments " , methods = ["GET" ])
19461959def get_list_of_historical_workers_for_experiment (experiment : str ) -> ResponseReturnValue :
19471960 workers = query_app_db (
19481961 """
0 commit comments