Skip to main content

Challenge

Merging rule branches using the Merge pipeline

7 Tasks

15 mins

Visible to all users
Beginner DevOps English

Scenario

You are the PegaGP Release Manager and an Application Developer for the PegaGP application.

As the Release Manager, you are responsible for managing the application merge and deployment pipelines with the help of the Deployment Manager. You have an Orchestrator instance on which you manage the pipelines.

As a PegaGP application developer, you are responsible for addressing feature requests and bug fixes while practicing continuous integration (CI).

As the Release Manager, you must address the following tasks:

  1. Create a Merge pipeline for PegaGP developers to submit the branch for merge and receive early feedback.
  2. Set up the Development system for the PegaGP Application Developer.
  3. Configure the Merge pipeline to continuously deploy application changes to a Release pipeline on every successful merge.

As the PegaGP Application Developer, you must address the following tasks:

  1. Complete the assigned feature request by creating a branch and then developing the changes on the branch.
  2. Submit a branch for merge and track the progress of the merge.

The following table provides the credentials you need to complete the challenge.

Role

User name

Password

PGP Application Developer PGPDeveloper rules123!

Release Administrator

DMReleaseAdmin

rules123!

Follow the instructions to complete the process of creating a Merge pipeline and interacting with the Merge wizard.

You must initiate your own Pega instance to complete this Challenge.

Initialization may take up to 5 minutes so please be patient.

Detailed Tasks

1 Set up your development system for a merge

As the PegaGP Application Developer, you have a new Development system to support development activities on the PegaGP application. The PegaGP Release Manager must configure the system to set up the development system with Continuous Integration (CI) features.

To complete the task as the PegaGP Release Manager, perform the following steps:

  1. Log in to Deployment Manager Studio as the PegaGP Release Manager with User name DMReleaseAdmin and Password rules123!
  2. In the navigation pane of Deployment Manager, click the user icon, and then select Switch to Dev Studio to access Dev Studio.
  3. In the header of Dev Studio, in the search text field, enter OrchestratorURL.
  4. In the list of search results, click Dynamic System Settings (DSS) to open the OrchestratorURL Dynamic System Setting.
  5. In the OrchestratorURL DSS, on the Settings tab, in the Value field, enter the Deployment Manager URL (use the current instance URL on your browser).
  6. Click Save to save the changes to the OrchestratorURL DSS.
  7. In the lower left, click the user icon, and then select Log off to exit Dev Studio.

Your development system now has the configuration that is required to enable merge with a Merge pipeline.

2 Create a merge pipeline

To support the development of a minor feature enhancement on version 8 of the PegaGP application, as the PegaGP Release Manager, you need to create a Merge pipeline to merge Development branches into the system of record (SOR). 

To create the new Merge pipeline, perform the following steps:

  1. Log in to Deployment Manager as Release Manager with User name DMReleaseAdmin and Password rules123!
  2. In the upper right, click New > Merge pipeline to create a Merge pipeline for PegaGP application development.
     
    Image depicts the Merge pipeline option on clicking the New button on the Deployment Manager portal.
  3. On the Application Details tab, in the Application details section, specify the environment from where the application is packaged.
    1. In the Application packaging environment field, enter https://tumqbidx.pegacea.net/prweb.
    2. In the Authentication profile list, enter or select DMAppAdmin.
      Application packaging environment in new deployment pipeline
    3. In the Application details, specify the application details for the PegaGP application.
      • In the Application field, enter PegaGP.
      • In the Version field, enter 8.
      • In the Access group field, enter PegaGP:Administrators.
      • In the Pipeline name field, enter PegaGP_Merge8.
         
        Image depicts the information that the user must input on the Application details screen.
           
  4. In Merge policy section, select New ruleset version as the target ruleset.
  5. In the password field, enter rules123!
     
    Image depicts the New ruleset version option which the user must select in the Merge policy.
  6. Click Next to proceed to the Environment Details tab.
  7. In the Artifact management section, in the Development repository, enter or select DMFilesystem.
  8. Click Next to view and review the details in the Model Pipeline tab.
  9. On the Run pega units on branch task, click the More icon, and then select Delete to remove the task. 
    Note: Running a PegaUnits test is out of scope of this challenge
  10. Click Create to create the Merge pipeline and display the Run Diagnostics prompt.
  11. Click Run Diagnostics to validate the health of the new merge pipeline.
Note: Information for the product rule is unnecessary. You can ignore the error that occurs due to the product rule.
  1. In the lower left, click the user icon, and then select Log off to exit Deployment Manager.

3 Create a branch and complete the development assignment

As the PegaGP Application Developer, you need to add a property that represents whether a person is dependent. For this task, you create a branch to manage the Development work.

To create a branch, perform the following steps:

  1. Log in to the Dev Studio as the Developer with User name PGPDeveloper and Password rules123!
    The PGPDevLayer application is displayed, which is the Development application that is built to follow the recommended Application layer structure.
  2. In the navigation pane of Dev Studio, click App to open the App Explorer.
  3. In the App Explorer, click the Branches tab to access the branch list.
  4. On the Branches tab, right-click PGPDevLayer, and then select Create branch to open the Create branch dialog box.
     
    Image depicts the Create branch option on clicking App on the navigation pane.
  5. In the Create branch dialog box, in the Branch name field, enter TaskforChallenge.
  6. Click Submit to create the branch. 

The branch is now ready to proceed with the required change.

