name: "pre-commit-action"
version: 1.0.3
author: "test-devops"
description: "安装 pre-commit 并对代码仓库执行钩子检查"
inputs:
gc_token:
description: "pre-commit 增量检查时所需密钥(私有仓库 git fetch 认证用)"
required: false
default: ""
layout:
type: "input"
label: "Git 认证 Token"
extend_prop:
visible_conditions: []
disabled_conditions: []
validation:
required_message: ""
extra_args:
description: "pre-commit 运行参数。为空时使用 --all-files 检查全量文件;填写时按指定参数执行"
required: false
default: ""
layout:
type: "input"
label: "运行参数"
extend_prop:
visible_conditions: []
disabled_conditions: []
validation:
required_message: ""
report-dir:
description: "SARIF 报告约定目录(机器临时目录,非代码仓目录)。插件扫描该目录下 *.sarif 作为用户提供的报告;工具未提供时按支持列表解析 pre-commit 日志兜底生成 <tool>.sarif 到该目录。只生成报告文件,上传由 workflow 中 openlibing-upload-sarif 完成"
required: false
default: "/tmp/pre-commit-reports/"
layout:
type: "input"
label: "报告目录"
extend_prop:
visible_conditions: []
disabled_conditions: []
validation:
required_message: ""
sarif-file:
description: "SARIF 文件/目录路径,逗号分隔支持多值(与 openlibing-upload-sarif 的 sarif_file 一致):单个文件、多个文件、单个目录、多个目录(目录自动扫描其中所有 .sarif 文件,非递归)。填写后优先于 report-dir 目录扫描;未填写时回退扫描 report-dir 目录下 *.sarif"
required: false
default: ""
layout:
type: "input"
label: "SARIF 文件/目录"
extend_prop:
visible_conditions: []
disabled_conditions: []
validation:
required_message: ""
outputs:
result:
description: "pre-commit 运行结果:success 或 failed"
checked_files:
description: "pre-commit 检查的文件范围"
sarif-files:
description: "收集/兜底生成的 SARIF 文件绝对路径列表(逗号分隔,可空)。可直接传给 openlibing-upload-sarif 的 sarif-file input 完成上传"
runs:
using: "node16"
main: "dist/index.js"