From 29b4865af8ff4531f465a2c279d0182a0aca0995 Mon Sep 17 00:00:00 2001 From: Matthew Jones Date: Tue, 29 Sep 2015 11:36:31 -0400 Subject: [PATCH] Ability to pause pexpect output with env var Since inventory updates don't support extra vars --- awx/main/tasks.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/awx/main/tasks.py b/awx/main/tasks.py index b92b965dd8..ac4f3006a9 100644 --- a/awx/main/tasks.py +++ b/awx/main/tasks.py @@ -426,8 +426,14 @@ class BaseTask(Task): logfile = stdout_handle logfile_pos = logfile.tell() if hasattr(instance, "extra_vars_dict") and "PEXPECT_SLEEP" in instance.extra_vars_dict: + pexpect_sleep = int(instance.extra_vars_dict['PEXPECT_SLEEP']) + elif 'PEXPECT_SLEEP' in os.environ: + pexpect_sleep = int(os.environ['PEXPECT_SLEEP']) + else: + pexpect_sleep = None + if pexpect_sleep is not None: logger.info("Suspending Job Execution for QA Work") - time.sleep(int(instance.extra_vars_dict["PEXPECT_SLEEP"])) + time.sleep(pexpect_sleep) child = pexpect.spawnu(args[0], args[1:], cwd=cwd, env=env) child.logfile_read = logfile canceled = False