Salesforce customers create custom sites and frequently update them using the Experience Bundle. The Experience Bundle allows users to customize the company’s branding, share Salesforce records with site members, and work with them in a collaborative space. The Experience Bundle represents a text-based code structure of the settings and site components, such as pages, branding sets, and themes, that make up an Experience Builder site.
Developers can quickly develop and update Experience Builder sites programmatically, but face challenges when it’s time to deploy to other environments. If you use the sfdx CLI tool to deploy these changes, you can deploy the initial site, but delta deployments for the Experience Bundle are not supported. Github actions and other tools using sfdx CLI inherit the same problem. It becomes a tedious and manual process that requires rework and invites human error.
FlexDeploy can deploy your Salesforce Experience Bundle custom sites and delta updates with simple, easy steps or in a fully automated way. In this blog, let’s see how we can deploy Experience Bundle code using FlexDeploy.
Discover New Experience Bundle
The ExperienceBundle can contain one or more site definitions under the experiences folder. Each site definition has resource folders for brandingSets, config, routes, themes, variations, and views, each with additional, related configuration information in JSON files. Once the development is completed, FlexDeploy will retrieve all the files added or changed. Notice that it included the CustomSite and Network that are created for this Experience Bundle.
You can view the source code and review each file by expanding the file.
Once the review is completed, select all the files that you would like to commit and then click on the Commit button. You can specify a Package name to automatically add the files to a package. FlexDeploy will take care of pushing the files to your Git repository.
You can have a CI trigger configured for the same to automatically push to your Git repository. The CI trigger eliminates the need to perform this task manually, and increases speed and consistency.
Build and Deploy Changes
Once you have the package created, you can build and deploy the changes by simply clicking on the Build and Deploy buttons on the Execution screen to migrate.
Alternatively, you can use the FlexDeploy release and pipeline management feature to be even more efficient. This will empower you to take advantage of a fully automated release process to migrate your changes.
Discover Experience Bundle Changes
After the initial deployment, you may have to go back and modify based on your change requirements. In FlexDeploy, you can easily identify your changes, review them, and approve them for pushing to Git and migration. FlexDeploy can deploy the changed file alone once reviewed and approved. You can easily include just the modified files in your package – no need to have all the Experience Bundle files.
FlexDeploy provides complete flexibility in migrating Salesforce objects. You have the choice to migrate a complete Experience Bundle or only the delta. Additionally, you can chose to execute the migration with a few easy steps or via a fully automated pipeline. FlexDeploy adopts the same approach of discovering changes, building, and deploying for all Salesforce objects, providing a next-level DevOps support for Salesforce.