@ codacy/ 工具
目录
概览
共有合同、类型和公用设施,用于Codacy Analysis CLI monorepo。 每个适配器和跑道都依赖于这个包.
出口
| 导出 | 目的 |
|---|---|
类型(Issue, (中文(简体) ), AnalysisError, (中文(简体) ), ToolAdapter页:1 | 整个管道的共享接口 |
defineToolAdapter() | 定义适配器的帮助类型 |
buildPatternId() | 从工具 ID + 规则 ID 构造模式 ID |
spawnTool() | CLI 策略适配器的儿童流程包 |
validateIssue() | 运行时验证问题对象 |
downloadFile() 编号 : downloadAndExtract() | HTTP 工具安装下载工具 |
ToolAdapter合同
每个工具适配器必须执行四种方法:
checkAvailability → install → checkLocalConfigurationFile → analyze
| 方法 | 目的 |
|---|---|
checkAvailability(ctx) | 工具二进制存在且可运行吗 ? |
install(ctx) | 下载/安装二进制( 或返回) NotSupported(中文(简体) ) |
checkLocalConfigurationFile(ctx) | 在 repo 中查找本地配置文件 |
analyze(ctx, config) | 运行工具并返回问题+出错 |
三项执行战略: 国 际 (儿童过程), 图书馆 (节点.js API), 土著 (纯TypeScript).
公用事业
spawnTool(binary, args, options)
生出一个孩子的过程,抓取stdout/stderr/exitCode. 所有CLI战略适应器都使用.
downloadFile(url, destPath) 编号 : downloadAndExtract(url, destDir, options)
HTTP 为工具安装提供下载帮助. downloadAndExtract 手柄 .tar.gz 可选的归档 stripComponents。 。 。 .