Creating and using custom tasks
Deployment Manager supports a range of tasks to support the different application
deployment scenarios for Pega powered applications out-of-the-box. Although comprehensive,
the default task configurations cannot account for every use case for every customer. The
orchestrator-based custom task functionality allows you to create unique tasks specific to
your business needs which can be included in pipelines. Any task not shipped with Deployment
Manager is considered to be a custom task. Common use cases for custom tasks are: At this time, task executions are only supported on the orchestrator environment. It
is possible to create tasks that interact with candidate environments through
service APIs, but this should be done with caution as direct communication between
the orchestrator and the candidate environments will be restricted in the future. A task definition establishes the characteristics of a task including its name,
description, and parameters. The task definition determines how the task is presented in the
Deployment Manager portal and how it should be configured while working with a pipeline
model. The task runtime executes in the background when it has been queued up by an active
deployment. The Deployment Manager agent handles polling active deployments and delegates to
the appropriate task runtime when required. To update the task status to the orchestrator synchronously, create a page of an
integration class PegaDevOps-Int-Task, and call the
Running the task asynchronously requires a callback to update the system on
completion of the task. The implementation contained within the RunTask activity is completely open-ended,
however there are many utilities that hep make the process of implementing a task easier. Use the following steps to run and trace the implementation of your custom tasks in
context: If the task runs successfully when run manually, but encounters an issue when executed by
the job scheduler: This example component demonstrates how to author custom tasks. This is a customized
version of the manual approval tasks included with Deployment Manager, with the parameter
ability allowing users to provide approvals based on their role.Create a task definition
Task definition properties
Property name Data type Purpose TaskType* Text Alphanumeric identifier for the task type (no spaces). Purpose Text Purpose of the task. TaskLabel* Text Enter task label by default which appears in pipeline
model. TaskCategory Text Enter the task category like Package & Deploy, Quality
Metrics, Versioning, Description Text Explain in detail why this task is requires? what is processes?
Etc. Input parameters Page List of class Embed-PegaDevOps-Parameter This list contains input parameter required for task
processing. Output parameters Page List of class Embed-PegaDevOps-Parameter This list contains expected out parameters post task
processing. Supported environment types* Page List of class Embed-PegaDevOps-Parameter This list contains task supported environment templates. Pick
values from PegaDevOps-Data-EnvironmentTemplate class taskIconClass Text Enter an icon class for visibility in the pipeline configuration
for the task. See https://design.pega.com/components-icons for the
icon classes. Implement the task runtime
Parameter Data type TaskPage Page of class PegaDevOps-Int-Task Orchestrator String Posting results to orchestrator synchronously
ResourceUpdateInt
action API activity.Working with the callback
Useful utilities for implementing task runtimes
Debugging tasks
Role based approval
Previous topic Configuring SSO and LDAP Next topic Understanding App Studio publishing