Sha256: dee08f8479c8b2e7f60bd9f17a224a8c6fb26a1809dcecb68ccbba4602f99f15

Contents?: true

Size: 982 Bytes

Versions: 7

Compression:

Stored size: 982 Bytes

Contents

require 'guard'
require 'guard/guard'

module Guard
  class ForgeConfig < ::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"
      ::Forge::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"
      ::Forge::Guard.project.load_config
      true
    end

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

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
forge-0.5.0 lib/guard/forge/config.rb
forge-0.4.4 lib/guard/forge/config.rb
forge-0.4.3 lib/guard/forge/config.rb
forge-0.4.2 lib/guard/forge/config.rb
forge-0.4.1 lib/guard/forge/config.rb
forge-0.4.0 lib/guard/forge/config.rb
forge-0.3.0 lib/guard/forge/config.rb