Class: Fudge::Tasks::EachDirectory

Inherits:
CompositeTask show all
Defined in:
lib/fudge/tasks/each_directory.rb

Overview

A task which runs a number of other tasks in a given directory (relative to the current directory)

Instance Attribute Summary collapse

Attributes inherited from CompositeTask

#description

Attributes inherited from Task

#args, #options

Instance Method Summary collapse

Methods inherited from CompositeTask

#tasks

Methods inherited from Task

name

Constructor Details

#initialize(pattern, *args) ⇒ EachDirectory

Returns a new instance of EachDirectory.



8
9
10
11
12
# File 'lib/fudge/tasks/each_directory.rb', line 8

def initialize(pattern, *args)
  super(*args)

  @pattern = pattern
end

Instance Attribute Details

#excludeObject

Returns the value of attribute exclude.



6
7
8
# File 'lib/fudge/tasks/each_directory.rb', line 6

def exclude
  @exclude
end

Instance Method Details

#run(options = {}) ⇒ Object

Run task



15
16
17
18
19
20
21
22
23
# File 'lib/fudge/tasks/each_directory.rb', line 15

def run(options={})
  formatter = get_formatter(options)
  directories.all? do |dir|
    skip_directory?(dir) ||
      WithDirectory.new(dir, formatter).inside do
        super
      end
  end
end