If you use branches for application development, you can configure merge criteria on the pipeline to receive feedback about branches, such as whether a branch has been reviewed or meets guardrail compliance scores.
If there are no merge conflicts, and merge criteria is met, the branch is merged; the continuous delivery pipeline is then started either manually or automatically.
The workflow of tasks in a branch-based pipeline is as follows:
- One or more developers make changes in their respective branches.
- Merge criteria, which are configured in Deployment Manager, are evaluated when branches are merged.
- Continuous delivery starts in one of the following ways:
- Automatically, after a branch successfully passes the merge criteria. If another continuous delivery workflow is in progress, branches are queued and started after the previous workflow has been completed.
- Manually, if you have multiple development teams and want to start pipelines on a certain schedule.
- During a deployment run, branches are queued for merging and merged after the deployment has been completed.
The following figure describes the workflow in a branch-based environment.
In a distributed, branch-based environment, you can have multiple development systems, and developers author and test the application on remote Pega Platform development systems. They then merge their changes on a development source development, from which they are packaged and moved in the Deployment Manager workflow.
The following figure describes the workflow in a distributed, branch-based environment.