CloudDevops

Salesforce DevOps Center

Salesforce DevOps Center is a new tool released by Salesforce in June 2022. It is a salesforce release management tool built on top of SFDX and utilizes source member sObject.

Salesforce has used the Source Member sObject Tooling API along with SFDX to build DevOps Center. GA release is planned during 9th December 2022. 

This tool allows you to deploy metadata from one Salesforce Org to another. For example, deploy custom objects, apex classes, profiles, etc. from Sandbox to Production. Traditionally we have used “Change Sets” to perform this task.

It also combines application life cycle management and source control.

Salesforce DevOps Center
Salesforce DevOps Center

App Lifecycle Management in DevOps center:

In DevOps Center, you will create projects and within that projects, you will create user stories associated with work items to track your changes.

Once the user story has been created, you need to associate it with an organization from where you will be retrieving your changes. It is necessary to authenticate your organization within the DevOps center tool to retrieve changes.

Once you’ve authorized the organization, you can download your changes via the pull changes button, and then you can commit it to the version control repository.

Elements in Salesforce DevOps center:

  • Releases: Any set of changes will be grouped into a release. A release is split into one or more user stories.
  • User Stories: These are defined during the business analysis phase in collaboration with the end users. A user story is related to one or more work items.
  • Work Items: These contain the list of metadata items that are being changed. You create that list just once (unlike change sets which have to be recreated for every move between orgs). The item is pushed through the pipeline stages from dev orgs through to production.
  • Pipelines and Stages: These are the sequence of orgs (stages) that the work item is pushed through from dev to prod. You can define different pipelines e.g. “uat” and “hotfix”.
  • Bundled Stages: One or more stages in the pipeline can be marked as “bundled”. At this point, all work items in that stage are promoted at the same time to the next stage.
  • Source Control: Behind the scenes, DevOps Center manages all GitHub branches, including moving metadata between branches, and Salesforce org. GitHub is the only current source control system supported.
  • Pull Git Branch Locally (Optional Step): You need to pull your changes locally in your machine and then push them to the target org using the commands.

Installing DevOps Center Managed Package:

DevOps center is available for  EnterprisePerformanceProfessionalUnlimited, and Developer editions. To install,go to Setup and type “DevOps” in the Quick Find box.

devops
Devops

Steps to work on DevOps Center:

  • Enable & Install DevOps Center
  • Create Connected App
  • Assign DevOps Center Permission Sets to Users
  • Create a GitHub Account
  • Create a Project in DevOps Center
  • Create Environments
  • Set Up Your Pipeline
  • Create Work Item
  • Build Something in Development Environment
  • Pull Changes & Commit to Repository
  • Complete the Review Process
  • Promote Changes to UAT
  • Promote Changes to Production

Benefits of DevOps Center:

  • DevOps Center maintains the complete history of individual work items. Right from the initial commit to production deployment and everything in between.
  • It makes your deployment process visual and easy to understand. You can easily track and understand which changes have been deployed and where.
  • It maintains the complete history of the pipeline too.
  • With DevOps Center you can deploy changes between completely unrelated org. Like deploy changes from Developer Edition Org to Sandbox or Production and vice versa.
  • It also supports the Removal of metadata components.
  • No need to maintain create.xml.
  • Allows you to have multiple pipelines, each in a separate DevOps Center project.
  • Brings discipline to the entire development and release management process in Salesforce with the concept of ‘Work Items’ & ‘Pipeline’ and provides end-to-end visibility.

Limitations of Devops center:

  • The first version of the DevOps center will only support GitHub and no other source control repository.
  • Cannot integrate other ALM Solutions such as Jira, Azure, VersionOne, TFS, etc.
  • Currently, the deployments are manual with the click of a button.
  • DevOps Center approach currently supports org-based development, rather than package-based development (DX).
  • Cannot integrate tools like selenium or other testing tools.

Uninstalling DevOps center:

First, remove the DevOps Center permission set assignments from all DevOps Center users.

  • DevOps Center
  • DevOps Center Manager
  • DevOps Center Release Manager
  • sf_devops_InitializeEnvironments
  • sf_devops_NamedCredentials

2) Delete these two permission sets:

  • sf_devops_InitializeEnvironments
  • sf_devops_NamedCredentials

3) After you remove the permission set and permission set assignments, you can uninstall the DevOps Center package, which removes the application and all its associated data and objects.

4) Remove any named credentials associated with DevOps Center, which manages authentication to your development and pipeline environments.

5) Delete the DevOps Center-connected app so that the app doesn’t appear on App Launcher.

Loading

Translate »