@acgourley, I believe the easiest solution to the VM problem would be to start an agent automatically on a VM boot so that when you want to resume your flows, the agent processes are running.
VM set up
This part of the Azure tutorial addresses the issue (works the same way on any Ubuntu VM incl. GCP VM):
https://discourse.prefect.io/t/how-to-spin-up-a-docker-agent-on-azure-vm-a-full-walkthrough/407#ensure-agent-restarts-on-a-vm-reboot-10
Quote from the shared topic:
Run this single line in your terminal:
echo "@reboot root supervisord -c /home/azureuser/supervisord.conf -l /home/azureuser/supervisord.log -u root" >> /etc/crontab
This line will add a crontab that starts your supervisor process every time your VM boots up.
Pause schedule
For the flow itself, you could pause the schedule once you want to put everything on hold and stop the VM.