This action runs rubocop with reviewdog on pull requests to improve code review experience.
By default, with reporter: github-pr-check an annotation is added to the line:
With reporter: github-pr-review a comment is added to the Pull Request Conversation:
GITHUB_TOKEN. Default is ${{ github.token }}.
Optional. Set rubocop version. Possible values:
- empty or omit: install latest version
gemfile: install version from Gemfile (Gemfile.lockshould be presented, otherwise it will fallback to latest bundler version)- version (e.g.
0.90.0): install said version
Optional. Set list of rubocop extensions with versions.
By default install rubocop-rails, rubocop-performance, rubocop-rspec, rubocop-i18n, rubocop-rake with latest versions.
Provide desired version delimited by : (e.g. rubocop-rails:1.7.1)
Possible version values:
- empty or omit (
rubocop-rails rubocop-rspec): install latest version rubocop-rails:gemfile rubocop-rspec:gemfile: install version from Gemfile (Gemfile.lockshould be presented, otherwise it will fallback to latest bundler version)- version (e.g.
rubocop-rails:1.7.1 rubocop-rspec:2.0.0): install said version
You can combine gemfile, fixed and latest bundle version as you want to.
Optional. Rubocop flags. (rubocop <rubocop_flags>).
Optional. Tool name to use for reviewdog reporter. Useful when running multiple actions with different config.
Optional. Report level for reviewdog [info, warning, error].
It's same as -level flag of reviewdog.
Optional. Reporter of reviewdog command [github-pr-check, github-check, github-pr-review].
The default is github-pr-check.
Optional. Filtering mode for the reviewdog command [added, diff_context, file, nofilter].
Default is added.
Optional. Exit code for reviewdog when errors are found [true, false].
Default is false.
Optional. Additional reviewdog flags.
Optional. The directory from which to look for and run Rubocop. Default ..
Optional. Do not install Rubocop or its extensions. Default: false.
Optional. Run Rubocop with bundle exec. Default: false.
You can create RuboCop Configuration and this action uses that config too.
name: reviewdog
on: [pull_request]
permissions:
contents: read
pull-requests: write
jobs:
rubocop:
name: runner / rubocop
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v1
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.0.0
- name: rubocop
uses: reviewdog/action-rubocop@v2
with:
rubocop_version: gemfile
rubocop_extensions: rubocop-rails:gemfile rubocop-rspec:gemfile
reporter: github-pr-review # Default is github-pr-check
