rest: add retcode field to POST /shell/run

provide return code as result to ogserver.

Update virtual mode driver to return dummy value, although this command
is unimplemented, this seems to be broken due to possible TypeError when
accessing result from caller.
master
OpenGnSys Support Team 2024-06-21 14:02:54 +02:00
parent 399a5dceb8
commit 19cd1b9a78
4 changed files with 5 additions and 4 deletions

View File

@ -297,7 +297,7 @@ class OgLiveOperations:
self.refresh(ogRest)
return output.decode('utf-8')
return (ogRest.proc.returncode, output.decode('utf-8'))
def session(self, request, ogRest):
disk = request.getDisk()

View File

@ -92,7 +92,7 @@ class ogThread():
return
try:
shellout = ogRest.operations.shellrun(request, ogRest)
(retcode, shellout) = ogRest.operations.shellrun(request, ogRest)
except Exception as e:
ogRest.send_internal_server_error(client, exc=e)
return
@ -100,6 +100,7 @@ class ogThread():
if request.getEcho():
json_body = jsonBody()
json_body.add_element('out', shellout)
json_body.add_element('retcode', retcode)
response = restResponse(ogResponses.OK, json_body, seq=client.seq)
client.send(response.get())
else:

View File

@ -240,7 +240,7 @@ class OgVirtualOperations:
self.poweroff_host()
def shellrun(self, request, ogRest):
return
return (0, "")
def session(self, request, ogRest):
disk = request.getDisk()

View File

@ -93,7 +93,7 @@ class OgWindowsOperations:
if error.stdout:
return error.stdout
return "{Non zero exit code and empty output}"
return result.stdout
return (result.returncode, result.stdout)
def session(self, request, ogRest):
raise NotImplementedError