設定
CLI從旗標、環境變數、它的設定檔與內建預設值讀取每個設定,並把一切儲存在~/.polylane底下。這個頁面列出順序、變數,以及如何控制遙測。
優先順序
CLI依這個順序解析每個設定,最高者勝出:
- CLI旗標,例如
--workspace、--api-key、--output與--timeout。 - 環境變數:
POLYLANE_*這一組,加上標準的NO_COLOR與DO_NOT_TRACK。 - 僅限憑證,
~/.polylane/credentials.json中的OAuth權杖。 - 位於
~/.polylane/config.json的設定檔。 - 內建預設值:網域
api.polylane.com、逾時300秒、在終端機中輸出text、管線化時輸出json。
匯出的POLYLANE_API_KEY永遠勝過過時的~/.polylane/credentials.json,所以設定了該變數的CI執行器不會撿到殘留的OAuth權杖。驗證列出憑證的同一份順序。
設定檔
~/.polylane/config.json接受六個鍵:domain、workspace_id、api_key、output、timeout與telemetry。透過CLI管理它:config show印出解析後的設定、使用中的驗證方式與檔案路徑,API金鑰會被遮罩。
polylane config show
polylane config set --key output --value json
要以slug而非ID設定預設工作區,執行polylane workspace use <slug>。OAuth憑證另外存放在~/.polylane/credentials.json,並在存取權杖即將到期時自行刷新。
環境變數
| 變數 | 說明 |
|---|---|
POLYLANE_API_KEY | 不在磁碟上儲存金鑰即可驗證 |
POLYLANE_WORKSPACE_ID | 為目前的shell設定工作區 |
POLYLANE_API_DOMAIN | 指向不同的API主機名稱;只接受主機名稱,不含協定 |
POLYLANE_OUTPUT | 強制輸出text或json |
POLYLANE_TIMEOUT | 請求逾時,以秒為單位 |
POLYLANE_VERBOSE | 啟用詳細日誌 |
POLYLANE_TELEMETRY=0 | 為這個環境停用遙測 |
DO_NOT_TRACK=1 | 通用的遙測退出選項;覆寫其他所有遙測設定,包括設定檔 |
NO_COLOR | 停用ANSI色彩 |
遙測
匿名使用遙測預設開啟。它記錄指令名稱、旗標名稱、位置參數的數量、結束代碼與錯誤類別、持續時間、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.json | OAuth權杖 |
telemetry.json | 匿名安裝ID與執行計數器 |
update-state.json | 更新檢查狀態 |
刪除這個目錄即可完全重設CLI;下次執行時會產生新的安裝ID。