diff --git a/cylc/flow/run_modes/simulation.py b/cylc/flow/run_modes/simulation.py index 4eaaf48ac56..e9dbbc26f17 100644 --- a/cylc/flow/run_modes/simulation.py +++ b/cylc/flow/run_modes/simulation.py @@ -78,6 +78,8 @@ def submit_task_job( 'hosts': ['localhost'], 'disable task event handlers': rtconfig['simulation']['disable task event handlers'], + 'submission retry delays': [], + 'execution retry delays': [] } itask.summary['job_runner_name'] = RunMode.SIMULATION.value itask.summary[task_job_mgr.KEY_EXECUTE_TIME_LIMIT] = ( diff --git a/cylc/flow/run_modes/skip.py b/cylc/flow/run_modes/skip.py index 9a05aa4729b..ae4703dfc0d 100644 --- a/cylc/flow/run_modes/skip.py +++ b/cylc/flow/run_modes/skip.py @@ -58,7 +58,9 @@ def submit_task_job( 'hosts': ['localhost'], 'disable task event handlers': rtconfig['skip']['disable task event handlers'], - 'execution polling intervals': [] + 'execution polling intervals': [], + 'submission retry delays': [], + 'execution retry delays': [] } itask.summary['job_runner_name'] = RunMode.SKIP.value itask.run_mode = RunMode.SKIP.value diff --git a/tests/integration/run_modes/test_skip.py b/tests/integration/run_modes/test_skip.py index b4c5cfdc2fb..afb4b91707e 100644 --- a/tests/integration/run_modes/test_skip.py +++ b/tests/integration/run_modes/test_skip.py @@ -226,3 +226,35 @@ async def test_prereqs_marked_satisfied_by_skip_mode( bar = schd.pool.get_task(IntegerPoint(1), 'bar') satisfied_message, = bar.state.prerequisites[0]._satisfied.values() assert satisfied_message == 'satisfied by skip mode' + + +async def test_outputs_can_be_changed(one_conf, flow, start, scheduler, validate): + + schd = scheduler(flow(one_conf), run_mode='live') + async with start(schd) as log: + # Broadcast the task into skip mode, output failed and submit it: + schd.broadcast_mgr.put_broadcast( + ["1"], + ["one"], + [ + {"run mode": "skip"}, + {"skip": {"outputs": "failed"}}, + ], + ) + schd.task_job_mgr.submit_task_jobs( + schd.workflow, + schd.pool.get_tasks(), + None, + None + ) + + # Broadcast the task into skip mode, output succeeded and submit it: + schd.broadcast_mgr.put_broadcast( + ['1'], ['one'], [{'skip': {'outputs': 'succeeded'}}] + ) + schd.task_job_mgr.submit_task_jobs( + schd.workflow, + schd.pool.get_tasks(), + None, + None + )