clippy/README.md

86 lines
2.6 KiB
Markdown
Raw Normal View History

2022-11-09 14:43:49 +01:00
# GitHub Action: Run Clippy with reviewdog
This action runs [Clippy](https://github.com/rust-lang/rust-clippy) with
[reviewdog](https://github.com/reviewdog/reviewdog) on pull requests to improve code review experience.
2022-11-10 00:41:42 +01:00
<img width="943" alt="スクリーンショット 2022-11-08 8 57 47" src="https://user-images.githubusercontent.com/17407489/200965354-b79c2b86-958f-42ca-bdf1-46bf5511aa5e.png">
2022-11-09 14:43:49 +01:00
## Example usage
```yml
name: clippy-action
on: [pull_request]
jobs:
clippy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
2022-11-10 14:27:08 +01:00
- uses: dtolnay/rust-toolchain@stable
2022-11-15 14:34:27 +01:00
with:
components: clippy
2022-11-17 14:17:57 +01:00
- uses: giraffate/clippy-action@v1
2022-11-09 14:43:49 +01:00
with:
reporter: 'github-pr-review'
github_token: ${{ secrets.GITHUB_TOKEN }}
```
2022-11-09 14:43:49 +01:00
## Inputs
2022-11-09 14:43:49 +01:00
### `github_token`
2022-11-09 14:43:49 +01:00
**Required**. Default is `${{ github.token }}`.
2022-11-09 14:43:49 +01:00
### `clippy_flags`
2022-11-09 14:43:49 +01:00
Optional. clippy flags. (cargo clippy --color never -q --message-format json `<clippy_flags>`)
2022-12-02 14:24:38 +01:00
For example, `clippy_flags: -- -Dwarnings`.
2022-11-09 14:43:49 +01:00
### `tool_name`
2022-11-09 14:43:49 +01:00
Optional. Tool name to use for reviewdog reporter. Useful when running multiple actions with different config.
2022-11-09 14:43:49 +01:00
### `level`
2022-11-09 14:43:49 +01:00
Optional. Report level for reviewdog [info,warning,error].
It's same as `-level` flag of reviewdog.
2022-11-09 14:43:49 +01:00
### `workdir`
2022-11-09 14:43:49 +01:00
Optional. Working directory relative to the root directory.
2022-11-09 14:43:49 +01:00
### `reporter`
2022-11-09 14:43:49 +01:00
Optional. Reporter of reviewdog command [github-pr-check,github-pr-review].
It's same as `-reporter` flag of reviewdog.
2022-12-02 14:24:38 +01:00
#### github-pr-review
|`cargo clippy`|`cargo clippy -- -Dwarnings`|
|---|---|
|<img width="913" alt="github-pr-review_warning" src="https://user-images.githubusercontent.com/17407489/205067105-4511a31e-9e95-407c-ae44-c8699e46d780.png">|<img width="911" alt="github-pr-review_error" src="https://user-images.githubusercontent.com/17407489/205067361-f22254a8-7211-457e-82a1-006a4cfc3c22.png">|
#### github-pr-check
|`cargo clippy`|`cargo clippy -- -Dwarnings`|
|---|---|
|<img width="855" alt="github-pr-check_warning" src="https://user-images.githubusercontent.com/17407489/205067697-029aceba-a143-4183-85de-a4ff22c2ed27.png">|<img width="867" alt="github-pr-check_error" src="https://user-images.githubusercontent.com/17407489/205067734-fc7decb6-21df-49b0-9cd6-83bc40cd26ec.png">|
2022-11-09 14:43:49 +01:00
### `filter_mode`
2022-11-09 14:43:49 +01:00
Optional. Filtering mode for the reviewdog command [added,diff_context,file,nofilter].
Default is added.
2022-11-09 14:43:49 +01:00
### `fail_on_error`
2022-11-09 14:43:49 +01:00
Optional. Exit code for reviewdog when errors are found [`true`, `false`]
Default is `false`.
2022-11-09 14:43:49 +01:00
### `reviewdog_flags`
2022-11-09 14:43:49 +01:00
Optional. Additional reviewdog flags
2022-11-09 14:43:49 +01:00
### `reviewdog_version`
2022-11-09 14:43:49 +01:00
Optional. Install a specific version of reviewdog.
By default, the latest version of reviewdog is installed.