Class: Outback::TaskHelper

Inherits:
Object
  • Object
show all
Defined in:
lib/outback/task_helper.rb

Instance Method Summary collapse

Constructor Details

#initialize(manager = nil) ⇒ TaskHelper

Returns a new instance of TaskHelper.



6
7
8
# File 'lib/outback/task_helper.rb', line 6

def initialize( manager=nil )
  @manager = manager
end

Instance Method Details

#cacheObject



10
11
12
13
14
15
16
# File 'lib/outback/task_helper.rb', line 10

def cache
  if @manager and cache = @manager.cache
    cache
  else
    {}
  end
end

#sys(command) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
# File 'lib/outback/task_helper.rb', line 26

def sys( command )
  result = {}
  Dir.chdir(workdir) do
    status = Open4.popen4(*command) do |pid, i, o, e|
      result[:stdout] = o.read
      result[:stderr] = e.read
    end
    result[:exit_status] = status.exitstatus
  end
  return result
end

#workdirObject



18
19
20
21
22
23
24
# File 'lib/outback/task_helper.rb', line 18

def workdir
  if @manager and workdir = @manager.workdir
    workdir
  else
    Dir.getwd
  end
end