Deploying

Before you begin

Compare Between Orgs

To start click the Compare tab in the top menu of Blue Canvas.This allows you to select two orgs for deployment and see all of the differences between the orgs.

The Destination is the org that you want to deploy into and the Source is the org that you want to deploy from. Click Compare.

1532

You can now see the differences between your source and target orgs. You can select Side-by-side, Inline, or Hide whitespace changes to change the way your diff is diplayed.

Create New Deployment Request

Next create a Deployment Request by clicking Create Deployment Request. Note: you will be able to select and deselect which files are included in the next step.

A Deployment Request is like a Pull Request. It's a request to merge code from one Git branch into another. When you create the Deployment Request, Blue Canvas will check for merge conflicts and run a validation to make sure that the changes are ready to deploy. Name your deployment request and provide an optional description and click "Create Deployment Request".

967

Create Deployment Request in Blue Canvas

Select Tests

When creating a deployment request you have the option to run Apex tests. By default there are a few options you can choose from:

Minimal. Selecting “Minimal” runs the minimum number of tests that Salesforce requires for the target org (Salesforce requires 75% test coverage for production deploys for example). If you are deploying to production, Blue Canvas will trigger and run all tests when selecting this option. If you are deploying to a sandbox, no tests will run as Salesforce does not require any tests to run for sandbox deploys.

Run Local Tests. This option will run all tests in your organization except ones that originate from installed managed packages. This test level is the default for production deployments that include Apex classes or triggers. This is a great option to run tests that you’ve written and which are under your control but ignoring those that may come with managed packages or installed apps. It can be a big time and frustration saver.

Run All Tests. This option runs all tests in your Salesforce org, including third-party tests from managed packages.

Run Specified Tests. This option allows you to determine which tests you specifically want to run. This is great for deployments to staging sandboxes and provides you with the most control possible. To list specific tests simply list the names of your test classes separated by a comma.

Cherrypick Files

As you create a Deployment Request you can cherrypick files that you want to include in the deployment. This allows you to selectively deploy only the files that are ready to go.

1532

👍

Salesforce DX Format

Blue Canvas can automatically convert your source control directory structure to the Salesforce DX format. This allows you to cherry pick files at an even more granular level. You can deploy specific fields or Workflow Rules for example rather than deploying the entire object.

To enable this feature, email us at [email protected].

Quick Deploy

[)When you create a Deployment Request, we automatically check for merge conflicts and run a Salesforce validation. If both checks complete successfully, and any tests you want to run pass, you have the option to Quick Deploy. This will complete the merge and deploy code to the target org in one simultaneous and automated step.

1532

Merge Conflicts

Merge conflicts occur when your target org has seen changes to the same file that the source org is trying to update since the last merge between source and target. This can occur because someone logged into the target org and manually made a change or because they deployed a change to the target org from their sandbox.

Blue Canvas and Git are good at detecting these changes and blocking you from overwriting the target org's changes without a manual review. If Blue Canvas detects a merge conflict, it will display it in a UI.

1527

To resolve the merge conflict simple select if you want to keep the changes in the target or the source org and click Mark as resolved.

Troubleshooting

If your validation fails, you will see a log which clearly states which components are causing trouble in the deploy. You can use this to debug or cherrypick to ignore the files which are causing issues.

1532

❗️

Unexpected Prepare Error

If you get an unexpected prepare error or don't understand your error log, please email us at [email protected] and we will troubleshoot it for you.