diff --git a/openflexure_microscope/api/v2/views/actions/system.py b/openflexure_microscope/api/v2/views/actions/system.py index 631c5c79..df002df1 100644 --- a/openflexure_microscope/api/v2/views/actions/system.py +++ b/openflexure_microscope/api/v2/views/actions/system.py @@ -25,9 +25,14 @@ class ShutdownAPI(View): """ Attempt to shutdown the device """ - subprocess.Popen(["sudo", "shutdown", "-h", "now"]) + p = subprocess.Popen( + ["sudo", "shutdown", "-h", "now"], + stderr=subprocess.PIPE, + stdout=subprocess.PIPE, + ) - return "{}", 201 + out, err = p.communicate() + return {"out": out, "err": err}, 201 @ThingAction @@ -41,6 +46,11 @@ class RebootAPI(View): """ Attempt to reboot the device """ - subprocess.Popen(["sudo", "shutdown", "-r", "now"]) + p = subprocess.Popen( + ["sudo", "shutdown", "-r", "now"], + stderr=subprocess.PIPE, + stdout=subprocess.PIPE, + ) - return "{}", 201 + out, err = p.communicate() + return {"out": out, "err": err}, 201