Over the last five years, DevOps has become the standard for Salesforce development and release management. From December 2022, the General Availability (GA) of Salesforce’s DevOps Center marked a move away from the burden of change sets and brought Salesforce development more in line with the practices used on other platforms. If you’re wondering what it includes and what’s possible, we have you covered — here’s everything you need to know about DevOps Center!
What is DevOps Center?
DevOps Center sits within the Salesforce UI and is a change and release management tool designed to help developers, admins, and release managers work collaboratively. It was created to take some of the DevOps workflows that are familiar to programmatic developers and make them available to teams of admins and declarative developers — a significant upgrade from change sets. The aim is a “democratization of DevOps”, empowering all team members to get involved in the release process, enabling team collaboration, and providing a greater return on the investment in Salesforce.
How does DevOps Center work?
DevOps Center acts as a project hub to streamline Salesforce development, integrating version control systems (VCS) into the workflow to support DevOps practices. The adoption of version control is a big shift from the traditional approach of org-based development, which involves making changes directly in the org.
DevOps Center currently supports GitHub and Bitbucket. When it was launched in 2022, Karen Fidelak, Senior Director of Product Management at Salesforce, said that support for other version control systems will follow at a later date.
Built on Salesforce DX’s modern developer tooling — like the Salesforce CLI, Metadata API, and source control — DevOps Center helps teams to collaborate effectively and deliver value to customers in a consistent way.
The DevOps Center data model
The data model for DevOps Center is designed to streamline development work by organizing the tool’s core elements and defining their relationships. These are the key elements:
Releases
In the context of DevOps Center, releases are more about planning and grouping work rather than the act of deploying changes. They serve as neat containers for user stories and are typically managed outside DevOps Center. By grouping related user stories, developers can keep track and ensure their work stays focused on the end goal of delivering value to the business.
User stories
User stories are the foundation of every release. These short to-do lists give developers a clear path for development, whether it’s a feature, fix, or enhancement.
Work items
Work items break down user stories into clear, defined tasks. They are the individual steps that the developers and admins take to implement changes effectively.
Pipelines, stages and projects
A deployment pipeline shows the flow of work and each pipeline has stages, which are the development environments. A typical pipeline might be development, testing, staging, and production. A work item is promoted up to the next stage in the pipeline, so from testing to staging for example. The pipeline is a way to automate the process, ensuring governance, testing, and quality checks at each stage before reaching production. While pipelines and stages organize the workflow, DevOps Center projects are the container for all the work related to a specific feature or release — including the work items and pipeline.
The benefits of DevOps Center
Here’s a run-down of everything currently available in DevOps Center.
Improved work management
By implementing a more rigid process with user stories, work items and pipelines, you can see a clear picture of what changes need to be delivered. The whole team can collaborate, remain organized and on top of business goals.
Automated change tracking
You can automate change tracking in DevOps Center through Git. Using a version control system gives the whole team visibility into all the changes being made, and who’s making them. By eliminating the risk of overwriting code and also identifying conflicts early you create a more transparent and robust process.
Pipeline creation
By creating pipelines you’re able to see the flow of changes through environments and add automated checks at every stage, reducing the manual effort needed by teammates, but also detecting bugs and errors earlier in the development process.
Version control
DevOps Center’s GitHub integration makes source-driven development more accessible to Salesforce teams. With version control as the source of truth, teams can keep a complete history of changes, implement branching strategies to manage development more effectively, and collaborate seamlessly across projects.
Extensions and plugins
DevOps Center doesn’t offer complete DevOps functionality out of the box, but you can install extension packages to help teams progress toward a more mature DevOps process. For instance, Provar’s DevOps Center Plugin, available on the AppExchange, integrates quality testing into the release pipeline for Provar Manager subscribers, enhancing the reliability of your deployments.
Destructive changes
DevOps Center allows teams to make destructive changes across your orgs, which is a step up from change sets. But while you can deploy destructive changes, there’s no rollback option. To undo any changes, you’ll need to revert them in your source control system and redeploy them to the target environment through DevOps Center — a very manual process with added steps, and risk of human error.
Low-code platform
Although it’s not the prettiest or easy-to-use UI, DevOps Center does embrace the “clicks not code” philosophy to help teams be successful, no matter their technical background. Admins and low-code developers can actively contribute to the release lifecycle using DevOps Center, which helps break down silos and fosters seamless collaboration between technical and non-technical teams.
How can I install DevOps Center?
Installing DevOps Center isn’t an easy process and can be quite confusing. DevOps Center comes as a Managed Package that needs to be installed into a production org and can then be connected to any Lightning-enabled or classic org.
There are a number of processes you need to go through, starting with the initial install into your org. Once you have completed the installation, you need to add DevOps Center it as a Connected App. Finally, you will need to assign yourself permissions. If you complete these steps, DevOps Center should then appear in your App Launcher from your Setup page.
Is it free?
DevOps Center is currently free for those with Salesforce Professional, Enterprise or Unlimited Editions, and is also available for Developer Edition orgs. You can also try it out in a Trailhead Playground or scratch org, but DevOps Center isn’t currently available to install in a sandbox. There are plans to introduce a tiered payment system, but we don’t know what that will look like yet.
What are the main drawbacks of DevOps Center?
DevOps Center is a good first step into the world of DevOps, and a significant step forward from change sets. Although Salesforce has outlined plans for improving DevOps Center in the future, it’s important to understand the limitations and drawbacks that could impact your team if you were to adopt it now.
Most Git providers not supported
This is a fairly large drawback if your team is using anything other than GitHub or Bitbucket. In future releases, there are plans to support more Git providers — but at the moment teams using GitLab or Azure DevOps will have to wait.
No work-tracking integrations
Currently, teams can only track work items in DevOps Center, rather than integrating with third-party tools for tracking project delivery. Salesforce does intend to add support for JIRA but the current roadmap has no mention of support for other ticketing systems, like Rally.
No native automation tools for CI/CD
One of the most significant gaps in DevOps Center is the absence of DevOps automation tools that will let you set up and manage a CI/CD process. Adopting version control is a significant step for Salesforce teams wanting to implement DevOps, but automating tests and deployment steps in the release pipeline is essential for DevOps maturity and continuous delivery — as our CI/CD ebook explains.
No metadata comparisons
Karen Fidelak has described metadata comparisons between environments as a huge strength of Gearset — and of course we agree! Gearset’s comparison engine underpins our problem analyzers, which hugely increase users’ deployment success rates.
Salesforce initially had no plans to build a comparison engine for DevOps Center and currently relies on Git and GitHub to track changes and provide merge capabilities. In response to the demand for a DevOps solution that highlights metadata differences between environments, Salesforce is now considering adding this feature to the DevOps Center roadmap.
No support for CPQ deployments
Deploying CPQ configuration is trickier than deploying standard metadata — and as yet there is no support to deploy it with any native Salesforce deployment tools, including DevOps Center. Other tools like Data Loader can be used to migrate CPQ configuration data, but it’s an extremely difficult process. If you’re deploying CPQ, you’re much better off using a third-party DevOps platform, like Gearset.
Limited backup and no rollback
DevOps Center lacks a tight integration with full data and metadata backups, which protect your org from the possibility of a release that causes chaos. There’s no rollback functionality either, so some key guardrails for making releases secure are missing.
No package-based development models
DevOps Center doesn’t support some of the ways of working that Salesforce encouraged after releasing Salesforce DX, although there are future plans to support package-based development models, which will allow package installations to be incorporated into the release process.
What should we expect in future releases?
Salesforce has released their Public Roadmap for DevOps Center, which gives some indication of current planning for future releases. But there’s no guarantee if, and when, each feature may become available.
Comprehensive support for error messages
As DevOps Center is still in its early stages, Salesforce and the community haven’t yet offered the wealth of documentation that you can find for other snags in Salesforce development. This means it can be hard to find the solution to a problem when you do run into a DevOps Center error message. As users become more experienced with DevOps Center, there should be greater coverage of error messages via Salesforce Help pages and community forums, like Trailhead.
Is DevOps Center right for you?
DevOps is a journey, not a destination — teams move through stages of DevOps maturity as they improve their processes and see increasing success. Each team will have differing setups, deployments, and processes, so will need different features from a DevOps solution. When planning which solution to use for your team, a good start is to assess your team’s current level of DevOps maturity.
Full DevOps maturity, with an automated release pipeline and backup solution, isn’t yet possible with DevOps Center. Gearset’s DevOps platform has been developed to meet the needs of Salesforce teams adopting and scaling DevOps processes, so you can get the most out of Salesforce for your business.
If your team is keen to begin with Salesforce DevOps, but isn’t sure where to start, chat to one of our DevOps experts about your current challenges and Salesforce ambitions — or if you’re ready to jump in, sign up for a 30-day free trial today.