Class: Devkitkat::Executor

Inherits:
Object
  • Object
show all
Defined in:
lib/devkitkat/executor.rb,
lib/devkitkat/executor/local.rb,
lib/devkitkat/executor/docker.rb

Defined Under Namespace

Classes: Docker, Local

Constant Summary collapse

SCRIPT_HEADER =
"#!/bin/bash\nset -e\n"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(service) ⇒ Executor

Returns a new instance of Executor.



16
17
18
19
# File 'lib/devkitkat/executor.rb', line 16

def initialize(service)
  @service = service
  delete_script_file
end

Instance Attribute Details

#scriptsObject (readonly)

Returns the value of attribute scripts.



6
7
8
# File 'lib/devkitkat/executor.rb', line 6

def scripts
  @scripts
end

#serviceObject (readonly)

Returns the value of attribute service.



6
7
8
# File 'lib/devkitkat/executor.rb', line 6

def service
  @service
end

Instance Method Details

#commitObject



29
30
31
32
33
# File 'lib/devkitkat/executor.rb', line 29

def commit
  executor.commit(script_file)
ensure
  delete_script_file
end

#write(cmd) ⇒ Object



21
22
23
24
25
26
27
# File 'lib/devkitkat/executor.rb', line 21

def write(cmd)
  ensure_script_file

  File.open(script_file, 'a') do |stream|
    stream.write(cmd + "\n")
  end
end