As the PegaGP Application Developer, you must create an IsPersonDependent property in the PGPDevLayer class.

  1. In the App Explorer, click the down arrow to access the Create menu.
  2. Click Create > Data Model > Property to create a property to hold the information if the current person is dependent.
     
    Image depicts how to create a branch and complete the bug fix (Developer)
  3. In the Label field, enter IsPersonDependent.
  4. In the Context section, complete the following details:
    • Ensure that the Development branch points to TaskforChallenge.
    • Select Pega Government Platform.
    • In the Apply to field, enter or select PegaPS-Work-Entity-Person-Add.
    • In the Add to ruleset field, select PegaPGP.
       
      Image depicts the details to be entered in the Create property screen
  5. Click Create and open to define the property.
  6. Click Save to save the property.
  7. In the App Explorer, on the Branches tab, click TaskforChallenge to view the branch.
  8. In the upper right, click Actions > Refresh to view the property on the Branch: TaskforChallenge page.

4 Merge a branch with the Merge Branch wizard

As the PegaGP Application Developer, you need to submit the TaskforChallenge development rule branch for merge. You use the Merge Branches wizard to review the changes in a branch and merge the branch to the target PegaGP application.

  1. On the Branch: TaskforChallenge page, in the upper right, click Actions > Merge to open the Merge branch dialog box.
  2. In the Merge branch dialog box, click Proceed to access the Merge Branch wizard.
  3. In the Merge Branch wizard, click Merge to display the status of the merge.
     
    Clicking Merge on the Merge wizard displays the status of the Merge.
     
  4. In the lower left, click the user icon, and then select Log off to exit Deployment Manager.

 

    5 Optional: View status of merge as the Release Manager

    You can also view the status of the Merge in Deployment Manager, log in to the Deployment Manager as the Release Manager. 

    1. Log in to Deployment Manager as the Release Manager with User name  DMReleaseAdmin and Password rules123!
    2. In the navigation pane of Deployment Manager, click Pipelines to open the Application Pipelines dashboard.
    3. On the Application Pipelines dashboard, click PegaGP_Merge8 to open the pipeline.
    4. On the pipeline dashboard, expand the Deployment History section.
    5. In the Deployment History section, click View Report to open the Deployment Report.
    6. On the Deployment Report, review the deployment timeline.
    The image depicts the View Report page which displays on clicking the Deployment History tab on the Merge pipeline page.

    6 Release your changes on a successful merge

    As a PegaGP Release Manager, you are required to enable the deployment of every successful merge to a Deployment pipeline. The Merge pipeline needs to configure the trigger of a Deployment pipeline after the completion of the Merge task.

    Note: Ensure that you obtain the Pipeline ID from the target pipeline and use it in the Trigger deployment task.
    1. Log in to Deployment Manager as the Release Manager with User name  DMReleaseAdmin and Password rules123!
    2. In the navigation pane of Deployment Manager, click Pipelines to open the Application Pipelines dashboard.
    3. On the Application Pipelines dashboard, click PegaGP_Release_85 to open the Deployment pipeline: PegaGP_Release_85 status page.
    4. On the Deployment pipeline: PegaGP_Release_85 status page, in the upper right, in the PipelineID field, copy Pipeline-RV19H.
    5. On the status page, click the Back arrow to return to the Application Pipelines dashboard.
    6. Click PegaGP_Merge8 to open the pipeline.
    7. On the upper right, click Actions > Edit pipeline to edit the pipeline.
    8. On the Pipeline model tab, in the Development stage, click TASK > Trigger deployment to add a new task.
       
      Image depicts adding the Trigger deployment Task to the Development stage.
    9. Click Select.
    10. In the Pipeline ID field, enter Pipeline-RV19H.
       
      Image depicts Adding the target Pipeline ID to the Trigger deployment task on the Merge pipeline
       
    11. Click Save.

    Now, any successful merge request triggers a Deployment pipeline.

    7 Validate continuous deployment triggered due to branch merge

    As a PegaGP Application Developer, you need to submit the rule branch (ValidateContinuousDeployment) for the merge with the Merge Branch wizard. Review the application changes before the merge. On a successful merge, a Deployment pipeline is triggered.

    Note:  Complete task 3 and task 4 before proceeding with the validation.

    As the PegaGP Release Manager, you need to validate if a Continuous Deployment (CD) is triggered due to the branch merge by the PegaGP Application Developer. You can also view the Merge status. Perform the following steps to complete this task:

    1. On the Application Pipelines dashboard, click the PegaGP_Merge8 pipeline.
    2. Confirm that the Trigger deployment task is displayed in the list of tasks that are executing.
       
      Trigger Deployment task for the Merge pipeline.png
    3. In the Deployment History section, click View Report to open the Deployment Report.
    4. In the Deployment Report, on the Timeline tab, confirm that the Trigger deployment task completed.
       
      Image depicts the Deployment report-Trigger Deployment task completed
    5. In the navigation pane of Deployment Manager, click Pipelines to open the Application Pipelines dashboard.
    6. On the Application Pipelines dashboard, click PegaGP_Release_85 to open the Deployment pipeline: PegaGP_Release_85 status page.
    7. On the Deployment pipeline: PegaGP_Release_85 status page, in the Deployment History section, confirm that the description of the latest deployment indicates that the Merge pipeline (PegaGP_Merge8) triggered the most recent deployment.
       
      Deployment pipeline: PegaGP_Release_85

    This Challenge is to practice what you learned in the following Module:


    Available in the following mission:

    If you are having problems with your training, please review the Pega Academy Support FAQs.

    Did you find this content helpful?

    Want to help us improve this content?

    We'd prefer it if you saw us at our best.

    Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

    Close Deprecation Notice