Tbpgr Blog

Employee Experience Engineer tbpgr(てぃーびー) のブログ

Circle CIでRubyCriticを実行し、結果をHTMLとしてBuild artifactsに保存する

f:id:tbpg:20161014223714p:plain

Circle CIでRubyCriticを実行し、結果をHTMLとしてBuild artifactsに保存します

RubyCritic とは?

RubyCriticはRubyに関する複数の静的解析 gem ( Reek, Flay, Flog)をラップしたツールです。
詳しくは下記の記事を参照ください。

tbpgr.hatenablog.com

サンプル1

minimumスコア設定なしで実行します。常に正常終了します。

circle.yml

machine:
  timezone:
    Asia/Tokyo
  ruby:
    version: 2.3.1
general:
  artifacts:
    - tmp/rubycritic/rubycritic.html
test:
  pre:
    - mkdir -p tmp/rubycritic
    - bundle exec rubycritic --no-browser -p tmp/rubycritic/rubycritic.html lib

結果

  • Artifacts

f:id:tbpg:20161014223734p:plain

  • レポート

rubocop.html のリンクをクリックして結果レポートを開きます

Overview

f:id:tbpg:20161014223739p:plain

Code

f:id:tbpg:20161014223748p:plain

Code(詳細)

f:id:tbpg:20161014223754p:plain

Smells

f:id:tbpg:20161014223800p:plain

サンプル2

minimumスコアを90に設定して実行します。基準スコアを下回ると異常終了します。

circle.yml

machine:
  timezone:
    Asia/Tokyo
  ruby:
    version: 2.3.1
general:
  artifacts:
    - tmp/rubycritic/rubycritic.html
test:
  pre:
    - mkdir -p tmp/rubycritic
    - bundle exec rubycritic --no-browser -s 90 -p tmp/rubycritic/rubycritic.html lib

結果

  • Artifacts

f:id:tbpg:20161014223807p:plain

  • レポート

※レポートの内容は変わらない