Sha256: 38ef036a7e85338dc431a9d1dce6d310ef31973344c576efa6fc4c2c4ad5e539
Contents?: true
Size: 1.06 KB
Versions: 5
Compression:
Stored size: 1.06 KB
Contents
require 'knife-spork/plugins/plugin' module KnifeSpork module Plugins class Foodcritic < Plugin name :foodcritic hooks :after_check, :before_upload def perform safe_require 'foodcritic' tags = config.tags || [] fail_tags = config.fail_tags || ['any'] include_rules = config.include_rules || [] cookbooks.each do |cookbook| ui.info "Running foodcritic against #{cookbook.name}@#{cookbook.version}..." cookbook_path = cookbook.root_dir ui.info cookbook_path options = {:tags => tags, :fail_tags => fail_tags, :include_rules => include_rules} review = ::FoodCritic::Linter.new.check([cookbook_path], options) if review.failed? ui.error "Foodcritic failed!" review.to_s.split("\n").each{ |r| ui.error r.to_s } exit(1) if config.epic_fail else ui.info "Passed!" end end end def epic_fail? config.epic_fail.nil? ? 'true' : config.epic_fail end end end end
Version data entries
5 entries across 5 versions & 1 rubygems