module CapistranoDirty

Constants

PATTERNS
VERSION

Public Class Methods

dirty?(path = nil) click to toggle source
# File lib/capistrano_dirty.rb, line 11
def self.dirty?(path = nil)
  path ||= Dir.pwd

  Dir["#{path}/**/*"].each do |filename|
    next unless File.file?(filename) # skip directories

    file = File.read(filename)
    PATTERNS.each do |name, pattern|
      matches = CapistranoDirty::PatternFinder.match(file, pattern)

      relative_filename = filename.sub(%r{\A#{path}/?}, '')

      return PatternMatch.new(name, relative_filename) if matches
    end
  end

  false
end