What I saw
Last night, I sliced a Califlower in Cura, used the "Send to OctoPrint" option to send it to the printer via the OctoPrint Connection plugin (the standard Cura OctoPrint plugin at v3.7.3), made sure the first layer printed fine, and then put my PC to sleep.
That's when I noticed the print had stopped.
What I expected to see
I expected the print to carry on in the background, as I thought the print had already been sent to the OctoPrint 'server'.
It seems that rather than Cura uploading the G-code to OctoPrint (running on a Raspberry Pi 5†, plugged into the printer via USB) telling it to print and then just monitoring progress, it streams the whole G-code in real time, using OctoPrint as a glorified network attached USB serial port, which rather defeats the purpose of having a print 'server' at all‡.
What I tried
I tried setting the option to "Store G-code on the SD card of the printer", but the Note: wasn't kidding when it said this would take a long time. Since there was no option to cancel, I ended up restarting OctoPrint, forcing a disconnect.
What I want to understand
Is there any way to get Cura to upload the G-code to OctoPrint and then tell it to print rather than stream it to the printer?
I would prefer my power efficient Raspberry Pi pushing G-code commands to the printer for hours, not my power hungry gaming PC.
† Specifically a Raspberry Pi 5, running Raspberry Pi OS the from 2023-13-05 Image, fully `apt` upgraded, and running OctoPrint 1.9.3, installed using the recommended `octoprint_deploy` script.
‡ When I send a 50 page document to my networked HP printer, I don't expect that to stop printing after I put my PC to sleep either!
octoprint_deploy
on that. $\endgroup$