5个版本
0.1.6 | 2024年5月5日 |
---|---|
0.1.5 | 2024年5月5日 |
0.1.4 | 2024年1月18日 |
0.1.3 | 2024年1月17日 |
0.1.2 | 2024年1月16日 |
#105 在 测试 类别中
每月47 次下载
74KB
514 代码行
Clippy与Reviewdog的集成过滤器
这是什么?
Reviewdog是一个自动化代码审查工具。它从外部代码检查器的输出中提取相关部分,并以多种格式报告结果,包括GitHub检查和GitHub评论。
clippy-reviewdog-filter
是一个简单的过滤器,用于将Clippy(Rust的官方代码检查器)的输出作为Reviewdog的输入。
如何在本地尝试此应用
如果在本地上运行此应用,与直接运行Clippy没有太大区别,但如果您想在将其放入CI之前尝试此应用,
安装reviewdog:获取二进制发布版或
$ go get -u github.com/haya14busa/reviewdog/cmd/reviewdog
安装clippy-reviewdog-filter:获取二进制发布版或
$ cargo install --git https://github.com/qnighy/clippy-reviewdog-filter.git
cargo clippy --message-format json 2>&1 | clippy-reviewdog-filter | reviewdog -f=checkstyle -diff="git diff master"
配置示例
配置来自示例仓库
travis.yml
:
language: rust
env:
global:
# See the reviewdog manual for how to obtain the token.
# Beware that, encrypted environment variables cannnot be seen in
# builds for pull requests from fork repositories.
- REVIEWDOG_GITHUB_API_TOKEN=0123456789abcdef0123456789abcdef0123456789abcdef
install:
- mkdir -p ~/bin
- export PATH="$HOME/bin/:$PATH"
- curl -fSL https://github.com/haya14busa/reviewdog/releases/download/0.9.11/reviewdog_linux_amd64 -o ~/bin/reviewdog
- curl -fSL https://github.com/qnighy/clippy-reviewdog-filter/releases/download/v0.1.1/clippy-reviewdog-filter-x86_64-unknown-linux-musl -o ~/bin/clippy-reviewdog-filter
- chmod +x ~/bin/reviewdog ~/bin/clippy-reviewdog-filter
- rustup component add clippy-preview
script:
- reviewdog -reporter=github-pr-review
.reviewdog.yml
:
runner:
clippy:
cmd: 'find . -type f -name \*.rs -exec touch {} \;; cargo clippy --message-format json 2>&1 | clippy-reviewdog-filter'
format: checkstyle
安全性说明
如果您想使用github-pr-review
报告器在.travis.yml
中,您实际上会向拉取请求的提交者发布您的API令牌,因为他们可以自由地在您的Travis CI仓库上运行修改过的.travis.yml
版本。
为了更好的安全性,您可能想使用github-pr-check
报告器,或者在更隔离的环境中运行,例如在专门的GitHub Webhook服务器中运行reviewdog -reporter=github-pr-review
。
当然,在没有任何分叉的私有仓库中使用 github-pr-review
没有问题。在这种情况下,您可以使用 travis encrypt
命令对 github 令牌进行加密。
依赖项
~6–8.5MB
~180K SLoC