Concretio

View Original

Demystifying - Salesforce DevOps Center

Salesforce DevOps Center is a tool provided by Salesforce which provides an improved experience around change and release management that brings DevOps best practices to your development team, regardless of where you fall on the low-code to pro-code spectrum, that is, even if you are a System Administrator who only knows how to make point-and-click changes and have no knowledge of metadata can also deploy their changes without any problem.

Through a centralised and user-friendly interface, it enables everyone to benefit from DevOps best practices.

Why do we need DevOps?

Organize your work: Track and deploy the changes which are associated with the Work Items, Salesforce provided a new object for DevOps Center which is open to typical Salesforce Flows and other operations that can be done with other objects.

Track changes automatically: When you make any changes to your currently selected working org the changes are automatically tracked. It shows a list of changed metadata components in the DevOps Center and provides the user a user interface by which the users can select the changes which they want to be migrated. So now there will be no need to track your changes or you don’t have to write it somewhere to track salesforce DevOps is there for you.

It uses Github for source control internally: DevOps Center makes it simple to use source control even if someone has never used it before. All you have to do is sign in to GitHub, and the DevOps center will handle the rest.

Deploy changes with clicks: Simply click to deploy changes from one stage to the next by visually watching the deployment pipeline.

Benefits over existing solutions

Has work items working as a project management tool

A user story, task, or problem are examples of logical units of work that are captured by a work item. Projects are used to arrange work items, and each work item is associated with a project

Track changes with modern UI

We can leverage the feature of tracking changes when you start doing your work in an org then all those changes were being tracked automatically, after all, changes being made a user can quickly press the Pull Changes button in the bottom left corner and it fetches all the latest changes, if you want some older metadata then you can add components manually as well.

Seamlessly integrated with Github

It uses Github as version control system, But it is maintained all by itself. When you start working on a work item parallelly it creates a branch on github and tracks all the changes in that branch and when a Lead approves a work item, It gets automatically updated in github as well  and vice-versa.

Work with hybrid teams (point and click / vs code)

DevOps center takes care of both types of a team members who still would like to use vs-code for their development. When you start working on a work item it will ask initially how would you like to work ? At that time you can opt for normal vs-code development (It creates a branch and expects users to use that and make all the changes onto that and you can track them in Github and DevOps center as well and the rest process is the same.

Move changes across environments with clicks

Release Manager can quickly select the changes and promote them to the next configured org by selecting desired Test Options by clicks only.

Bundling of tickets

We can select multiple work-items from the pipeline manager and make a combined Bundle of them as a release to the next environment by providing them version number.

Can be installed in any type of org except sandbox

We can quickly install and configure the salesforce DevOps center in any org except sandbox, We can quickly create a new project, configure the release pipeline, authorize the orgs and we are good to go for deployments.

Org in which we can install the DevOps center does not need to have any relation with the production org or any org in the pipeline, It works separately.

Limitations

  • Currently, it supports version control via GitHub only(other version control tools are not available).

  • Back promotions are not available yet.

  • Cannot work on a work item once it is completed(if a bug appears, have to create a new one).

  • Conflicts are not resolved automatically(manual resolution via Github).

References 

  • https://help.salesforce.com/s/articleView?id=sf.devops_center_add_team_members.htm&type=5

  • https://help.salesforce.com/s/articleView?id=sf.devops_center_assign_permsets.htm&type=5

FAQs