I am looking for some feedback on how we can improve our release pipeline in Azure.

We have multiple environments with a corresponding deploy/* branch. Once these deploy branches are updated a release is triggered.

We are trying to implement a workflow to support Trunk Based Development as much as possible. Currently, we do all dev work on main and then cut a release/* branch from main when required.

When a release branch is cut, this will trigger the corresponding stage (RELEASE) in our Azure releases pipeline. This stage workflow would update and promote release/* to the required deploy branches through a bash script (Promote Release...). This in turn triggers the promotion to the corresponding environment. It looks like this:

release/v1.0.0 cut from main

release/v1.0.0 -> deploy/uat, deploy/preprod

deploy/uat -> UAT environment
deploy/preprod -> PREPROD environment

it looks like this in Azure

This works ok, I just don't love the fact we have a branch per environment. I'd like to get some suggestions on how this can be improved and make it more efficient.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.