Your all-in-one ruby Pronto runner.
This GitHub Action runs Pronto runners on your Ruby project diffs and reports back with a GitHub Check Run.
The docker image of this Action includes the following Pronto Runners:
- brakeman
- bundler_audit
- eslint_npm
- fasterer
- flay
poper(removed—no support for pronto 0.11)- rails_best_practices
- rails_schema
rails_data_schema(removed—no support for pronto 0.11)- reek
- rubocop
- scss
- yamllint
- stylelint
name | description | default |
---|---|---|
runners |
Space-separated list of pronto runners to run. Must be the preinstalled runners from the list above. | rubocop |
target |
The git target pronto will diff against (-c ) |
origin/master |
A GitHub token is available by default when using actions, but you must include it in the env
map for this Action to use when creating a check run.
Be sure to include the ENV variable in your job step:
- uses: adwerx/pronto-ruby
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
That's it!
Pronto can be configured via the .pronto.yml
configuration file in your repo.
With the defaults (only rubocop):
name: Pronto
on:
- push
- pull_request
jobs:
run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: git fetch origin master --depth=1
- uses: adwerx/pronto-ruby@main # use a tag version here
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
With specific runners:
name: Pronto
# ...
with:
runners: >-
rubocop rails_schema yamllint
With eslint_npm
runner using locally installed eslint:
name: Pronto
# ...
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- run: git fetch origin master --depth=1
- uses: actions/setup-node@v1
- run: yarn install --ignore-optional --ignore-scripts --frozen-lockfile --non-interactive
- uses: adwerx/pronto-ruby@main # use a tag version here
with:
runners: eslint_npm # ...
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
See CONTRIBUTING.md