@@ -145,6 +145,7 @@ async def set_prereqs_and_outputs(
145
145
outputs = validate .outputs (outputs )
146
146
prerequisites = validate .prereqs (prerequisites )
147
147
validate .flow_opts (flow , flow_wait )
148
+ validate .is_tasks (tasks )
148
149
149
150
yield
150
151
@@ -172,6 +173,8 @@ async def stop(
172
173
task : Optional [str ] = None ,
173
174
flow_num : Optional [int ] = None ,
174
175
):
176
+ if task :
177
+ validate .is_tasks ([task ])
175
178
yield
176
179
if flow_num :
177
180
schd .pool .stop_flow (flow_num )
@@ -214,6 +217,7 @@ async def stop(
214
217
@_command ('release' )
215
218
async def release (schd : 'Scheduler' , tasks : Iterable [str ]):
216
219
"""Release held tasks."""
220
+ validate .is_tasks (tasks )
217
221
yield
218
222
yield schd .pool .release_held_tasks (tasks )
219
223
@@ -237,6 +241,7 @@ async def resume(schd: 'Scheduler'):
237
241
@_command ('poll_tasks' )
238
242
async def poll_tasks (schd : 'Scheduler' , tasks : Iterable [str ]):
239
243
"""Poll pollable tasks or a task or family if options are provided."""
244
+ validate .is_tasks (tasks )
240
245
yield
241
246
if schd .get_run_mode () == RunMode .SIMULATION :
242
247
yield 0
@@ -248,6 +253,7 @@ async def poll_tasks(schd: 'Scheduler', tasks: Iterable[str]):
248
253
@_command ('kill_tasks' )
249
254
async def kill_tasks (schd : 'Scheduler' , tasks : Iterable [str ]):
250
255
"""Kill all tasks or a task/family if options are provided."""
256
+ validate .is_tasks (tasks )
251
257
yield
252
258
itasks , _ , bad_items = schd .pool .filter_task_proxies (tasks )
253
259
if schd .get_run_mode () == RunMode .SIMULATION :
@@ -264,6 +270,7 @@ async def kill_tasks(schd: 'Scheduler', tasks: Iterable[str]):
264
270
@_command ('hold' )
265
271
async def hold (schd : 'Scheduler' , tasks : Iterable [str ]):
266
272
"""Hold specified tasks."""
273
+ validate .is_tasks (tasks )
267
274
yield
268
275
yield schd .pool .hold_tasks (tasks )
269
276
@@ -304,6 +311,7 @@ async def set_verbosity(schd: 'Scheduler', level: Union[int, str]):
304
311
@_command ('remove_tasks' )
305
312
async def remove_tasks (schd : 'Scheduler' , tasks : Iterable [str ]):
306
313
"""Remove tasks."""
314
+ validate .is_tasks (tasks )
307
315
yield
308
316
yield schd .pool .remove_tasks (tasks )
309
317
@@ -430,5 +438,6 @@ async def force_trigger_tasks(
430
438
flow_descr : Optional [str ] = None ,
431
439
):
432
440
"""Manual task trigger."""
441
+ validate .is_tasks (tasks )
433
442
yield
434
443
yield schd .pool .force_trigger_tasks (tasks , flow , flow_wait , flow_descr )
0 commit comments