diff options
Diffstat (limited to 'backend.py')
| -rw-r--r-- | backend.py | 21 |
1 files changed, 13 insertions, 8 deletions
@@ -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) |
