Augment --keep-jobdirs with an IPC

It's difficult to start zuul in the normal way via with an extra
argument for debugging.  Make this an IPC accessible toggle.

The argument is kept for the time being because it's used by the
unit tests, and it's the only way to specify the value on startup,
but we should replace it later with a config file setting.

Change-Id: Ia59a9383fcf90a00e1475977629b7d71d3a40cb0
diff --git a/zuul/executor/server.py b/zuul/executor/server.py
index 3a4ddaf..7d65f39 100644
--- a/zuul/executor/server.py
+++ b/zuul/executor/server.py
@@ -35,7 +35,7 @@
 from zuul.lib import commandsocket
 
 COMMANDS = ['stop', 'pause', 'unpause', 'graceful', 'verbose',
-            'unverbose']
+            'unverbose', 'keep', 'nokeep']
 
 
 class Watchdog(object):
@@ -374,6 +374,8 @@
             graceful=self.graceful,
             verbose=self.verboseOn,
             unverbose=self.verboseOff,
+            keep=self.keep,
+            nokeep=self.nokeep,
         )
 
         self.merge_root = get_default(self.config, 'executor', 'git_dir',
@@ -510,6 +512,12 @@
     def verboseOff(self):
         self.verbose = False
 
+    def keep(self):
+        self.keep_jobdirs = True
+
+    def nokeep(self):
+        self.keep_jobdirs = False
+
     def join(self):
         self.update_thread.join()
         self.merger_thread.join()