Lint your Ruby code in parallel to your builds with StandardRB. Based almost entirely off the Rubucop Action by Alberto Gimeno.
Here's an example running a build matrix and StandardRB:
name: CI
on: [push]
jobs:
Build:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: [ '2.5', '2.6', '2.7' ]
steps:
- uses: actions/checkout@v2
- name: Set up Ruby ${{matrix.ruby}}
uses: actions/setup-ruby@v1
with:
ruby-version: ${{matrix.ruby}}
- name: Build and test with Rake
run: |
gem install bundler
bundle install --jobs 4 --retry 3
bundle exec rake
StandardRB:
runs-on: ubuntu-latest
steps:
- name: standardrb
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
uses: amoeba/standardrb-action@v2
You can specify a project path if your application is not at the root of the repository:
- name: standardrb
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PROJECT_PATH: my_rails_app/
uses: amoeba/standardrb-action@v2
If a Dependabot-generated branch triggers this action, you might get an error that can be solve by setting the permissions in the yaml:
permissions:
checks: write
contents: read
You can get more context in this GitHub blog post.
Please file an Issue for bug reports, feature requests, or other comments.