Remotely starting automation jobs to perform branch operations and run unit tests

In a continuous integration and delivery (CI/CD) workflow, repositories provide centralized storage for software that is to be tested, released, or deployed. You can start a job remotely from an automation server, such as Jenkins, and use the branches REST and merges REST services to merge branches when you push them from your development system to a Pega repository on a source development system.

Pega Platform can communicate with common repository technologies and also can act as a binary repository. Pega Platform can browse, publish, or fetch artifacts that are created whenever an action creates a RAP file: for example, exporting an application, product, branch, or component into a remote system of record. By starting jobs remotely and using the automation server to detect conflicts and merge branches, your organization can deliver higher-quality software more quickly.

For more information about using branches with repositories, see Using branches with repositories in a continuous integration and delivery pipeline.

After you push a branch to a system of record, your automation server tool runs a job. Your pipeline can detect conflicts before a merge. If there are conflicts, the merge does not proceed. If there are no conflicts, the merge proceeds on the development source system. Your pipeline can run all unit test cases or a test suite to validate the quality of your build.

After a merge is completed, you can rebase the rules on your development system to import the most recently committed rules from your system of record. For more information, see Understanding rule rebasing. In addition, you can configure your pipeline to send emails to users, such as when a job starts or when a conflict is detected.

The following figure displays an example workflow of the pipeline:

Figure: Workflow of a continuous integration pipeline on a development source


Workflow of a continuous integration pipeline on a system of record