From 4a0ea5e8f2266ab6d80ab494838fb6b786ae37b6 Mon Sep 17 00:00:00 2001 From: Mattia Roccoberton Date: Wed, 2 Jun 2021 15:43:09 +0200 Subject: [PATCH] Add linter workflow --- .fasterer.yml | 6 ++++++ .github/workflows/linters.yml | 35 +++++++++++++++++++++++++++++++++++ .github/workflows/specs.yml | 1 + .reek.yml | 6 ++++-- .reviewdog.yml | 14 ++++++++++++++ .rubocop.yml | 3 +++ Gemfile | 21 +++++++++++---------- README.md | 3 ++- 8 files changed, 76 insertions(+), 13 deletions(-) create mode 100644 .fasterer.yml create mode 100644 .github/workflows/linters.yml create mode 100644 .reviewdog.yml diff --git a/.fasterer.yml b/.fasterer.yml new file mode 100644 index 0000000..c8f73c0 --- /dev/null +++ b/.fasterer.yml @@ -0,0 +1,6 @@ +--- +exclude_paths: + - bin/* + - db/schema.rb + - spec/dummy/**/* + - vendor/**/* diff --git a/.github/workflows/linters.yml b/.github/workflows/linters.yml new file mode 100644 index 0000000..f370c43 --- /dev/null +++ b/.github/workflows/linters.yml @@ -0,0 +1,35 @@ +--- +name: Linters + +on: + push: + branches: + - master + pull_request: + +jobs: + reviewdog: + name: reviewdog + runs-on: ubuntu-latest + + steps: + - name: Check out code + uses: actions/checkout@v2 + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: '2.7' + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + + - uses: reviewdog/action-setup@v1 + with: + reviewdog_version: latest + + - name: Run reviewdog + env: + REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + reviewdog -fail-on-error -reporter=github-pr-review -runners=brakeman,fasterer,reek,rubocop + + # NOTE: check with: reviewdog -fail-on-error -reporter=github-pr-review -runners=fasterer -diff="git diff" -tee diff --git a/.github/workflows/specs.yml b/.github/workflows/specs.yml index 28913eb..b240719 100644 --- a/.github/workflows/specs.yml +++ b/.github/workflows/specs.yml @@ -1,3 +1,4 @@ +--- name: Specs on: diff --git a/.reek.yml b/.reek.yml index 60ec1c7..0435507 100644 --- a/.reek.yml +++ b/.reek.yml @@ -1,7 +1,9 @@ --- exclude_paths: - - spec/dummy - - vendor + - bin/* + - db/schema.rb + - spec/dummy/**/* + - vendor/**/* detectors: IrresponsibleModule: diff --git a/.reviewdog.yml b/.reviewdog.yml new file mode 100644 index 0000000..04ad1a0 --- /dev/null +++ b/.reviewdog.yml @@ -0,0 +1,14 @@ +--- +runner: + brakeman: + cmd: bin/brakeman + level: info + fasterer: + cmd: bin/fasterer + level: info + reek: + cmd: bin/reek + level: info + rubocop: + cmd: bin/rubocop + level: info diff --git a/.rubocop.yml b/.rubocop.yml index 0042f74..6ac3310 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -1,3 +1,4 @@ +--- inherit_from: - https://relaxed.ruby.style/rubocop.yml @@ -10,7 +11,9 @@ require: AllCops: Exclude: - bin/* + - db/schema.rb - spec/dummy/**/* + - vendor/**/* NewCops: enable Gemspec/RequiredRubyVersion: diff --git a/Gemfile b/Gemfile index 43e4de0..5742c99 100644 --- a/Gemfile +++ b/Gemfile @@ -4,16 +4,6 @@ source 'https://rubygems.org' gemspec -# Linters -gem 'brakeman' -gem 'fasterer' -gem 'reek' -gem 'rubocop' -gem 'rubocop-packaging' -gem 'rubocop-performance' -gem 'rubocop-rails' -gem 'rubocop-rspec' - group :development, :test do gem 'activestorage', '~> 6.0' gem 'capybara', '~> 3.33' @@ -24,5 +14,16 @@ group :development, :test do gem 'sprockets-rails', '~> 3.2' gem 'sqlite3', '~> 1.4' + # Linters + gem 'brakeman' + gem 'fasterer' + gem 'reek' + gem 'rubocop' + gem 'rubocop-packaging' + gem 'rubocop-performance' + gem 'rubocop-rails' + gem 'rubocop-rspec' + + # Tools gem 'pry-rails' end diff --git a/README.md b/README.md index d204737..85431ad 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ -# ActiveAdmin Quill Editor [![Gem Version](https://badge.fury.io/rb/activeadmin_quill_editor.svg)](https://badge.fury.io/rb/activeadmin_quill_editor) [![Gem downloads](https://badgen.net/rubygems/dt/activeadmin_quill_editor)](https://rubygems.org/gems/activeadmin_quill_editor) [![Specs](https://github.com/blocknotes/activeadmin_quill_editor/actions/workflows/specs.yml/badge.svg)](https://github.com/blocknotes/activeadmin_quill_editor/actions/workflows/specs.yml) +# ActiveAdmin Quill Editor +[![gem version](https://badge.fury.io/rb/activeadmin_quill_editor.svg)](https://badge.fury.io/rb/activeadmin_quill_editor) [![gem downloads](https://badgen.net/rubygems/dt/activeadmin_quill_editor)](https://rubygems.org/gems/activeadmin_quill_editor) [![Linters](https://github.com/blocknotes/activeadmin_quill_editor/actions/workflows/linters.yml/badge.svg)](https://github.com/blocknotes/activeadmin_quill_editor/actions/workflows/linters.yml) [![specs](https://github.com/blocknotes/activeadmin_quill_editor/actions/workflows/specs.yml/badge.svg)](https://github.com/blocknotes/activeadmin_quill_editor/actions/workflows/specs.yml) An Active Admin plugin to use [Quill Rich Text Editor](https://github.com/quilljs/quill) in form fields.