aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTyler Baker <forcedinductionz@gmail.com>2015-05-05 23:12:49 -0700
committerTyler Baker <forcedinductionz@gmail.com>2015-05-05 23:12:49 -0700
commit9e739c1361044a03cf8dbe46f138ae4b754aec81 (patch)
treeba4e12a1bb41e3938c718079852941246a540998
parentaa547b81751d9452664388dc6dc44d8ac2132447 (diff)
parent51847f98a26ec627d0cda97c801a50f3670c6f88 (diff)
Merge pull request #5 from roxell/develop
Develop
-rwxr-xr-xstream-lava-log.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/stream-lava-log.py b/stream-lava-log.py
index f3e6e4e..70954a8 100755
--- a/stream-lava-log.py
+++ b/stream-lava-log.py
@@ -88,8 +88,15 @@ class CursesOutput(object):
def _run(self, stdscr):
self.stdscr = stdscr
self._setup_win()
+ self.stdscr.nodelay(1)
while True:
+ key = self.stdscr.getch()
+ if key == ord('q'):
+ break
+ elif key == ord('c'):
+ self.outputter.cancel_job()
+
self._update_win()
self._poll_state()
@@ -329,6 +336,11 @@ class LavaConnection(object):
return self.connection.scheduler.job_output(job_id)
+ @handle_connection
+ def cancel_job(self, job_id):
+ return self.connection.scheduler.cancel_job(job_id)
+
+
class LavaRunJob(object):
def __init__(self, connection, job_id, poll_interval):
self.END_STATES = ['Complete', 'Incomplete', 'Canceled']
@@ -345,6 +357,10 @@ class LavaRunJob(object):
self._is_running = True
+ def cancel_job(self):
+ self.state = self.connection.cancel_job(self.job_id)
+
+
def get_description(self):
self._get_state()
return self.details.get('description', '')