Sha256: 124019ecb85a0089b2a75a8d17e09db50d6926fd01c1b189bdc96fdfa672732c

Contents?: true

Size: 974 Bytes

Versions: 6

Compression:

Stored size: 974 Bytes

Contents

require 'guard'
require 'guard/guard'

module Guard
  class MarvConfig < ::Guard::Guard
    def initialize(watchers=[], options={})
      super
    end

    # Called on Ctrl-Z signal
    # This method should be mainly used for "reload" (really!) actions like reloading passenger/spork/bundler/...
    def reload
      UI.info "Reloading project config"
      ::Marv::Guard.project.load_config
    end

    # Called on Ctrl-\ signal
    # This method should be principally used for long action like running all specs/tests/...
    def run_all
      UI.info "Reloading project config"
      ::Marv::Guard.project.load_config
      true
    end

    # Called on file(s) modifications
    def run_on_change(paths)
      UI.info "Project config changed, reloading"
      ::Marv::Guard.project.load_config
      ::Marv::Guard.builder = ::Marv::Builder.new(::Marv::Guard.project)
      # Rebuild everything if the config changes
      ::Marv::Guard.builder.build
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
marv-0.2.5 lib/guard/marv/config.rb
marv-0.2.4 lib/guard/marv/config.rb
marv-0.2.3 lib/guard/marv/config.rb
marv-0.2.2 lib/guard/marv/config.rb
marv-0.2.1 lib/guard/marv/config.rb
marv-0.2.0 lib/guard/marv/config.rb