Sha256: 2413ed3708047d04f50bbe51542087064a89f543067af1c1a4969094040c4e3a

Contents?: true

Size: 627 Bytes

Versions: 19

Compression:

Stored size: 627 Bytes

Contents

# frozen_string_literal: true

module Overcommit::Hook::PreCommit
  # Runs `nginx -t` against any modified Nginx config files.
  #
  # @see https://www.nginx.com/resources/wiki/start/topics/tutorials/commandline/
  class NginxTest < Base
    MESSAGE_REGEX = /^nginx: .+ in (?<file>.+):(?<line>\d+)$/

    def run
      messages = []

      applicable_files.each do |file|
        result = execute(command + ['-c', file])
        next if result.success?

        messages += extract_messages(
          result.stderr.split("\n").grep(MESSAGE_REGEX),
          MESSAGE_REGEX
        )
      end

      messages
    end
  end
end

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
overcommit-0.58.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.57.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.56.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.55.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.54.1 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.54.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-jeygeethanmedia-0.53.1.2 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-jeygeethanmedia-0.53.1.1 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-jeygeethanmedia-0.53.1 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.53.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.52.1 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.52.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.51.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.50.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.49.1 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.49.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.48.1 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.48.0 lib/overcommit/hook/pre_commit/nginx_test.rb
overcommit-0.47.0 lib/overcommit/hook/pre_commit/nginx_test.rb