Modern Salesforce development environments are sophisticated with huge amounts of metadata, which can make deployments heavy and complex. Many organizations spend a great deal of time and effort to deploy an application within the governor limits and meet their goal of ensuring quality and stability in the application. However, the increase in deployment complexity combined with higher expectations of quality and agility, demand a more streamlined approach to Salesforce deployments.
Lean is a proven strategy in the software industry used to make application development faster, saving both time and money. When our team applied the principles of Lean to Salesforce deployments, ‘Delta Deployments’ were born. Powered by a Lean metadata packaging model, Delta Deployments are fast, simple and fail-proof (which also means you don’t have to wait until Friday night to do your deployments).
After all, you deserve a ‘Happy’ weekend, not a ‘Deployment’ weekend!
Why Delta Deployments are Important on the Salesforce Platform
As Salesforce runs in a multi-tenancy environment, it imposes governor limits to avoid monopolizing shared resources. When deploying, users are restricted to a .zip file with a maximum size of 39MB. The file size limit is applied to all tools and types of data, including Changesets, Metadata API, Force.com IDE, and ANT Migration tools. Most third-party tools available today are subject to the Salesforce governor limits as they are built using the Salesforce Metadata API.
Small and medium-sized organizations can work within these limitations, as they have fewer metadata components to migrate. However, deploying the metadata for a large enterprise can be an uphill battle. Bundling and compressing the files into multiple deployment packages is time consuming, inconvenient , and prone to failure due to file exceeding the 39MB limit.
Large file sizes occur due to the fact that the Salesforce Metadata API pulls and packages the complete component file, even if only a single line of code is modified. This is a bit like plucking the entire branch when trying to pick a single apple.
With Lean packaging, the changes (delta) of the metadata components are retrieved by comparing the Salesforce orgs and Version Control System. These changes are packaged into a .zip file and are deployed to the target Salesforce org. Delta Deployments allow you to move only the code that is absolutely necessary to update the application.
Let’s see how Delta deployments look like.
Delta Deployments in Action
The image below shows how a change to the field of an object named “Country Code” is migrated using Delta deployments.
The inline help text of a field is changed to “Provide your shipping address.” The Object’s XML file that is shown in the figure contains various other fields and object definition files like action overrides and custom settings, etc., along with the modified field. Using Delta deployments only the node of the field that is modified(color-coded in Blue) will be migrated.
Here’s another example in which changes are made in 3 versions of an application
An object is added in the first version of the application and two Custom Fields, namely Custom Field 1 and Custom Field 2 are added to it in the consecutive versions.
Packaging only the Deltas from Version 1 to Version 3 will migrate the components highlighted in Blue in the image.
To interpret, The Object is retrieved when deploying Version 1. Deploying Deltas from Version 2 means only the Custom Field 1 is retrieved to amend for the Object that is already in the target environment. Similarly, the deployment of Version 3 includes just the Custom Field 2.
AutoRABIT for Delta Deployments
AutoRABIT is a comprehensive DevOps Solutions for Salesforce application development. It is the only continuous delivery platform for Salesforce with end-to-end automation and Delta Deployments. With AutoRABIT, you can be sure that the right code will be delivered to the right place at the right time.
Find out how you can try AutoRABIT For FREE. Your next Salesforce deployment is on us.