Release Pipeline

Release Pipeline Introduction

  • Timing: 1 hr 40 mins

  • Core Focus: Utilizing DevOps practices, such as continuous integration and delivery, to transition application changes from development to production.

  • Objective: Upon completion, you should be able to:

    • Describe the DevOps release pipeline.

    • Discuss development process best practices.

    • Identify continuous integration and delivery tasks.

    • Articulate the importance of defining a test approach.

    • Develop deployment strategies for applications.

/

Release Management Approach

  • The release management approach varies according to:

    • Application release models.

    • Development methodologies.

    • Organizational culture.

  • Regulatory compliance can delay feature releases.

  • Automated testing and migration technologies lead to a more agile delivery model.

  • Financial Benefits: Organizations that release features more rapidly can surpass competitors.

  • DevOps:

    • A collaborative framework involving Development, Quality, and Operations teams.

    • Aims to deliver high-quality software efficiently.

Pega Platform DevOps Integration

  • Supports integration with third-party tools (e.g., Jenkins, Microsoft Azure DevOps).

  • An open platform facilitates:

    • Deployment pipelines via third-party automation tools.

    • Automated branch merging, packaging, deployment, test execution, and metric enforcement.

  • Competitive Advantage: Continuous delivery of new features enhances market standing.

  • Adoption: Transition to DevOps may require cultural shifts in some organizations.

Technical Lead Responsibilities

  • Assess current release management processes:

    • Identify the extent of automation in current practices.

    • Evaluate the efficiency of testing processes.

    • Design release management strategies based on these assessments.

  • Appoint a Release Manager to oversee and refine practices, manage rulesets, and ensure proper branch merging.

Setting Up a Release Pipeline

  • Manual methods are still prevalent in many organizations, impacting automation integration.

  • Developer activities may include:

    • Unit testing.

    • Transitioning to an automated pipeline incrementally.

    • Sharing changes among developers to identify and resolve conflicts.

    • User engagement includes testing new features and ensuring the functionality of existing features before deployment.

Continuous Integration, Delivery, and Deployment

  • Continuous Integration:

    • Frequent integration into a shared repository throughout each day.

  • Continuous Delivery:

    • Preparations to deliver whenever necessary, encouraging agile methodologies through Agile Studio.

  • Continuous Deployment:

    • Automation of deployment processes without manual intervention after a successful integration.

Modular Deployment Strategies

  • Dedicating rulesets to individual case types promotes reuse and integration.

  • Automates the organization of related branches in development environments.

Deployment Manager Functions

  • Automates deployment processes across merged branches.

  • Manage development environments via the App Explorer to facilitate transitions between various application versions and branches.

Best Practices in Team-Based Development

  • Foster collaboration in shared environments:

    • Create smaller, component-focused applications.

    • Use branches for multi-team contributions and peer code reviews.

  • Implement PegaUnit tests to validate rules and data representation.

Deployment Responsibilities of Lead System Architects (LSAs)

  • Security remains a primary focus during deployments, with recommendations including:

    • Completing the application security checklist.

    • Regular audits of security configurations.

  • Guardrail compliance is validated during deployment.

Rollback Processes

  • Enhance deployment reliability through:

    • Establishing restore points automatically post-deployment.

    • Application-level rollback options for granular restoration capabilities.

  • Limitations exist for SQL changes, including specifications for rule and data restoration.

Data Migration Pipelines

  • Data migration pipelines enable:

    • Automated export of simulation data from production to testing environments.

    • Migration of critical decision-making data such as customer details and interaction history.