環境変数
Salesforce CLI 環境変数
環境変数で CLI ランタイム設定値が上書きされます。実行しているコマンドのみに対して環境変数を設定するには、次のように変数を追加します。
- FORCE_OPEN_URL
-
force:org:open を実行したときにブラウザで開く Web ページを指定します。たとえば、Lightning Experience を開くには lightning に設定します。
force:org:open の --path パラメータに相当します。
- FORCE_SHOW_SPINNER
- 非同期 CLI コマンドの実行中にコマンドラインにスピナーアニメーションを表示するには、true に設定します。デフォルトは false です。
- FORCE_SPINNER_DELAY
- スピナーの速度をミリ秒単位で指定します。デフォルトは 60 です。
- SFDX_ACCESS_TOKEN
- auth:accesstoken:store コマンドを使用するときにアクセストークンを指定します。この環境変数を設定しない場合、このコマンドでアクセストークンの入力が求められます。CI/CD スクリプトに役立ちます。
- SFDX_API_VERSION
- 特定のプロジェクトまたはすべてのプロジェクトの API バージョン。通常、Salesforce CLI では、Dev Hub と同じバージョンの CLI を使用していることを前提としています。
- SFDX_AUDIENCE_URL
- JWT 認証に使用される [aud] (audience) 項目を上書きし、ログインしている組織の認証サーバ URL の期待される値に一致するようにします。たとえば、本番組織の場合は https://MyDomainName.my.salesforce.com または https://login.salesforce.com、Sandbox の場合は https://MyDomainName--SandboxName.sandbox.my.salesforce.com または https://test.salesforce.com です。
- SFDX_CODE_COVERAGE_REQUIREMENT
-
force:apex:test:run または force:apex:test:report に --codecoverage パラメータを指定して実行したとき、緑で表示されるコードカバー率を指定します。
Apex テストのコードカバー率がこの設定以上の場合、緑で表示されます。この値未満の場合、赤で表示されます。人間が読み取り可能な出力にのみ適用されます。デフォルトは 70% です。
- SFDX_CONTENT_TYPE
- JSON に設定した場合、すべての CLI コマンドは JSON 形式の結果を出力することを示します。環境変数を他の値に設定するか、その設定を解除した場合、CLI コマンドはパラメータで指定された結果を出力します。
- SFDX_CUSTOM_ORG_METADATA_TEMPLATES
-
force:project:create コマンドで使用されるデフォルトのカスタムコードテンプレートを含むローカルディレクトリまたはコピーされた GitHub リポジトリを指定します。GitHub URL は、テンプレートを含むルートディレクトリ、またはテンプレートを含むリポジトリのブランチ上のサブディレクトリを指します。
例:
- SFDX_DEFAULTDEVHUBUSERNAME
- デフォルトの Dev Hub 組織のユーザ名を指定します。指定すると --targetdevhubusername CLI パラメータを使用する必要がなくなります。defaultdevhubusername ランタイム設定値の値を上書きします。
- SFDX_DEFAULTUSERNAME
- デフォルト組織のユーザ名を指定します。指定すると --targetusername CLI パラメータを使用する必要がなくなります。defaultusername ランタイム設定値の値を上書きします。
- SFDX_DISABLE_AUTOUPDATE または SFDX_AUTOUPDATE_DISABLE (いずれかの変数が機能します)
- CLI の自動更新機能を無効にする場合、true に設定します。デフォルトでは、CLI が定期的に更新を確認してインストールします。
- SFDX_DISABLE_SOURCE_MEMBER_POLLING
-
force:source:push|pull コマンドの実行時に組織の SourceMember オブジェクトのポーリングを無効にするには、true に設定します。
このコマンドは、SourceMember オブジェクトをポーリングして、転送または取得の完了後のローカルソースと組織間の変化を追跡します。ただし、メタデータのリリースの規模が大きい場合は、ポーリングに時間がかかることがあり、タイムアウトになることもあります。CI/CD ジョブの場合のように、ソースの追跡がまったく不要なこともあります。これらの使用事例は、この環境変数を設定するのに適しています。
この環境変数は、スクラッチ組織と Sandbox の両方で機能します。
- SFDX_DISABLE_TELEMETRY
- CLI による使用状況情報、ユーザ環境情報、クラッシュレポートの収集を無効にする場合、true に設定します。
- SFDX_DNS_TIMEOUT
- 組織が接続されているかどうかを確認するときに force:org:* コマンドが応答を待機する秒数を指定します。コマンドがその時間内に応答を受信しない場合は、タイムアウトになります。デフォルト値は 3 です。
- SFDX_DOMAIN_RETRY
- Lightning Experience カスタムドメインが解決されて、新しく作成されたスクラッチ組織で使用できるようになるまで CLI が待機する秒数を指定します。
デフォルト値は 240 (4 分) です。変数を 0 に設定すると、Lightning Experience カスタムドメインのチェックが完全にスキップされます。
- SFDX_HIDE_RELEASE_NOTES
-
true に設定すると、sfdx update を実行したときにリリースノートが自動的に表示されなくなります。デフォルト値は false です。
例:
- SFDX_HIDE_RELEASE_NOTES_FOOTER
-
true に設定すると、sfdx update を実行したときにリリースノートの表示に関する定型のフッターが表示されなくなります。デフォルト値は false です。
例:
- SFDX_IMPROVED_CODE_COVERAGE
- force:apex:test:run と force:apex:test:report を実行する場合、Apex テスト結果の範囲を、テスト実行時に入力されたクラスに設定します。コードカバー率を向上させるには、true に設定します。
- SFDX_INSTANCE_URL
- 組織をホストしている Salesforce インスタンスの URL。デフォルト値は、https://login.salesforce.com です。この値は、組織の [私のドメイン] ログイン URL に設定することをお勧めします。[私のドメイン] ログイン URL は、[設定] の [私のドメイン] ページで確認できます。
- SFDX_JSON_TO_STDOUT
- Salesforce CLI コマンドが失敗した場合のメッセージを stderr ではなく stdout に送信します。スクリプトの使用事例では、この環境変数を true に設定することが役立ちます。
例:
- SFDX_LOG_LEVEL
- CLI がログファイルに書き込むメッセージのレベル。
例:
- SFDX_LOG_ROTATION_PERIOD
- Salesforce CLI がログファイルの循環を開始するまでの期間。ログファイルの循環とは、ログファイルのバックアップコピーを作成してから、現在のログファイルを消去してログを再開することを意味します。たとえば、1d に設定した場合、Salesforce CLI はログファイルを毎日深夜に循環します。2w に設定した場合、ファイルは 2 週間ごとに循環されます。他の期間のオプションについては、この表の period エントリを参照してください。デフォルト値は 1d です。
例:
- SFDX_LOG_ROTATION_COUNT
- ログファイルを循環するときに保持するバックアップファイルの数。デフォルト値は 2 です。詳細は、「SFDX_LOG_ROTATION_PERIOD」を参照してください。
例:
- SFDX_MAX_QUERY_LIMIT
- CLI コマンドで返される Salesforce レコードの最大数。デフォルト値は 10,000 です。
例:
- SFDX_MDAPI_TEMP_DIR
-
force:source:<name> など、一部の CLI コマンドが実行されると、ファイルを (メタデータ形式で) 指定されたディレクトリに置きます。これらのファイルを保持しておくと、いくつかの理由で便利です。コマンド実行時に発生した問題をデバッグできます。生成される package.xml を後続のコマンド実行時に使用できます。または、必要なすべてのメタデータが含まれるマニフェストを作成するための開始点として使用できます。
- SFDX_NPM_REGISTRY
- 公開するすべてのパッケージが非公開になる、非公開 npm サーバへの URL を設定します。認証を必要としないリポジトリのみがサポートされます。
例:
たとえば、Verdaccio は軽量な非公開 npm プロキシレジストリです。
- SFDX_PRECOMPILE_ENABLE
- テスト実行前の Apex プリコンパイルを有効にするには、true に設定します。この変数は、force:apex:test:run コマンドで機能します。デフォルトは false です。
- SFDX_PROJECT_AUTOUPDATE_DISABLE_FOR_PACKAGE_CREATE
- force:package:create で、sfdx-project.json ファイルへの自動更新を無効にします。
- SFDX_PROJECT_AUTOUPDATE_DISABLE_FOR_PACKAGE_VERSION_CREATE
- force:package:version:create で、sfdx-project.json ファイルへの自動更新を無効にします。
- SFDX_REST_DEPLOY
- true に設定すると、Salesforce CLI がリリースにメタデータ REST API を使用します。デフォルトでは、CLI が SOAP を使用します。REST を使用したリリースは、SOAP リリースに適用される 39 MB の .zip ファイルサイズ制限に制約されません。
- SFDX_SOURCE_MEMBER_POLLING_TIMEOUT
-
force:source:push コマンドが SourceMember オブジェクトをポーリングする時間 (秒) を設定します。この時間を過ぎると、コマンドはタイムアウトになります。force:source:push コマンドは、SourceMember オブジェクトをポーリングして、転送完了後のローカルソースと組織間の変化を追跡します。CLI は、force:source:push コマンドを実行するたびに、リリースするコンポーネント数に基づいてタイムアウトを計算します。この環境変数は、計算されたタイムアウトを上書きする場合に使用します。
たとえば、転送が 3 分後にタイムアウトになる場合は、5 分 (300 秒) をタイムアウトに設定してみてください。
- SFDX_USE_GENERIC_UNIX_KEYCHAIN
- (Linux と macOS のみ) Linux libsecret ライブラリまたは macOS キーチェーンではなく汎用 UNIX キーチェーンを使用する場合、true に設定します。CI 環境で ssh または「headless」と共に CLI を使用する場合、この変数を指定します。
- SFDX_USE_PROGRESS_BAR
-
force:mdapi:deploy、force:source:deploy、force:source:push では false に設定して進行状況バーを無効にします。
例:
グローバルに設定する場合: SFDX_USE_PROGRESS_BAR=false。
単一のコマンドに対して指定する場合: SFDX_USE_PROGRESS_BAR=false sfdx force:source:deploy。
一般的な環境変数
- HTTP_PROXY
- ファイアウォールまたは Web プロキシの背後にあるコンピュータに Salesforce CLI をインストールしたり更新したりするときにエラーが発生する場合、この環境変数を設定します。次のように会社の URL とポートを使用します。
- HTTPS_PROXY
- ファイアウォールまたは Web プロキシの背後にあるコンピュータに Salesforce CLI をインストールしたり更新したりするときにエラーが発生する場合、この環境変数を設定します。次のように会社の URL とポートを使用します。
- NODE_EXTRA_CA_CERTS
- 自己署名証明書をインストールします。証明書ファイル名への完全修飾パスを指定します。次に sfdx update を実行します。
詳細は、NODE_EXTRA_CA_CERTS=file を参照してください。
- NODE_TLS_REJECT_UNAUTHORIZED
- Node.js が証明書チェーンで自己署名証明書を使用できるようにするには、0 を指定します。