aboutsummaryrefslogtreecommitdiff
path: root/backend.py
diff options
context:
space:
mode:
Diffstat (limited to 'backend.py')
-rw-r--r--backend.py21
1 files changed, 13 insertions, 8 deletions
diff --git a/backend.py b/backend.py
index 811db4f..66d5bac 100644
--- a/backend.py
+++ b/backend.py
@@ -21,16 +21,21 @@ def print_queue():
if not print_lock.acquire(blocking=False):
print("print queue is already running")
return "print queue busy", 400
- print("printing file(s) in /srv/shares/public/printing")
- path = Path("/srv/shares/public/printing")
- files = [f for f in path.iterdir() if f.is_file()]
+ try:
+ print("printing file(s) in /srv/shares/public/printing")
+ path = Path("/srv/shares/public/printing")
+ files = [f for f in path.iterdir() if f.is_file()]
- for file in files:
- subprocess.run(["lp", "-d", "Canon_G3060", str(file)], check=True)
- subprocess.run(["mv", str(file), "/srv/shares/public/printed"], check=True)
+ for file in files:
+ subprocess.run(["lp", "-d", "Canon_G3060", str(file)], check=True)
+ subprocess.run(["mv", str(file), "/srv/shares/public/printed"], check=True)
- print(f"printed {len(files)} file(s)")
- return f"printed {len(files)} file(s)"
+ print(f"printed {len(files)} file(s)")
+ return f"printed {len(files)} file(s)"
+ except Exception as e:
+ return f"exception: {(str(e))}", 500
+ finally:
+ print_lock.release()
if __name__ == "__main__":
app.run(host="0.0.0.0", port=6732)