Why does my app sometimes get deployed to a region that I did not enable?

I’m pretty sure the behavior you’re seeing is related to a known edge-case where a volume is created for an app but is not actually mounted so it doesn’t ‘anchor’ region placement, and so the instance doesn’t have any region constraints and gets placed anywhere.

We’d like to catch this in flyctl and either prevent a deploy from happening in this state, or allow an app with unmounted volumes to instead be constrained by fly regions set. In any case, the current workaround is to either mount any unmounted volume, or delete the volume and use fly regions set to configure region constraints on the app.

2 Likes