91导航

Salesforce deployments that just work

Salesforce deployments that just work

Amy Johnston on

Share with



All good Salesforce DevOps adoption starts with consistent and reliable deployments 鈥 that just work. Without the right tooling, these deployments can absorb an enormous amount of your Salesforce team鈥檚 time. How do you make sure your deployments are successful almost every single time?

With its deep understanding of Salesforce metadata, 91导航 is the most powerful comparison and deployment engine in the ecosystem 鈥 boasting a deployment success rate of 98%. In this post we look at how 91导航 can take the pain and risk out of your Salesforce deployments 鈥 not only to save time across your development team, but to help the whole company see a considerable return on investment too.

Deploying on Salesforce is hard

Migrating new metadata changes from one Salesforce environment to another is hard because deployments can fail for any number of reasons. Admins and developers who regularly use Salesforce鈥檚 native change sets or the Salesforce CLI for their deployments will be all too familiar with these common stumbling blocks and the error messages they generate:

  • Missing dependencies
    E.g. Cannot set sharingModel to ControlledByParent on a CustomObject without a MasterDetail relationship field
  • Features in source orgs that aren鈥檛 enabled in target orgs
    E.g. Not available for deploy for this organization
  • Items that reference users or need certain permissions
    E.g. In field: siteAdmin - no User named communities-source@example.com found.
  • Issues around deploying managed packages and their added components
    E.g. Cannot modify managed object: entity=CustomPermissionSet, component=<ID>, field=Description, state=installed
  • Differences between Metadata API versions of the source and target
    E.g. Insufficient access rights on cross-reference id:<ID>
  • Metadata types not fully supported by the Metadata API
    E.g. INVALID_TYPE: sObject type <ObjectName> is not supported.

To resolve these deployment issues, Salesforce teams need extensive and detailed knowledge of the metadata in their orgs. And even if they do have this expertise, teams shouldn鈥檛 have to dedicate significant resources to tricky deployment processes. Fiddly tools that frequently fail to do the job are an expensive waste of these professionals鈥 valuable time, which could otherwise be spent on more productive development and customization work.

As well as consuming the resources of your Salesforce team, unsuccessful deployments pose a serious risk to your company if new work can鈥檛 get released to production on time or 鈥 worse still 鈥 results in unforeseen issues on release that break your existing Salesforce functionality. From a business continuity point of view, issues with releases are a growing concern because more companies now rely entirely on the smooth running of their Salesforce instances to manage many of their essential operations.

Getting your Salesforce team to release late on a Friday evening (in case the new release throws up any problems to be fixed over the weekend) isn鈥檛 an ideal solution. We firmly believe that deployments on Salesforce should be as easy as everything else on the platform. Unfortunately, if your team is using native Salesforce tools to run deployments, that鈥檚 simply not the case. In fact, you鈥檙e typically looking at a deployment success rate of around 50% 鈥 a metric we鈥檝e used as a benchmark comparison since the birth of 91导航.

TDX

Find out more

Building the most successful deployment tool for Salesforce

91导航 was born when our company鈥檚 founding engineers implemented Salesforce and realized that Salesforce professionals deserve better than change sets. Deploying with the platform-native deployment tools is just too fragile a process to move new customizations and features along a pipeline to production.

Our developers were used to reliable and automated releases that result from modern DevOps practices, having worked on other software stacks for many years. They were frustrated because the same wasn鈥檛 the case for their releases on Salesforce 鈥 deployments often failed, and UI-based tools like change sets lacked any options for automation. Traditional automation tools used on other platforms weren鈥檛 the answer either because they weren鈥檛 built to deal intelligently with Salesforce metadata or the many quirks of Salesforce鈥檚 Metadata API.

Failing to find an adequate solution, our team set out to build what has since become the most powerful deployment tool for Salesforce. From the very beginning, our focus was on making sure deployments actually succeeded. As well as being a dramatic quality-of-life improvement for Salesforce teams, successful Salesforce deployments are essential if you want automated DevOps workflows.

91导航 now offers a complete DevOps solution for Salesforce teams of all sizes and complexity, but making sure your deployments succeed remains at the core of what we do. To date, 91导航 users have run over 18 million deployments and have deployed more than 105 million items of metadata. Deployments form the basis on which our suite of cutting-edge DevOps tools is built, which is also why we continue to measure our performance by tracking the success rate of our users鈥 deployments. It鈥檚 a metric we鈥檝e tracked closely since we first started out building 91导航.

Tracking the success of our users鈥 deployments since 2014

In recent years, our deployment success rate has consistently been over 90% and is currently sitting at 98%. In other words, 91导航 users鈥 deployments succeed more than 9 out of 10 times. We鈥檙e extremely proud of this unmatched statistic and we鈥檙e continually adding even more improvements!

Deployments that work every time

NOTE: 91导航鈥檚 comparisons have had an upgrade! We鈥檙e updating all our blog posts with the new UI images 鈥 but in the meantime, you can learn more about what鈥檚 changed.

91导航 makes deploying to Salesforce easy for a number of reasons:

Compare metadata changes with ease

Knowing what to deploy and the impact the changes will have on your target environment is the first step to making sure a deployment succeeds. Deployments in 91导航 start with a comparison of the metadata in the source and target environments 鈥 any Salesforce org or a Git branch. 91导航 retrieves the metadata from the source and target using Salesforce鈥檚 Metadata API, then compares the two environments. The results of the comparison are then shown to the user in full detail.

