summary refs log tree commit diff
path: root/nixos/lib/test-driver
diff options
context:
space:
mode:
authorFlorian Klink <flokli@flokli.de>2019-11-21 20:13:41 +0100
committerGitHub <noreply@github.com>2019-11-21 20:13:41 +0100
commit758efb93480ed94d718c824a4472a3f5cae551c9 (patch)
treeaf12ca4ec408fb6ff07a686486ed568b14907b25 /nixos/lib/test-driver
parent0f2635b7d45498e500cd01299c269b2590e9e56d (diff)
parent6815017dcdfbd19e2f469f5cd368ea60d778cd6d (diff)
Merge pull request #73190 from flokli/ceph-tests-python
WIP: nixos/ceph: port tests to python
Diffstat (limited to 'nixos/lib/test-driver')
-rw-r--r--nixos/lib/test-driver/test-driver.py24
1 files changed, 16 insertions, 8 deletions
diff --git a/nixos/lib/test-driver/test-driver.py b/nixos/lib/test-driver/test-driver.py
index dff31a8f8e1e3..0b8e3b67c9b2d 100644
--- a/nixos/lib/test-driver/test-driver.py
+++ b/nixos/lib/test-driver/test-driver.py
@@ -290,10 +290,15 @@ class Machine:
 
     def wait_for_monitor_prompt(self) -> str:
         assert self.monitor is not None
+        answer = ""
         while True:
-            answer = self.monitor.recv(1024).decode()
+            undecoded_answer = self.monitor.recv(1024)
+            if not undecoded_answer:
+                break
+            answer += undecoded_answer.decode()
             if answer.endswith("(qemu) "):
-                return answer
+                break
+        return answer
 
     def send_monitor_command(self, command: str) -> str:
         message = ("{}\n".format(command)).encode()
@@ -606,12 +611,15 @@ class Machine:
             + os.environ.get("QEMU_OPTS", "")
         )
 
-        environment = {
-            "QEMU_OPTS": qemu_options,
-            "SHARED_DIR": self.shared_dir,
-            "USE_TMPDIR": "1",
-        }
-        environment.update(dict(os.environ))
+        environment = dict(os.environ)
+        environment.update(
+            {
+                "TMPDIR": self.state_dir,
+                "SHARED_DIR": self.shared_dir,
+                "USE_TMPDIR": "1",
+                "QEMU_OPTS": qemu_options,
+            }
+        )
 
         self.process = subprocess.Popen(
             self.script,