Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Continuous deployments / deployment previews per Pull Request with Bitbucket

Cyril Wanner 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 comment

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?

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events