Merge pull request 'qga: add argument 'check'' (#1303) from DavHau-dave into main

This commit is contained in:
clan-bot
2024-05-02 13:13:12 +00:00

View File

@@ -41,7 +41,7 @@ class QgaSession:
) )
# run, wait for result, return exitcode and output # run, wait for result, return exitcode and output
def run(self, cmd: str) -> tuple[int, str, str]: def run(self, cmd: str, check: bool = False) -> tuple[int, str, str]:
self.exec_cmd(cmd) self.exec_cmd(cmd)
result_pid = self.get_response() result_pid = self.get_response()
pid = result_pid["return"]["pid"] pid = result_pid["return"]["pid"]
@@ -74,4 +74,8 @@ class QgaSession:
if "err-data" not in result["return"] if "err-data" not in result["return"]
else base64.b64decode(result["return"]["err-data"]).decode("utf-8") else base64.b64decode(result["return"]["err-data"]).decode("utf-8")
) )
if check and exitcode != 0:
raise Exception(
f"Command on guest failed\nCommand: {cmd}\nExitcode {exitcode}\nStdout: {stdout}\nStderr: {stderr}"
)
return exitcode, stdout, stderr return exitcode, stdout, stderr