flyctl deploy -c ...
does support Machines (but with caveats): Preview: Deploying applications on Machines with flyctl I’ve used it, and it works (for the most part).
I’d expect Machines to also restart on health-check failures (or restart on any non-zero exit code)?