What would be a way to setup a separate beta, gamma, prod AWS ECS deployment off of a single master branch?

We currently use Bitbucket cloud with Atlassian Bamboo (self-hosted). Our Scala repos only contain a master branch (not Beta, Gamma, Prod branches). In Atlassian Bamboo we have Beta, Gamma, and Prod deployment configurations that (build and) deploy from our Bitbucket repo’s single master branch. For example, merging to master will will build to version-21, then it can get deployed to the Beta AWS ECS cluster, if working correctly, then to our Gamma ECS cluster, then to our Prod ECS cluster separately. Meaning the Beta ECS cluster could be running a newer version, while the Gamma and Prod clusters run an older version. I am not sure how to go about configuring something similar in CircleCI.

Atlassian Bamboo has this concept of build environments (this is where we have our Beta, Gamma, and Prod build environments, but want to migrate to CircleCI), what would be the CircleCI equivalent?


We are in the process of migrating one of our build and deploy plans from Atlassian Bamboo to CircleCI. Building Scala Play projects, and deploying to AWS ECS.

Have you taken a look at the Manual Approval concept? In this model you would create three types of deploy jobs (Beta, Gamma, Prod). Beta would be automated and if/when you’re ready to promote to Gamma and Prod you would click a button in the CircleCI UI to continue the pipeline.