diff --git a/printer-daemon/entrypoint.sh b/printer-daemon/entrypoint.sh new file mode 100644 index 0000000..97ca34a --- /dev/null +++ b/printer-daemon/entrypoint.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +# Start the processes +/opt/printstack/klippy-env/bin/python /opt/printstack/klipper/klippy/klippy.py -a /tmp/klippy_ud /opt/printstack/data/klipper/printer.cfg & +KLIPPY_PID=$! + +/opt/printstack/moonraker-env/bin/python /opt/printstack/moonraker/moonraker/moonraker.py -c /opt/printstack/data/moonraker/config/moonraker.conf & +MOONRAKER_PID=$! + +# Function to stop both processes +stop_processes() { + kill $KLIPPY_PID + kill $MOONRAKER_PID + sleep 30 + kill -0 $KLIPPY_PID 2>/dev/null && kill -9 $KLIPPY_PID + kill -0 $MOONRAKER_PID 2>/dev/null && kill -9 $MOONRAKER_PID +} + +# Catch signals +trap stop_processes SIGTERM SIGINT + +# Wait for both processes to finish +wait $KLIPPY_PID +wait $MOONRAKER_PID \ No newline at end of file