seiso/goatGrand Opinionated AutoTester (GOAT) 可自动应用Seiso的策略即代码。该项目设计目标是比其他开源多检查器项目更易于理解、更具意见性,并且易于扩展以通过编程方式执行Seiso策略。
创建每个仓库的字典(相对于Git仓库根目录)。
bashmkdir -p .github/etc/ touch .github/etc/dictionary.txt
确保在GitHub Action中检出代码。
bashuses: actions/checkout@v4
将GOAT添加到GitHub Actions工作流中。
bashuses: seisollc/goat@main
要在每个针对main分支的PR上运行GOAT,创建文件.github/workflows/pr.yml,内容如下:
yml--- on: pull_request: branches: - main jobs: test: runs-on: Ubuntu-20.04 name: 测试项目 steps: - uses: actions/checkout@v4 - uses: seisollc/goat@main
在.github/etc/dictionary.txt中填充自定义字典文件,用于存储仓库特定的语言。
bash$ cat << EOF >> .github/etc/dictionary.txt capricornis crispus EOF
配置GOAT跳过mypy扫描。
bashuses: seisollc/goat@main with: disable_mypy: true
排除文件扩展名。
bashuses: seisollc/goat@main with: exclude: \.md$
排除文件列表。
bashuses: seisollc/goat@main with: exclude: ^.*/(Dockerfile|Dockerfile\.dev)$
在仓库的.github/linters/目录中为任何受支持的检查器提供检查配置。
bash$ mkdir -p .github/linters/ $ cat << EOF >> .github/linters/.markdown-lint.yml --- MD013: line_length: 120 EOF
使用内置的fix选项通过检查器自动修复代码格式错误。注意:本地运行时默认启用此选项,可能会使Git目录处于"脏"状态,需要手动管理提交和推送更改。
bashuses: seisollc/goat@main with: auto_fix: false
要调试GOAT相关问题,可将日志级别配置为ERROR、WARN、INFO或DEBUG。
bashuses: seisollc/goat@main with: log_level: DEBUG
goat项目不进行版本发布,其设计初衷是作为不断演进的最低期望标准。请直接使用main分支,或在有限情况下固定到每个提交发布的提交哈希标签。
详见CONTRIBUTING.md
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务