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接受六个键:domain、workspace_id、api_key、output、timeout和telemetry。通过CLI管理它:config show打印解析后的配置、正在使用的身份验证方式和文件路径,API密钥会被遮蔽。

Terminal
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.jsonOAuth令牌
telemetry.json匿名安装id和运行计数器
update-state.json更新检查状态

删除该目录即可完全重置CLI;下次运行时会生成一个新的安装id。

相关内容