Newer Version Available

This content describes an older version of this product. View Latest

Environment Variables

You can set environment variables to configure certain values that Salesforce CLI and Salesforce DX tooling use.

Salesforce CLI Environment Variables

Environment variables override CLI runtime configuration values. To set an environment variable for only the command you’re running, append the variable, like this:

1SFDX_API_VERSION=44.0 sfdx force:org:create -<options>
FORCE_OPEN_URL
Specifies the web page that opens in your browser when you run force:org:open. For example, to open Lightning Experience, set to lightning.

Equivalent to the --path parameter of force:org:open.

FORCE_SHOW_SPINNER
Set to true to show a spinner animation on the command line when running asynchronous CLI commands. Default is false.
FORCE_SPINNER_DELAY
Specifies the speed of the spinner in milliseconds. Default is 60.
SFDX_API_VERSION
The API version for a specific project or all projects. Normally, the Salesforce CLI assumes that you’re using the same version of the CLI as your production org. However, let’s say you decide to use the pre-release version of the CLI (v43 in Summer ’18), but your production org is running the current API version (v42 in Spring ’18). In this case, you’d want to set this value to match the API version of your production org (v42).
SFDX_AUDIENCE_URL
Overrides the aud (audience) field used for JWT authentication so that it matches the expected value of the authorization server URL for the org you’re logging into. For example, http://login.salesforce.com for a production org or https://test.salesforce.com for a sandbox.
SFDX_CODE_COVERAGE_REQUIREMENT
Specifies the code coverage percentages that are displayed in green when you run force:apex:test:run or force:apex:test:report with the --codecoverage parameter.

If the code coverage percentage for an Apex test is equal to or higher than this setting, it’s displayed in green. If the percent is lower, it’s displayed in red. Applies only to human-readable output. Default is 70%.

SFDX_CONTENT_TYPE
All CLI commands output results in JSON format.
SFDX_DEFAULTDEVHUBUSERNAME
Specifies the username of your default Dev Hub org so you don’t have to use the --targetdevhubusername CLI parameter. Overrides the value of the defaultdevhubusername runtime configuration value.
SFDX_DEFAULTUSERNAME
Specifies the username of your default org so you don’t have to use the --targetusername CLI parameter. Overrides the value of the defaultusername runtime configuration value.
SFDX_DISABLE_AUTOUPDATE or SFDX_AUTOUPDATE_DISABLE (either var works)
Set to true to disable the auto-update feature of the CLI. By default, the CLI periodically checks for and installs updates.
SFDX_DISABLE_SOURCE_MEMBER_POLLING
Set to true to disable polling of your org’s SourceMember object when you run the force:source:push|pull commands.

The commands poll the SourceMember object to track what's changed between your local source and the org after the push or pull completes. If you have a large metadata deployment, however, the polling can take a while, or even time out. Sometimes you don't require source tracking at all, such as in a CI/CD job. These use cases are good candidates for setting this environment variable.

The environment variable works with both scratch orgs and sandboxes.

When you disable SourceMember polling, the CLI’s internal tracking of what’s changed between your local source and org metadata gets out of sync. As a result, subsequent runs of the force:source:push|pull|status commands are unreliable, and it’s up to you to synchronize your source. To reset source tracking, use the force:source:tracking:reset command.

Warning

SFDX_DISABLE_TELEMETRY
Set to true to disable the CLI from collecting usage information, user environment information, and crash reports.
SFDX_DOMAIN_RETRY
Specifies the time, in seconds, that the CLI waits for the Lightning Experience custom domain to resolve and become available in a newly created scratch org.

The default value is 240 (4 minutes). Set the variable to 0 to bypass the Lightning Experience custom domain check entirely.

SFDX_IMPROVED_CODE_COVERAGE
Scopes Apex test results to the classes entered during a test run when running force:apex:test:run and force:apex:test:report. Set to true to improve code coverage.
SFDX_INSTANCE_URL
The URL of the Salesforce instance that is hosting your org. Default value is https://login.salesforce.com.
SFDX_JSON_TO_STDOUT
Sends messages when Salesforce CLI commands fail to stdout instead of stderr. Setting this environment variable to true is helpful for scripting use cases.

