Hello everyone!
We have several Staging and Production environments, in different regions, and the versions we deploy on each region could be completely different.
In the image below you can find how we want to deploy:

As you can see in the image above, for each version that is built in QA, we want to choose if we want to deploy it in Staging-EU, Staging-US, or Staging-Asia. And then, from that environment, it will go to its corresponding Production environment, in the same region.
Unfortunately, we are struggling to handle something like that with the current implementation of the Bitbucket Pipelines and Deployments, because it forces us to deploy/promote the same version in all Staging environments before going to Production.
In other words, it forces us to deploy in this way: QA -> Staging-EU -> Staging-US -> Staging-Asia -> Prod-EU -> Prod-US -> Prod-Asia.
The only solution we have found is to create a different branch per region: EU, US, ans Asia, and merge from master to those brances. But the solution looks over complicated to me.
Is there a better way to implement this?
Thanks in advance.
Ernesto.