Skip to content

Pull Request Levels

MDCMS can automatically create a Pull Request (PR) in the Git repository as part of the RFP deployment process. A PR is typically used to merge changes from a development branch to a higher-level branch that triggers deployment to QA or production environments. The Pull Request Levels feature allows you to define the layers of Pull Requests necessary to eventually get a feature merged into the production branch.

The actual merge of a Pull Request is performed on the Git server by an authorized user or users after review is complete. The merge can then trigger higher-level CI processing defined in Continuous Integrations.

In MDOpen: Settings → DevOps Settings → Pull Request Levels


Pull Request Level Parameters

Appl

The MDCMS application of an RFP.

Level

The MDCMS level of an RFP.

Repository ID

The Repository ID of the Git repository that the Pull Request Level applies to. Use content-assist to select from defined repositories.

If multiple Repositories are used for a given application and level, a Pull Request Level definition must be created for each Repository.

PR Target Branch

The branch that the Pull Request is targeting. This is typically a higher-level branch than the source branch used for development work. For example, if developers are working in feature branches off of a release branch, the PR Target Branch might be rel-project-task for a lower-level Pull Request and main for the final Pull Request that triggers production deployment.

The target branch name can be a mix of static text and placeholders. Use content-assist to select a specific branch from the list of branches in the repository. For placeholders, position the cursor in the field where the placeholder value should be inserted and then press F7 to select the placeholder from the list.

Crt From Branch

If the target branch doesn't exist yet, MDCMS will automatically create the branch based on the branch name in this parameter.

The Create from branch name can be a mix of static text and placeholders. Use content-assist to select a specific branch from the list of branches in the repository. For placeholders, position the cursor in the field where the placeholder value should be inserted and then press F7 to select the placeholder from the list.

PR Title

The title of the Pull Request. This can be a mix of static text and placeholders. Position the cursor in the field where the placeholder value should be inserted and then press F7 to select the placeholder from the list.


Automated Creation of Pull Requests

When an RFP has completed installation, MDCMS checks if any object requests in the RFP are linked to branches in one or more Git repositories. If so, the Pull Request Levels table is checked to see if a matching definition exists for each distinct application, level and Repository combination. If found, and a Pull Request isn't already open for the source branch/target branch combination, the MDCMS will attempt to create the pull request.

High-Level Logging of the creation attempt is included in the RFP Deployment log and in the is deployed to a level with a Pull Request Level defined, MDCMS automatically creates a Pull Request on the Git server based on the parameters defined for that level. The Pull Request is created after the RFP is submitted, and the title of the Pull Request includes the RFP number for easy reference.