It would be cool if we could have an option for the role migrations to be run in steps with human validation. There's so many scenarios where this could come in handy, for example:
*Customers using external DNS, give them time to change DNS config to point at the new server ip without downtime.
*Customers with critical apps that can't be risked downtime due to a bugged migration (role migrations have historically had many various bugs and issues in the past).
*Many more scenarios.
The way I imagine it would work is that the website container and everything is copied over to the new roles, then the process stops, leaving both containers on both locations running/active. The admin or customer can then update their DNS at their leisure and inspect the data in the new role location (customize the host file on their computer in order to view the apps on the new server, verify they work and migration was successful, etc). Once the new role location is verified to be working as expected, then the migration could be resumed to finish (delete the old role location data, etc).
Currently if I want to move a customer's website to a new server and they're mission-critical, I have to move the site to an out-of-cluster server, then delete it in enhance, then add it back in enhance, then migrate it back to enhance.