Continuous deployments / deployment previews per Pull Request with Bitbucket

Cyril Wanner
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
March 20, 2018

Hello,

We would like to introduce continuous deployments / deployment previews to improve our workflow for reviewing/testing developed features.

The workflow we have in mind would be the following:

  • A developer creates a new PR in Bitbucket which triggers an action
  • A Docker image gets built for this repository and PR (we have multiple repositories with different requirements)
  • The built Docker image gets deployed to a server on a separate vhost (e.g. my-feature-branch-1234.testing.example.org) where it can get accessed for reviewing/testing the feature before merging the PR
  • Production DB gets cloned into this new environment (if possible with additional migration scripts)
  • Environment gets updated every time the PR gets updated
  • Environment gets deleted/cleaned up once the PR gets merged or declined
  • Everything should be fully automated

 

We searched for some already existing solutions, however we could not find one that matches all our requirements. Either they are only available for github, they don't have the possibility to provide docker images or they don't have a workflow for databases.

So before we start building a custom solution (probably with AWS EC2 and a few custom scripts between AWS and Bitbucket), we would like to know if someone has experience with this and we hope that some Atlassian customers already have something similar included in their workflow.

So our questions would be:

  • Does someone know a service which would meet our requirements out of the box? Maybe there are some less known services or undocumented features of other services..
  • If not, did you build a custom solution for this? Did you have any problems with it?
  • Do you have some other inputs for this workflow?

 

Thank you for your help!

Cyril

1 answer

0 votes
Brendon Parker August 6, 2022

Realize this is several years old. I have a similar desire/requirement. If only the deployments/environments were more dynamic I think that would fit the bill. As it stands I’m thinking I’ll need to standup some fixed/static number of deployments/environments and setup a pipeline for each and have a web hook pick one at random and trigger the corresponding pipeline. 

Did you come up with a better solution?

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events