Don't kill running machines during fly deploy ?

Yes I think those steps should work!

Only additional thing to mention is that whilst your old machines might go into a stopped state because they’re not receiving new connections, you’ll probably still want to delete them at some point otherwise you’re going to have a lot of stale machines hanging around.

Not quite sure what you mean here. We don’t autoscale apps, by which I mean we don’t create or destroy machines for an app automatically. Scaling in this way is left to the user.

We do have auto_stop_machines, auto_start_machines and min_machines_running (see Automatically stop and start Machines · Fly Docs), but these config options work with the number of machines you setup.

If you want autoscaling logic you’d have to implement that at the app level. There’s some discussion on autoscaling in these threads: