This action runs rails_best_practices with reviewdog on pull requests to improve code review experience.
inputs:
github_token:
description: GITHUB_TOKEN
default: ${{ github.token }}
workdir:
description: Working directory relative to the root directory.
default: .
### Flags for reviewdog ###
tool_name:
description: Tool name to use for reviewdog reporter.
default: rails_best_practices
level:
description: Report level for reviewdog [info,warning,error].
default: error
reporter:
description: Reporter of reviewdog command [github-check,github-pr-review,github-pr-check].
default: github-check
filter_mode:
description: |
Filtering mode for the reviewdog command [added,diff_context,file,nofilter].
Default is added.
default: added
fail_level:
description: |
If set to `none`, always use exit code 0 for reviewdog.
Otherwise, exit code 1 for reviewdog if it finds at least 1 issue with severity greater than or equal to the given level.
Possible values: [none,any,info,warning,error]
Default is `none`.
default: none
reviewdog_flags:
description: Additional reviewdog flags.
default: ''
### Flags for rails_best_practices ###
rails_best_practices_version:
description: rails_best_practices version
rails_best_practices_flags:
description: |
rails_best_practices flags (rails_best_practices --without-color --silent . <rails_best_practices_flags>)
default: ''
name: reviewdog
on: [pull_request]
jobs:
rails_best_practices:
name: runner / rails_best_practices
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: ruby/setup-ruby@1a615958ad9d422dd932dc1d5823942ee002799f # v1.227.0
- uses: blooper05/action-rails_best_practices@3dea9d97da33548a2c6064c9c070ef492989bcf9 # v2.0.0
with:
github_token: ${{ secrets.github_token }}
# Change reviewdog reporter if you need [github-check,github-pr-review,github-pr-check].
reporter: github-pr-review
# Change reporter level if you need.
# GitHub Status Check won't become failure with warning.
level: warning
You can bump version on merging Pull Requests with specific labels (bump:major,bump:minor,bump:patch). Pushing tag manually by yourself also work.
This action updates major/minor release tags on a tag push. e.g. Update v1 and v1.2 tag when released v1.2.3. ref: https://help.github.com/en/articles/about-actions#versioning-your-action
This reviewdog action itself is integrated with reviewdog to run lints which is useful for action composition based actions.
Supported linters:
- reviewdog/action-shellcheck
- reviewdog/action-shfmt
- reviewdog/action-actionlint
- reviewdog/action-yamllint
- reviewdog/action-markdownlint
- reviewdog/action-misspell
- reviewdog/action-alex
This repository uses reviewdog/action-depup to update reviewdog version.