@@ -94,11 +94,13 @@ def init_task(release_id, task_service_id, task_id):
9494 release = Release .objects .select_related ().get (kf_id = release_id )
9595 service = TaskService .objects .get (kf_id = task_service_id )
9696 task = Task .objects .get (kf_id = task_id )
97+ studies = [study .kf_id for study in release .studies .all ()]
9798
9899 body = {
99100 "action" : "initialize" ,
100101 "task_id" : task .kf_id ,
101102 "release_id" : release .kf_id ,
103+ "studies" : studies ,
102104 }
103105 failed = False
104106 resp = None
@@ -149,6 +151,7 @@ def start_release(release_id):
149151 """
150152 logger .info (f"Starting release { release_id } " )
151153 release = Release .objects .select_related ().get (kf_id = release_id )
154+ studies = [study .kf_id for study in release .studies .all ()]
152155
153156 release .start ()
154157 release .save ()
@@ -158,6 +161,7 @@ def start_release(release_id):
158161 "action" : "start" ,
159162 "task_id" : task .kf_id ,
160163 "release_id" : release .kf_id ,
164+ "studies" : studies ,
161165 }
162166 failed = False
163167 resp = None
@@ -220,6 +224,7 @@ def publish_release(release_id):
220224 logger .info (f"Publishing release { release_id } " )
221225
222226 release = Release .objects .select_related ().get (kf_id = release_id )
227+ studies = [study .kf_id for study in release .studies .all ()]
223228 release .publish ()
224229 tasks = release .tasks .all ()
225230
@@ -235,6 +240,7 @@ def publish_release(release_id):
235240 "action" : "publish" ,
236241 "task_id" : task .kf_id ,
237242 "release_id" : release .kf_id ,
243+ "studies" : studies ,
238244 }
239245 failed = False
240246 resp = None
@@ -268,10 +274,15 @@ def publish_release(release_id):
268274 )
269275 failed = True
270276
271- if (resp and 'state' in resp .json () and
272- resp .json ()['state' ] != 'publishing' ):
273- logger .error (f'invalid state returned from task for publish: ' +
274- f'{ resp .content } ' )
277+ if (
278+ resp
279+ and "state" in resp .json ()
280+ and resp .json ()["state" ] != "publishing"
281+ ):
282+ logger .error (
283+ f"invalid state returned from task for publish: "
284+ + f"{ resp .content } "
285+ )
275286 failed = True
276287
277288 if failed :
@@ -296,6 +307,7 @@ def cancel_release(release_id, fail=False):
296307 )
297308
298309 release = Release .objects .get (kf_id = release_id )
310+ studies = [study .kf_id for study in release .studies .all ()]
299311
300312 # In case another task has already canceled or failed this release
301313 if release .state in ["canceled" , "failed" ]:
@@ -312,6 +324,7 @@ def cancel_release(release_id, fail=False):
312324 "action" : "cancel" ,
313325 "task_id" : task .kf_id ,
314326 "release_id" : release .kf_id ,
327+ "studies" : studies ,
315328 }
316329 try :
317330 requests .post (
0 commit comments