Example:

1SFDX_JSON_TO_STDOUT=true
SFDX_LOG_LEVEL
Sets the level of messages that the CLI writes to the log file.

Example:

1SFDX_LOG_LEVEL=debug
SFDX_MAX_QUERY_LIMIT
The maximum number of Salesforce records returned by a CLI command. Default value is 10,000.

Example:

1SFDX_MAX_QUERY_LIMIT=200000
SFDX_MDAPI_TEMP_DIR
Places the files (in metadata format) in the specified directory when you run some CLI commands, such as force:source:<name>. Retaining these files can be useful for several reasons. You can debug problems that occur during command execution. You can use the generated package.xml when running subsequent commands, or as a starting point for creating a manifest that includes all the metadata you care about.
1SFDX_MDAPI_TEMP_DIR=/users/myName/myDXProject/metadata
SFDX_NPM_REGISTRY
Sets the URL to a private npm server, where all packages that you publish are private. We support only repositories that don’t require authentication.
1SFDX_NPM_REGISTRY=<full_URL>

Example:

1SFDX_NPM_REGISTRY=http://mypkgs.myclient.com/npm/my_npm_pkg

Verdaccio is an example of a lightweight private npm proxy registry.

SFDX_PRECOMPILE_ENABLE
Set to true to enable Apex pre-compile before the tests are run. This variable works with the force:apex:test:run command. Default is false.

The duration of an Apex test pre-compilation can be inconsistent. As a result, runs of the same Apex tests are sometimes quick and other times they time out. We recommend that you set this variable to true only if your Apex tests (without pre-compile) activate multiple concurrent Apex compilations that consume many system resources.

Important

SFDX_PROJECT_AUTOUPDATE_DISABLE_FOR_PACKAGE_CREATE
For force:package:create, disables automatic updates to the sfdx-project.json file.
SFDX_PROJECT_AUTOUPDATE_DISABLE_FOR_PACKAGE_VERSION_CREATE
For force:package:version:create, disables automatic updates to the sfdx-project.json file.
SFDX_SOURCE_MEMBER_POLLING_TIMEOUT
Set to the number of seconds you want the force:source:push command to keep polling the SourceMember object before the command times out. The force:source:push command polls the SourceMember object to track what's changed between your local source and the org after the push completes. The CLI calculates a time-out for each force:source:push command run based on the number of components it deploys. Use this environment variable to override the calculated time-out.

For example, if the push times out after 3 minutes, try setting a time-out of 5 minutes (300 seconds):

1SFDX_SOURCE_MEMBER_POLLING_TIMEOUT=300
SFDX_USE_GENERIC_UNIX_KEYCHAIN
(Linux and macOS only) Set to true if you want to use the generic UNIX keychain instead of the Linux libsecret library or macOS keychain. Specify this variable when using the CLI with ssh or "headless" in a CI environment.
SFDX_USE_PROGRESS_BAR
For force:mdapi:deploy, force:source:deploy, and force:source:push, set to false to disable the progress bar.

Examples:

To set globally: SFDX_USE_PROGRESS_BAR=false.

To set for a single command: SFDX_USE_PROGRESS_BAR=false sfdx force:source:deploy.

General Environment Variables

HTTP_PROXY
If you receive an error when you install or update the Salesforce CLI on a computer that’s behind a firewall or web proxy, set this environment variable. Use the URL and port of your company proxy, for example:
1http://username:pwd@proxy.company.com:8080
HTTPS_PROXY
If you receive an error when you install or update the Salesforce CLI on a computer that’s behind a firewall or web proxy, set this environment variable. Use the URL and port of your company proxy, for example:
1http://username:pwd@proxy.company.com:8080
NODE_EXTRA_CA_CERTS
Installs your self-signed certificate. Indicate the fully qualified path to the certificate file name. Then run sfdx update.

See NODE_EXTRA_CA_CERTS=file for more details.

NODE_TLS_REJECT_UNAUTHORIZED
Indicate 0 to allow Node.js to use the self-signed certificate in the certificate chain.