Pronto
Pronto runs analysis quickly by checking only the relevant changes. Created to be used on pull requests, but suited for other scenarios as well. Perfect if you want to find out quickly if branch introduces changes that conform to your styleguide, are DRY, don't introduce security holes and more.
Usage
Pronto runs the checks on a diff between the current HEAD and the provided commit-ish (default is master).
GitHub Integration
You can run Pronto as a step of your CI builds and get the results as comments
on GitHub commits using GithubFormatter
.
Add Pronto runners you want to use to your Gemfile:
gem 'pronto-rubocop'
or gemspec file:
s.add_development_dependency 'pronto-rubocop'
Set the GITHUB_ACCESS_TOKEN environment variable to OAuth token that has access to the repository. Then set up a rake task:
Pronto.gem_names.each { |gem_name| require "pronto/#{gem_name}" }
formatter = Pronto::Formatter::GithubFormatter.new
Pronto.run('origin/master', '.', formatter)
or run it via command line:
GITHUB_ACCESS_TOKEN=<token> bundle exec pronto run -f github -c origin/master
Local Changes
You can run Pronto locally. First, install Pronto and the runners you want to use:
gem install pronto
gem install pronto-rubocop
Then navigate to the repository you want to run Pronto on, and:
git checkout feature/branch
pronto run # Pronto runs against master by default
Run pronto
in your terminal without any arguments to see what more Pronto is
capable off.
Runners
Pronto can run various tools and libraries, as long as there's a runner for it. Currently available runners: