CLI

設定

CLIが設定をどこから読むか、どの環境変数を尊重するか、テレメトリーをどう制御するか。

CLIは各設定をフラグ、環境変数、設定ファイル、組み込みの既定値から読み取り、すべてを~/.polylaneに保存します。このページでは、その順序、変数、テレメトリーの制御方法を一覧します。

優先順位

CLIは各設定を次の順序で解決します。上が優先です。

  1. CLIフラグ。たとえば--workspace、--api-key、--output、--timeout。
  2. 環境変数。POLYLANE_*の一群と、標準のNO_COLORおよびDO_NOT_TRACK。
  3. 認証情報についてのみ、~/.polylane/credentials.jsonのOAuthトークン。
  4. ~/.polylane/config.jsonの設定ファイル。
  5. 組み込みの既定値。ドメインapi.polylane.com、タイムアウト300秒、出力はターミナルではtext、パイプではjson。

エクスポートされたPOLYLANE_API_KEYは常に古い~/.polylane/credentials.jsonに勝つため、変数を設定したCIランナーが残っていたOAuthトークンを拾うことはありません。認証にも認証情報について同じ順序が載っています。

設定ファイル

~/.polylane/config.jsonは6つのキーを受け付けます。domain、workspace_id、api_key、output、timeout、telemetryです。CLIを通じて管理します。config showは解決済みの設定、使用中の認証方法、ファイルパスを、APIキーをマスクして表示します。

Terminal
polylane config show
polylane config set --key output --value json

IDではなくslugで既定のワークスペースを設定するには、polylane workspace use <slug>を実行します。OAuth認証情報は~/.polylane/credentials.jsonに別に保存され、アクセストークンの期限が近づくと自動的に更新されます。

環境変数

変数説明
POLYLANE_API_KEYディスクにキーを保存せずに認証する
POLYLANE_WORKSPACE_ID現在のシェルのワークスペースを設定する
POLYLANE_API_DOMAIN別のAPIホスト名を指す。ホスト名のみで、プロトコルは含めない
POLYLANE_OUTPUTtextまたはjsonの出力を強制する
POLYLANE_TIMEOUTリクエストのタイムアウト(秒)
POLYLANE_VERBOSE詳細ログを有効にする
POLYLANE_TELEMETRY=0この環境でテレメトリーを無効にする
DO_NOT_TRACK=1汎用のテレメトリーオプトアウト。設定ファイルを含む他のすべてのテレメトリー設定を上書きする
NO_COLORANSIカラーを無効にする

テレメトリー

匿名の使用状況テレメトリーは既定でオンです。記録されるのは、コマンド名、フラグ名、位置引数の数、終了コードとエラーカテゴリ、所要時間、CLIとNodeのバージョン、オペレーティングシステムの詳細、インストールごとの匿名識別子、ワークスペースIDです。フラグの値、引数、ファイルパス、コマンド出力、完全なエラーメッセージは含まれません。polylane telemetry statusは、何がどこに送られるかを正確に表示します。

恒久的にオフにするにはpolylane telemetry disableを使います。これは設定ファイルに書き込みます。環境ごとにオフにするにはPOLYLANE_TELEMETRY=0またはDO_NOT_TRACK=1を使います。判定はDO_NOT_TRACK、次にPOLYLANE_TELEMETRY、次に設定ファイル、最後に既定のオンの順で行われます。呼び出しごとのフラグはありません。

ディスク上のファイル

CLIが保存するものはすべて~/.polylaneにあります。

ファイル説明
config.json保存された設定。ドメイン、ワークスペース、APIキー、出力、タイムアウト、テレメトリー
credentials.jsonOAuthトークン
telemetry.json匿名のインストールIDと実行カウンター
update-state.json更新確認の状態

CLIを完全にリセットするにはこのディレクトリを削除します。次の実行時に新しいインストールIDが生成されます。

関連

  • 認証: サインイン方法と認証情報の選ばれ方。
  • スクリプティング: 出力の契約、スクリプト向けフラグ、終了コード。