From 309352826c7750501548034bf2bab6567d11009c Mon Sep 17 00:00:00 2001 From: Marco Donadoni Date: Tue, 23 Jan 2024 15:30:31 +0100 Subject: [PATCH] fix(run-manager): graceful shutdown of job-controller (#559) Use exec to execute job-controller, so that the server can receive signals such as `SIGTERM`. Closes reanahub/reana-job-controller#347 --- reana_workflow_controller/workflow_run_manager.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reana_workflow_controller/workflow_run_manager.py b/reana_workflow_controller/workflow_run_manager.py index 08d85afe..22a7d7ae 100644 --- a/reana_workflow_controller/workflow_run_manager.py +++ b/reana_workflow_controller/workflow_run_manager.py @@ -698,7 +698,7 @@ def _create_job_spec( def _create_job_controller_startup_cmd(self, user=None): """Create job controller startup cmd.""" - base_cmd = "flask run -h 0.0.0.0;" + base_cmd = "exec flask run -h 0.0.0.0;" if user: add_group_cmd = "groupadd -f -g {} {};".format( WORKFLOW_RUNTIME_USER_GID, WORKFLOW_RUNTIME_USER_GID @@ -710,7 +710,7 @@ def _create_job_controller_startup_cmd(self, user=None): WORKFLOW_RUNTIME_USER_UID, self.workflow.workspace_path, ) - run_app_cmd = 'su {} /bin/bash -c "{}"'.format(user, base_cmd) + run_app_cmd = 'exec su {} /bin/bash -c "{}"'.format(user, base_cmd) full_cmd = add_group_cmd + add_user_cmd + chown_workspace_cmd + run_app_cmd return [full_cmd] else: