Sha256: 033a220c9e81522666a95d3678fd85df220c30e2b1b4fc74a0169de05ada79d2

Contents?: true

Size: 591 Bytes

Versions: 23

Compression:

Stored size: 591 Bytes

Contents

require 'pre-commit/checks/plugin'

module PreCommit
  module Checks
    class Local < Plugin

      attr_writer :script

      def call(staged_files)
        return unless script
        output = `ruby #{script} #{staged_files.join(" ")} 2>&1`
        "#{script} failed:\n#{output}" unless $?.success?
      end

      def self.description
        "Executes a custom script located at config/pre_commit.rb"
      end

      def script
        @script ||= ["config/pre_commit.rb", "config/pre-commit.rb"].detect do |file|
          File.exist?(file)
        end
      end

    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
pre-commit-0.40.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.39.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.38.1 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.38.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.37.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.36.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.35.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.34.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.33.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.32.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.31.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.30.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.29.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.28.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.27.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.26.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.25.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.24.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.23.0 lib/plugins/pre_commit/checks/local.rb
pre-commit-0.22.1 lib/plugins/pre_commit/checks/local.rb