Using Deployment Manager 4.2.x
Use Deployment Manager to create continuous integration and delivery (CI/CD) pipelines, which automate tasks so that you can quickly deploy high-quality software to production.
On the orchestration server, release managers use the DevOps landing page to configure CI/CD pipelines for their Pega Platform™ applications. The landing page displays all the running and queued application deployments, branches that are to be merged, and reports that provide information about your DevOps environment such as key performance indicators (KPIs).
For more information about using Deployment Manager to configure and use CI/CD pipelines, see the following topics:
- Accessing the Dev Studio portal
- Starting Deployment Manager
- Roles and users
- Configuring an application pipeline
- Accessing systems in your pipeline
- Manually starting a deployment
- Starting a deployment in a branch-based environment
- Starting a deployment in a distributed, branch-based environment
- Publishing application changes in App Studio
- Schema changes in application packages
- Completing or rejecting a manual step in a deployment
- Managing aged updates
- Pausing a deployment
- Stopping a deployment
- Performing actions on a deployment with errors
- Diagnosing a pipeline
- Viewing merge requests
- Viewing deployment logs
- Viewing deployment reports
- Viewing reports for all deployments
- Deleting an application pipeline
- Viewing, downloading and deleting application packages in repositories
Accessing the Dev Studio portal
Deployment Manager provides a dedicated portal from which you can access features. From within Deployment Manager, when you configure pipeline details, you can open, modify, and create repositories and authentication profiles in Dev Studio if you have permissions to use the Dev Studio portal.
To add the Dev Studio portal to the access group of the users who can configure repositories and authentication profiles, complete the following steps:
- In Dev Studio, click Configure > Org & Security > Groups & Roles > Access Groups.
- Click the access group that you want to configure.
- In the Edit Access Group rule form, on the Definition tab, in the Available Portals field, click Add portal.
- In the Name field, press the Down Arrow key and select Developer.
- Save the rule form.
Starting Deployment Manager
Deployment Manager provides a dedicated portal from which you can access features. Depending on your permissions, you log in to either Deployment Manager or Dev Studio. To start Deployment Manager from Dev Studio, in the header, click Launch > Deployment Manager.
Roles and users
Deployment Manager provides two default roles, which you cannot modify or delete, that define privileges for super administrators and application administrators. Privileges for super administrators are applied across all applications, and privileges for application administrators are applied to specific applications.
Super administrators can also add roles and specify the privileges to assign to them. Super administrators and application administrators can add users and assign them access to the applications that they manage. By defining roles and users, you can manage which users can access Deployment Manager and which features they can access. For example, you can create a role that does not permit users to delete pipelines for a specific application.
For more information, see the following topics:
- Using roles and privileges by creating a dynamic system setting
- Adding and modifying roles
- Adding users and specifying their roles
- Modifying user roles and privileges
- Modifying your user details and password
- Deleting users
Using roles and privileges by creating a dynamic system setting
To use roles and privileges, you must first create the EnableAttributeBasedSecurity dynamic system setting.
- In Dev Studio, click Create > SysAdmin > Dynamic System Settings.
- In the Short Description field, enter a short description.
- In the Owning Ruleset field, enter Pega-RulesEngine.
- In the Setting Purpose field, enter EnableAttributeBasedSecurity.
- Click Create and open.
- On the Settings tab, in the value field, enter true.
- Click Save.
Adding and modifying roles
If you are a super administrator, you can add and modify roles.
- In the Navigation pane, click Users, and then click Roles and privileges.
- Do one of the following actions:
- To add a role, Click Add role.
- To modify a role, click Edit.
- In the Name field, enter a name for the role.
- Select the privileges that you want to assign to the role.
- Click Submit.
Adding users and specifying their roles
If you are a super administrator or application administrator, you can add users to Deployment Manager and specify their roles.
Only super administrators can create other super administrators or application administrators who can access one or more applications. Application administrators can create other application administrators for their the applications that they manage.
- In the Navigation pane, click Users, and then click People.
- On the People page, click Add user.
- In the Add user dialog box, click the User field, do one of the following actions:
- Press the Down Arrow key and select the user that you want to add.
- Enter an email address.
- Click Add.
- From the Role list, select the role to assign to the user.
- Optional: If you selected the App admin role or a custom role, in the Applications field, enter the application name that the user can access.
- Click Send invite to send an email, which contains the user name and randomly-generated password for the user to log in to Deployment Manager with, to the user.
Modifying user roles and privileges
Super administrators can give other users super administrative privileges or assign them as application administrators to any application. Application administrators can assign other users as application administrator for the applications that they manage.
- In the Navigation pane, click Users, and then click People.
- On the People page, click the user.
- In the Roles and privileges section, modify user role and applications that they can access, as appropriate.
- Click Save.
Modifying your user details and password
You can modify your own user details, such as first and last name, and you can change your password.
- In the Navigation pane, click Users, and then click People.
- On the People page, click your user name.
- In the Personal details section, modify your name, email address, and phone number, as appropriate.
- To change your password:
- Click Update password.
- In the Change operator ID dialog box, enter your new password, reenter it to confirm it, and then click Submit.
- Click Save.
Deleting users
If you are a super administrator or application administrator, you can delete users for the applications that you manage.
- In the Navigation pane, click Users, and then click People.
- On the People page, click the Delete icon for the user that you want to delete.
Configuring an application pipeline
When you add a pipeline, you specify merge criteria and configure stages and steps in the continuous delivery workflow. For example, you can specify that a branch must be peer-reviewed before it can be merged, and you can specify that Pega unit tests must be run after a branch is merged and is in the QA stage of the pipeline.
You can create multiple pipelines for one version of an application. For example, you can use multiple pipelines in the following scenarios:
- To move a deployment to production separately from the rest of the pipeline. You can then create a pipeline that has only a production stage or development and production stages.
- To use parallel development and hotfix life cycles for your application.
For more information, see the following topics:
- Adding a pipeline on Pega Cloud
- Adding a pipeline on premises
- Modifying application details
- Modifying URLs and authentication profiles
- Modifying development and production repositories
- Specifying Jenkins server information
- Specifying merge options for branches
- Modifying stages and tasks in the pipeline
Adding a pipeline on Pega Cloud
To add a pipeline on Pega Cloud, perform the following steps:
- Click Pipelines.
- Click New.
- Specify the details of the application for which you are creating the pipeline.
- Optional: If you want to change the URL of your development system, which is populated by default with your development system URL, in the Development environment field, press the Down Arrow key and select the URL. This is the system on which the product rule that defines the application package that moves through the repository is located.
- In the Application field, press the Down Arrow key and select the name of the application.
- In the Version field, press the Down Arrow key and select the application version.
- In the Access group field, press the Down Arrow key and select the access group for which pipeline tasks are run. This access group must be present on all the candidate systems and have at least the sysadmin4 role.
- In the Pipeline name field, enter the name of the pipeline. This name must be unique.
- Click Create.
The system adds tasks, which you cannot delete, to the pipeline that are required to successfully run a workflow, for example, Deploy and Generate Artifact. For Pega Cloud, it also adds mandatory tasks that must be run on the pipeline, for example, the Check guardrail compliance task and Verify security checklist task.
- Optional: Add tasks that you want to perform on your pipeline, such as Pega unit testing. For more information, see Modifying stages and tasks in the pipeline.
Adding a pipeline on premises
To add a pipeline on premises, complete the following steps:
- Click Pipelines.
- Click .
- Specify the details of the application for which you are creating the pipeline.
- In the Development environment field, enter the URL of the development system. This is the system on which the product rule that defines the application package that moves through the repository is located.
- In the Application field, press the Down Arrow key and select the name of the application.
- In the Version field, press the Down Arrow key and select the application version.
- In the Access group field, press the Down Arrow key and select the access group for which pipeline tasks are run. This access group must be present on all the candidate systems and have at least the sysadmin4 role.
- In the Pipeline name field, enter the name of the pipeline. This name must be unique.
- In the Product rule field, enter the name of the product rule that defines the contents of the application.
- In the Version field, enter the product rule version.
- Optional: If the application depends on other applications, in the Dependencies section, add those applications.
- Click Dependencies.
- Click Add.
- In the Application name field, press the Down Arrow key and select the application name.
- In the Application version field, press the Down Arrow key and select the application version.
- In the Repository name field, press the Down Arrow key and select the repository that contains the production-ready artifact of the dependent application. If you want the latest artifact of the dependent application to be automatically populated, ensure that the repository that contains the production-ready artifact of the dependent application is configured to support file updates.
- In the Artifact name field, press the Down Arrow key and select the artifact.
For more information about dependent applications, see Listing product dependencies.
- Click Next.
- In the Environment details section, in the Stages section, specify the URL of each candidate system and the authentication profile that each system uses to communicate with the orchestration system.
- In the Environments field for the system, press the Down Arrow key and select the URL of the system.
- Optional: If you are using your own authentication profiles, in the Authentication field for the system, press the Down Arrow key and select the authentication profile that you want to communicate from the orchestration server to the system.
By default, the fields are populated with the DMAppAdmin authentication profile.
- In theArtifact management section, specify the development and production repositories through which the product rule that contains application contents moves through the pipeline.
- In the Development repository field, press the Down Arrow key and select the development repository.
- In the Production repository field, press the Down Arrow key and select the production repository.
- Optional: In the External orchestrationserver section, if you are using a Jenkins step in a pipeline, specify Jenkins details.
- In the URLfield, enter the URL of the Jenkins server.
- In the Authentication profile field, press the Down Arrow key and select the authentication profile on the orchestration server that specifies the Jenkins credentials to use for Jenkins jobs.
- Click Next.
- Specify if you are using branches in your application.
- Do one of the following actions:
- If you are not using branches, click the No radio button.
- If you are using branches:
- Click the Yes radio button.
- Do one of the following actions:
- To merge branches into the highest existing ruleset in the application, click .
- To merge branches into a new ruleset, click .
- In the Password field, enter the password that locks the rulesets on the development system.
- Do one of the following actions:
- Click Next.
The system adds tasks, which you cannot delete, to the pipeline that are required to successfully run a workflow, for example, Deploy and Generate Artifact. The system also adds other tasks to enforce best practices such as Check guardrail compliance and Verify security checklist.
- Optional: In the Merge criteria pane, specify tasks that must be completed before a branch can be merged in the pipeline.
- Click Add task.
- Specify the task that you want to perform.
- To specify that a branch must meet a compliance score before it can be merged:
- From the Task list, select Check guardrail compliance.
- In the Weighted compliance score field, enter the minimum required compliance score.
- Click Submit. For more information about compliance scores, see Compliance score logic.
- To specify that a branch must be reviewed before it can be merged:
- From the Task list, selectCheck review status.
- Click Submit. For more information about branch reviews, see Branch reviews.
- To run Pega unit tests on the branches for the pipeline application or for an application that is associated with an access group before it can be merged:
- From the Task list, select Pega unit testing.
- Optional: To run all the Pega unit tests for an application that is associated with an access group, in the Access Group field, enter the access group.
- Click Submit. For more information about creating Pega unit tests, seeCreating Pega unit test cases.
- To specify that a branch must meet a compliance score before it can be merged:
- Optional: To start a deployment automatically when a branch is merged, click the Trigger deployment on merge check box.Do not select this check box if you want to manually start deployments. For more information, see Manually starting a deployment.
- Optional: Clear a check box for a deployment life cycle stage to skip it.
- Optional: In the Continuous Deployment section pane, specify the tasks to be performed during each stage of the pipeline.
- Do one of the following actions:
- Click a manually added task, click the Moreicon, and then click either Add task above or Add task below.
- Click Add task in the stage.
- From the Task list, select the task that you want to perform.
- To run Pega unit tests either for the pipeline application or for an application that is associated with an access group, select Pega unit testing:
- Optional: Perform one of the following actions:
- To run all the Pega unit tests that are in a Pega unit suite for the pipeline application, in the Test Suite ID field, enter the pxInsName of the test suite. You can find this value in the XML document that comprises the test suite by clicking, in Pega Platform, Actions > XML on the Edit Test Suite form. If you do not specify a test suite, all the Pega unit tests for the pipeline application are run.
- To run all the Pega unit tests for an application that is associated with an access group, in the Access Group field, enter the access group. For more information about creating Pega unit tests, seeCreating Pega unit test cases.
- Click Submit.
- Optional: Perform one of the following actions:
- To run a Jenkins job that you have configured, select Jenkins.
- In the Job name field, enter the name of the Jenkins job (which is the name of the Jenkins deployment) that you want to run.
- In the Token field, enter the Jenkins authentication token.
- In the Parameters field, enter parameters, if any, to send to the Jenkins job. Separate multiple parameters with a comma.
- Click Submit.
- To add a manual step that a user must perform in the pipeline, select Manual.
- In the Job name field, enter text that describes the action that you want the user to take.
- In the Assigned to field, press the Down Arrow key and select the operator ID to assign the task to.
- To specify that the application must meet a compliance score, select Check guardrail compliance.
- In the Weighted compliance score field, enter the minimum required compliance score.
- Click Submit.
- To specify that all the tasks in the Application Security Checklist must be performed so that the pipeline can comply with security best practices, select Verify security checklist, and then click Submit. You must log in to the system for which this task is configured, and then mark all the tasks in the Application Security checklist as completed for the pipeline application. For more information about completing the checklist, see Preparing your application for secure deployment.
- To start a test coverage session at the application level, select Enable test coverage, and then click . Starting and stopping test coverage generates a report that identifies the executable rules in your application that are either covered or not covered by tests.
- To stop the test coverage session, select Validate test coverage, and then click . Add this task below the Start test coverage task on the same system. You must add this task to stop a test coverage session if you used the Enable test coverage task. For more information about application-level coverage reports, see Generating an application-level test coverage report.
- To run a Pega scenario test, select Run Pega scenario tests.
- In the User name field, enter the user name for the Pega Platform instance on which you are running Pega scenario tests. If this value contains any special characters, enclose the special characters with double quotes.
- In the Password field, enter the Pega Platform password.
- From the Test Service Provider field, select the browser that you are using to run the Pega scenario tests in the pipeline.
- In the Provider auth name field, enter the auth name that you you use to log in to the test service provider.
- In the Provider auth key field, enter the key for the test service provider.
- Click Submit. For more information about scenario tests, see Creating a scenario test.
- To refresh the Application Quality dashboard, which provides information about the health of your application, on the candidate system, select Refresh application quality, and then click Submit. Add this task after you have run Pega unit tasks, checked guardrail compliance, run Pega scenario tests, and started and stopped test coverage.
- Optional: To modify the Approve for production task, which is added to the stage before production and which you use so that a user must approve application changes before they are sent to production, do the following actions:
- Click the Info icon.
- In the Job name field, enter a name for the task.
- In the Assign to field, press the Down Arrow key and select the user who approves the application for production. An email is sent to this user, who can approve or reject application changes from within the email.
- Click Submit.
- To run Pega unit tests either for the pipeline application or for an application that is associated with an access group, select Pega unit testing:
- Do one of the following actions:
- Click Finish.
Modifying application details
You can modify application details, such as the product rule that defines the content of the application that moves through the pipeline.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Actions > Pipeline settings.
- Click Application details.
- Optional: In the Development environment field, enter the URL of the development system, which is the system on which the product rule that defines the application package that moves through the repository is located.
- Optional: In the Version field, press the Down Arrow key and select the application version.
- Optional: In the Product rule field, enter the product rule that defines the contents of the application.
- Optional: In the Version field, enter the product rule version.
- Optional: If the application depends on other applications, in the Dependencies section, add those applications.
- Click Add.
- In the Application name field, press the Down Arrow key and select the application name.
- In the Application version field, press the Down Arrow key and select the application version.
- In the Repository name field, press the Down Arrow key and select the repository that contains the production-ready artifact of the dependent application. If you want the latest artifact of the dependent application to be automatically populated, ensure that the repository that contains the production-ready artifact of the dependent application is configured to support file updates.
- In the Artifact name field, press the Down Arrow key and select the artifact.
For more information about dependent applications, see Listing product dependencies.
Modifying URLs and authentication profiles
You can modify the URLs of your development and candidate systems and the authentication profiles that are used to communicate between those systems and the orchestration server.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Actions > Pipeline settings.
- Click Deployment stages.
- In the Environments field for the system, press the Down Arrow key and select the URL of the system.
- In the Authentication field for the system, press the Down Arrow key and select the authentication profile that you want to communicate from the orchestration server to the system.
- Click Save.
Modifying development and production repositories
You can modify the development and production repositories through which the product rule that contains application contents moves through the pipeline. All the generated artifacts are archived in the Development repository, and all the production-ready artifacts are archived in the Production repository.
You do not need to configure repositories if you are using Pega Cloud but can use different repositories other than the default ones that are provided.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Actions > Pipeline settings.
- Click Artifact Management.
- Do one of the following actions to select a repository:
- If you are using Deployment Manager on premises, or on Pega Cloud with default repositories, complete the following tasks:
- In the Application repository section, in the Development repository field, press the Down Arrow key and select the development repository
- In the Production repository field, press the Down Arrow key and select the production repository.
- If you are using Deployment Manager on Pega Cloud and want to use different repositories other than the default repositories, complete the following tasks:
- In the Artifact repository section, click Yes.
- In the Development repository field, press the Down Arrow key and select the development repository.
- In the Production repository field, press the Down Arrow key and select the production repository.
- If you are using Deployment Manager on premises, or on Pega Cloud with default repositories, complete the following tasks:
- Click Save.
Specifying Jenkins server information
If you are using a Jenkins step, specify details about the Jenkins server such as its URL.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Actions > Pipeline settings.
- Click External orchestration server.
- In the URL field, enter the URL of the Jenkins server.
- In the Authentication profile field, press the Down Arrow key and select the authentication profile on the orchestration server that specifies the Jenkins credentials to use for Jenkins jobs.
- Click Save.
Specifying merge options for branches
If you are using branches in your application, specify options for merging branches into the base application.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Actions > Pipeline settings.
- Click Merge policy.
- Specify if you are using branches in your application.
- Do one of the following actions:
- If you are not using branches, click the No radio button.
- If you are using branches, do the following actions:
- Click Yes.
- Do one of the following actions:
- To merge branches into the highest existing ruleset in the application, click .
- To merge branches into a new ruleset, click .
- In the Password field, enter the password that locks the rulesets on the development system.
- Do one of the following actions:
- Click Save.
Modifying stages and tasks in the pipeline
You can modify the stages and the tasks that are performed in each stage of the pipeline. For example, you can skip a stage or add tasks such as Pega unit testing to be done on the QA stage.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Pipeline model.
- Optional: In the Merge criteria pane, specify tasks that must be completed before a branch can be merged in the pipeline.
- Click Add task.
- Specify the task that you want to perform.
- To run Pega unit tests on the branches for the pipeline application or for an application that is associated with an access group before it can be merged:
- From the Task list, select Pega unit testing.
Optional:To run all the Pega unit tests for an application that is associated with an access group, in the Access Group field, enter the access group. For more information about creating Pega unit tests, seeCreating Pega unit test cases.
- Click Submit.
- To specify that a branch must meet a compliance score before it can be merged:
- From the Task list, select Check guardrail compliance.
- In the Weighted compliance score field, enter the minimum required compliance score.
- Click Submit. For more information about compliance scores, see Compliance score logic.
- To specify that a branch must be reviewed before it can be merged:
- From the Task list, selectCheck review status.
- Click Submit. For more information about branch reviews, see Branch reviews.
- To run Pega unit tests on the branches for the pipeline application or for an application that is associated with an access group before it can be merged:
- Optional: To start a deployment automatically when a branch is merged, click the Trigger deployment on merge check box. Do not select this check box if you want to manually start a deployment. For more information, see Manually starting a deployment.
- Optional: Clear a check box for a deployment life cycle stage to skip it.
- Optional: In the Continuous Deployment section pane, specify the tasks to be performed during each stage of the pipeline.
- Do one of the following actions:
- Click a manually added task, click the More icon, and then click either Add task above or Add task below to add the task above or below the existing task.
- Click Add task in the stage.
- From the Task list, select the task that you want to perform.
- To run Pega unit tests either for the pipeline application or for an application that is associated with an access group, select Pega unit testing.
- Optionally, perform one of the following actions:
- To run all the Pega unit tests that are in a Pega unit suite for the pipeline application, in the Test Suite ID field, enter the pxInsName of the test suite You can find this value in the XML document that comprises the test suite by clicking, in Pega Platform, Actions > XML on the Edit Test Suite form. If you do not specify a test suite, all the Pega unit tests for the pipeline application are run.
- To run all the Pega unit tests for an application that is associated with an access group, in the Access Group field, enter the access group. For more information about creating Pega unit tests, see Creating Pega unit test cases.
- Click Submit.
- Optionally, perform one of the following actions:
- To run a Jenkins job that you have configured, select Jenkins.
- In the Job name field, enter the name of the Jenkins job (which is the name of the Jenkins deployment) that you want to run.
- In the Token field, enter the Jenkins authentication token.
- In the Parameters field, enter parameters, if any, to send to the Jenkins job. Separate multiple parameters with a comma.
- Click Submit.
- To add a manual step that a user must perform in the pipeline, select Manual.
- In the Job name field, enter text that describes the action that you want the user to take.
- In the Assigned to field, press the Down Arrow key and select the operator ID to assign the task to.
- Click Submit.
- To specify that the application must meet a compliance score, select Check guardrail compliance.
- In the Weighted compliance score field, enter the minimum required compliance score.
- Click Submit. For more information about compliance scores, see Compliance score logic.
- To specify that all the tasks in the Application Security Checklist must be performed so that the pipeline can comply with security best practices, select Verify security checklist, and then click Submit. You must log in to the system for which this task is configured, and then mark all the tasks in the Application Security checklist as completed for the pipeline application. For more information about completing the checklist, see Preparing your application for secure deployment.
- Optional: To modify the Approve for production task, which is added to the stage before production and which you use so that a user must approve application changes before they are sent to production, do the following actions:
- Click the Infoicon.
- In the Job name field, enter a name for the task.
- In the Assign to field, press the Down Arrow key and select the user who approves the application for production. An email is sent to this user, who can approve or reject application changes from within the email.
- Click Submit.
- To run a scenario test, select Run Pega scenario tests.
- In the User name field, enter the user name for the Pega Platform instance on which you are running Pega scenario tests. If this value contains any special characters, enclose the special characters with double quotes.
- In the Password field, enter the Pega Platform password.
- From the Test Service Provider field, select the browser that you are using to run the Pega scenario tests in the pipeline.
- In the Provider auth name field, enter the auth name that you you use to log in to the test service provider.
- In the Provider auth key field, enter the key for the test service provider.
- Click Submit. For more information about scenario tests, see Creating a scenario test.
- To start a test coverage session at the application level, select Enable test coverage, and then click . Starting and stopping test coverage generates a report that identifies the executable rules in your application that are either covered or not covered by tests.
- To stop the test coverage session, select Validate test coverage, and then click . Add this task below the Start test coverage task on the same system. You must add this task to stop a test coverage session if you used the Enable test coverage task. For more information about application-level coverage reports, see Generating an application-level test coverage report.
- To refresh the Application Quality dashboard, which provides information about the health of your application, on the candidate system, select Refresh application quality, and then click Submit. Add this task after you have run Pega unit tasks, checked guardrail compliance, run scenario tests, and started and stopped test coverage.
- To run Pega unit tests either for the pipeline application or for an application that is associated with an access group, select Pega unit testing.
- Do one of the following actions:
- Click Finish.
Accessing systems in your pipeline
You can open the systems in your pipeline and log in to the Pega Platform instances.
- Optional: If the pipeline is not already open, in the Navigation pane, click Pipelines.
- Click the pop-out arrow for the system that you want to open.
Manually starting a deployment
Start a deployment manually if you are not using branches and are working directly in rulesets.
You can also start a deployment manually if you do not want deployments to start automatically when branches are merged. You must also clear the Trigger deployment on merge check box in the pipeline configuration.
- Do one of the following actions:
- If the pipeline that you want to start is open, click Start deployment.
- Click Pipelines, and then click Start deployment for the pipeline that you want to start.
- In the Start deployment dialog box, start a new deployment or deploy an existing application by completing one of the following actions:
- To start a deployment and deploy a new application package, do the following steps:
- Click .
- In the Deployment name field, enter the name of the deployment.
- Click Deploy.
- To deploy an application package that is on a cloud repository, do the following steps:
- Click .
- In the Deployment name field, enter the name of the deployment.
- In the Select a repository field, press the Down Arrow key and select the repository.
- In the Select an artifact field, press the Down Arrow key and select the application package.
- To start a deployment and deploy a new application package, do the following steps:
- Click Deploy.
Starting a deployment in a branch-based environment
In non-distributed, branch-based environments, you can immediately start a deployment by submitting a branch into a pipeline in the Merge Branches wizard. For more information, see Submitting a branch into a pipeline.
The wizard displays the merge status of branches so that you do not need to open Deployment Manager to view it.
Starting a deployment in a distributed branch-based environment
If you are using Deployment Manager in a distributed, branch-based environment and using multiple pipelines per application, first export the branch to the main development system, and then merge it.
- On the remote development system, package the branch. For more information, see Packaging a branch.
- Export the branch.
- On the main development system, import the branch by using the Import wizard. For more information, see Import wizard landing page.
- On the main development system, start a deployment by using the Merge Branches wizard. For more information, see Submitting a branch into a pipeline. The wizard displays the merge status of branches so that you do not need to open Deployment Manager to view it.
If you are using one pipeline per application, you can publish a branch to start the merge. For more information, see Publishing a branch to a repository.
Publishing application changes in App Studio
You can publish application changes that you make in App Studio to the pipeline. Publishing your changes creates a patch version of the application and starts a deployment. For example, you can change a life cycle, data model, or user interface elements in a screen and submit those changes to systems in the pipeline.
When you publish an application to a stage, your rules are deployed immediately to that system. To allow stakeholders to inspect and verify changes before they are deployed the stage, configure a manual task in on the previous stage. When the pipeline runs, it is paused during a manual step that is assigned to a user, which allows stakeholders to review your changes before they approve the step and resume running the pipeline.
- In the App Studio header, click Publish.
It also displays the application versions that are on each system. The version numbers are taken from the number at the end of each application deployment name in Deployment Manager. For example, if a deployment has a name of "MyNewApp:01_01_75", the dialog box displays "v75". You can view application version numbers by clickingSettings > Versions in the navigation panel.
- Submit an application from development to quality assurance or staging in your pipeline by completing the following steps:
- In the dialog box, click either Publish to QA or Publish to staging.
- Optional:To add a comment, which will be published when you submit the application, add a comment in the Publish confirmation dialog box.
- Optional:If Agile Workbench has been configured, associate a bug or user story with the application, in the Associated User stories/Bugs field, press the Down Arrow key and select the bug or user story.
- Click OK.
Each unlocked ruleset version in your application is locked and rolled to the next highest version and is packaged and imported into the system. The amount of time that publishing application changes takes depends on the size of your application.
A new application is also copied from the application that is defined on the pipeline in Deployment Manager. The application patch version is updated to reflect the version of the new rulesets; for example, if the ruleset versions of the patch application are 01-01-15, the application version is updated to be 01.01.15.
In addition, this application is locked and cannot be unlocked. You can use this application to test specific patch versions of your application on quality assurance or staging systems. You can also use it to roll back a deployment.
- Optional: Make changes to your application in the unlocked rulesets, which you can publish again into the pipeline. If an application is already on the system, it is overridden by the new version that you publish.
- Optional:If you configured a manual step, request that stakeholders review and test your changes. After they communicate to you that they have completed testing, you can publish your changes to the next stage in the pipeline.
- Publish the application to the next stage in the pipeline by clicking the link that is displayed. The name of the link is the Job name field of the manual task that is defined on the stage.
Viewing application version information
You can view details about the application versions that were submitted into a pipeline.
- In App Studio, click Turn editing on.
- In the Navigation panel, click Settings > Versions.
Schema changes in application packages
If an application package that is to be deployed on candidate systems contains schema changes, the Pega Platform orchestration server checks the candidate system to verify that you have the required privileges to deploy the schema changes. One of the following results occurs:
- If you have the appropriate privileges, schema changes are automatically applied to the candidate system, the application package is deployed to the candidate system, and the pipeline continues.
- If you do not have the appropriate privileges, Deployment Manager generates an SQL file that lists the schema changes and sends it to your email address. It also creates a manual step, pausing the pipeline, so that you can apply the schema changes. After you complete the step, the pipeline continues. For more information about completing a step, see Completing or rejecting a manual step.
You can also configure settings to automatically deploy schema changes so that you do not have to manually apply them if you do not have the required privileges. For more information, see Configuring settings to automatically deploy schema changes.
Configuring settings to automatically deploy schema changes
You can configure settings to automatically deploy schema changes that are in an application package that is to be deployed on candidate systems. Configure these settings so that you do not have to apply schema changes if you do not have the privileges to deploy them.
- On the orchestration server, in Pega Platform, set the AutoDBSchemaChanges dynamic system setting to true to enable schema changes at the system level.
- In Dev Studio, search for AutoDBSchemaChanges.
- In the dialog box that appears for the search results, click AutoDBSchemaChanges.
- On the Settings tab, in the Value field, enter true.
- Click .
- Add the SchemaImport privilege to your access role to enable schema changes at the user level. For more information, see Specifying privileges for an Access or Role to Object rule.
These settings are applied sequentially. If the AutoDBSchemaChanges dynamic system setting is set to false, you cannot deploy schema changes, even if you have the SchemaImport privilege.
Completing or rejecting a manual step in a deployment
If a manual step is configured on a stage, the deployment pauses when it reaches the step, and you can either complete it or reject it. For example, if a user was assigned a task and completed it, you can complete the task to continue the deployment. Deployment Manager also sends you an email when there is a manual step in the pipeline. You can complete or reject a step either within the pipeline or through email.
Deployment Manager also generates a manual step if there are schema changes in the application package that the release manager must apply. For more information, see Schema changes in application packages.
To complete or reject a manual step within the deployment, do the following steps:
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click one of the following links:
- Complete: Resolve the task so that the deployment continues through the pipeline.
- Reject: Reject the task so that the deployment does not proceed.
To complete or reject a manual step from within an email, click either Accept or Reject.
Managing aged updates
An aged update is a rule or data instance in an application package that is older than an instance that is on a system to which you want to deploy the application package. By being able to import aged updates, skip the import, or manually deploy your application changes, you now have more flexibility in determining the rules that you want in your application and how you want to deploy them.
For example, you can update a dynamic system setting on a quality assurance system, which has an application package that contains the older instance of the dynamic system setting. Before Deployment Manager deploys the package, the system detects that the version of the dynamic system setting on the system is newer than the version in the package and creates a manual step in the pipeline.
To import aged updates:
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Optional: Click View aged updates to view a list of the rules and data instances, which are in the application package, that are older than the instances that are on the system.
- Click the More icon and select one of the following options:
- Click Overwrite aged updates to import the older rule and data instances that are in the application package into the system, which overwrites the newer versions that are on the system.
- Click Skip aged updates to skip the import.
- Click Deploy manually and resume to manually deploy the package from the Import wizard on the system. Deployment Manager does not run the Deploy step on the stage.
Pausing a deployment
When you pause a deployment, the pipeline completes the task that it is running, and stops the deployment at the next step.
To pause a deployment:
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click the pipeline.
- Click .
Stopping a deployment
To stop a deployment:
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click the More icon, and then click Abort.
Performing actions on a deployment that has errors
If a deployment has errors, the pipeline stops processing on it. You can perform actions on it, such as rolling back the deployment or skipping the step on which the error occurred.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click the More icon, and then click one of the following options:
- Resume from current task - Resume running the pipeline from the task.
- Skip current task and continue - Skip the step and continue running the pipeline.
- Rollback - Roll back to an earlier deployment.
- Abort - Stop running the pipeline.
Diagnosing a pipeline
You can diagnose your pipeline to verify that your pipeline is configured properly such as whether the target application and product rule are in the development environment, connectivity between systems and repositories is working, and premerge settings are correctly configured.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click Actions > Diagnose pipeline.
- In the Diagnose application pipeline dialog box, review the errors, if any.
- Optional: To view troubleshooting tips about errors, hover your mouse over the Troubleshooting tips link.
Viewing merge requests
You can view the status of the merge requests for a pipeline. For example, you can see whether a branch was merged in a deployment and when it was merged.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- In the Development stage, click X Merges in queue to view all the branches that are in the queue or for which merge is in progress.
- In the Merge requests ready for deployment dialog box, click View all merge requests to view all the branches that are merged into the pipeline.
Viewing deployment logs
View logs for a deployment to see the completion status of operations, for example, when a deployment is moved to a new stage. You can change the logging level to control which events are displayed in the log. For example, you can change logging levels of your deployment from INFO to DEBUG for troubleshooting purposes. For more information, see Logging Level Settings tool.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Perform one of the following actions:
- To view the log for the current deployment, click the More icon, and then click View logs.
- To view the log for a previous deployment, expand the Deployment History pane and click Logs for the appropriate deployment.
Viewing deployment reports
Deployment reports provide information about a specific deployment. You can view information such as the number of tasks that you configured on a deployment that have been completed and when each task started and ended.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Perform one of the following actions:
- To view the report for the current deployment, click the More icon, and then click View report.
- To view the report for a previous deployment, expand the Deployment History pane and click Reports for the appropriate deployment.
Viewing reports for all deployments
Reports provide a variety of information about all the deployments in your pipeline. You can view the following key performance indicators (KPI):
- Deployment Success - Percentage of deployments that are successfully deployed to production
- Deployment Frequency – Frequency of new deployments to production
- Deployment Speed - Average time taken to deploy to production
- Start frequency - Frequency at which new deployments are triggered
- Failure rate - Average number of failures per deployment
- Merges per day - Average number of branches that are successfully merged per day
To view reports, do the following tasks:
- Do one of the following actions:
- If the pipeline open, Click Actions > View report.
- If a pipeline is not open, in the Navigation pane, click Reports. Next, in the Pipeline field, press the Down Arrow key and select the name of the pipeline for which to view the report.
- Optional: From the list that appears in the top right of the Reports page, select whether you want to view reports for all deployments, the last 20 deployments, or the last 50 deployments.
Deleting an application pipeline
When you delete a pipeline, its associated application packages are not removed from the repositories that the pipeline is configured to use.
- In the Navigation pane, click Pipelines.
- Click the Delete icon for the pipeline that you want to delete.
- Click .
Viewing, downloading, and deleting application packages in repositories
You can view, download, and delete application packages in repositories that are on the orchestration server.
If you are using Deployment Manager on Pega Cloud, application packages that you have deployed to cloud repositories are stored on Pega Cloud. To manage your cloud storage space, you can download and permanently delete the packages.
- Optional: If the pipeline is not open, in the Navigation pane, click Pipelines, and then click the name of the pipeline.
- Click the pipeline for which you want to download or delete packages.
- Click Actions > Browse artifacts.
- Click either Development Repository or Production Repository.
- To download an application package, click the package, and then save it to the appropriate location.
- To delete a package, select the check boxes for the packages that you want to delete and click Delete.