In 91导航鈥檚 comparison view, users can see all the differences between their two selected environments. The differences 鈥 metadata items in the source environment that have been changed, deleted or added compared to the target 鈥 are displayed side-by-side in table formats with a detailed XML, object or layout view.

91导航鈥檚 unique metadata comparison view

The line-by-line differences show you the items you need to select from your source, giving you a clear idea of the impact the changes will have on your target. You can then quickly select multiple items to build a deployment package. 91导航鈥檚 unique metadata comparisons and the granular control they give you over what to deploy are a feature that鈥檚 frequently commented on and invariably impresses our new users.

鈥淲ith 91导航, I tell new people it鈥檚 like turning on a black light: you can just see everything that鈥檚 different. And from there you can decide 鈥榯hat鈥檚 relevant, that鈥檚 not relevant鈥. You can spot things you鈥檇 forgotten about that you need.鈥

Matt Norn | Cloud Technologist | Traction on Demand

Comparisons are just the start. 91导航 doesn鈥檛 just retrieve your metadata from the Metadata API; it also analyzes it semantically to identify the dependencies and relationships between items. Within the comparison view, 91导航 shows you each item鈥檚 dependency tree right within the comparison table:

91导航 shows you metadata items and their dependencies

Identify common deployment issues

After you鈥檝e selected the metadata items to include in your deployment package, 91导航鈥檚 algorithms check for common deployment issues. These warn you of any number of potential issues that are likely to cause your deployment to fail.

91导航鈥檚 problem analyzers dramatically boost deployment success

The problem analyzers explain each issue and suggest fixes, such as dependent components that need to be included in the deployment package. You can then accept and implement these suggestions by checking the relevant boxes in the UI. 91导航 then makes sure your deployment succeeds by automatically adding, excluding or editing items in the package. Examples of our problem analyzers include:

In total, 91导航 has well over 70 problem analyzers, which run every time before any manual or automated deployment. The problem analyzers are both a real time-saver and a safety net for teams, as many of our customers have commented.

鈥91导航 has made it easy for beginners to deploy due to the problem analyzers, which help anticipate potential deployment errors and provide suggestions on metadata that should be included in the deployment package to help the deployment succeed.鈥

Independent on G2

Cherry-pick specific metadata items to deploy

Selecting specific fields for deployment, especially when dealing with extensive metadata items like Layouts, can pose a challenge for developers 鈥 many tools only support an all-or-nothing approach. 91导航鈥檚 simplifies this by showing a detailed breakdown in your metadata comparison results that allows you to choose precisely what to deploy. This makes deployments faster, easier, and less error-prone.

Roll back unwanted changes

Both native Salesforce deployment tools (change sets and DevOps Center the ability to roll back changes, and most alternatives require manual snapshots for rolling back deployments. 91导航鈥檚 unique comparison engine automatically takes and stores snapshots before each deployment. This means you can roll back unwanted changes with just a few clicks by comparing the snapshot to the current state and selectively reverting changes. 91导航 uses problem analyzers to make sure the rollback deployment succeeds 鈥 you can even roll back changes that have been committed to version control.

Make destructive changes

Redundant metadata, like fields, objects and customizations, can bog down your Salesforce org and cause issues for end users. With 91导航, decluttering your orgs by deploying destructive changes is simple. Just switch to the Deleted items tab after running an org comparison, then select and delete objects not present in your source org. Once you deploy, these objects will be gone 鈥 but as with any deployment in 91导航, you鈥檒l be able to roll back afterwards if you want to undo any changes.

Automatic unit testing

For all Salesforce DevOps teams, testing your deployments is crucial to meet the 75% code coverage requirement during deployment. Not only is testing a vital Salesforce deployment best practice, but you also won鈥檛 be able to successfully deploy code without also writing tests. As well as testing before the deployment, you should also test the code when it reaches production as changes to your org may cause bugs or regression, causing your existing unit tests to fail.

91导航 lets you automate unit testing, running all unit tests every 24 hours to reach reliable deployment success. 91导航 will also notify you of test results by email, SMS, Slack or Chatter, saving a full test history, so you can easily dive in to find exactly which tests failed and why. Automated unit testing is a great way to boost deployment success rates and make sure you always understand the state of your orgs.

There are plenty of ways you can introduce automation to your deployment process 鈥 testing is just one good example. However, DevOps teams looking to continue their DevOps journey by adopting automation and CI/CD should have implemented a version control system first.

Migrate changes to managed packages

When installing managed packages, new or modified metadata, like custom objects or custom fields, can be introduced into your Salesforce orgs. This can cause deployment issues when dealing with traditional tools like Ant, as all of this extra metadata will now be mixed in with your existing configuration.

Ignoring this can be problematic, as you may want to customize this metadata at a later stage, for example by adding fields for your quoting process. Without proper tracking, distinguishing between package-installed and custom modifications can become challenging.

When migrating customizations to Salesforce Managed Packages with 91导航, the customizations will become clearly visible as differences, making them easy to deploy 鈥 even if they weren鈥檛 tracked when they were originally added.

Want to boost your team鈥檚 deployment success?

With a deployment success rate of 98%, it鈥檚 hard to think of a reason why you wouldn鈥檛 want to add 91导航 to your current processes. But it鈥檚 come a long way since it was created as a Salesforce metadata deployment tool.

91导航 is a full Salesforce DevOps platform, offering everything from automated release management in your DevOps journey. You can get unlimited access to 91导航鈥檚 features with a to backup, that can help you wherever you are in your DevOps journey. You can get unlimited access to 91导航鈥檚 features with a today!

Ready to get started with 91导航?