'DevOps Stages To Deploy

I have a question about how we should perform the deployment of applications through automation (DevOps). I have seen examples where when doing a pull request to the master branch two environments QA and Production are deployed and I have also seen other examples where only deployed to Production and no longer the UAT environment. Is there any good practice that tells you what the ideal scenario is? Personally I see the procedure of double deployment unnecessary when doing the pull to master, because we assume that for this your application previously passed through a quality environment and was tested correctly otherwise it would not be going to master.

I include two images to try to graph more or less what I mean.

Example 1 Example 2
(source: microsoft.com)



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source