Class: Komenda::ProcessBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/komenda/process_builder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(command, options = {}) ⇒ ProcessBuilder

Returns a new instance of ProcessBuilder.

Parameters:

  • command (String, String[])
  • options (Hash) (defaults to: {})


13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/komenda/process_builder.rb', line 13

def initialize(command, options = {})
  defaults = {
    env: {},
    use_bundler_env: false,
    cwd: nil,
    fail_on_fail: false,
    events: {}
  }
  options = defaults.merge(options)

  self.command = command
  self.env = options[:env]
  self.use_bundler_env = options[:use_bundler_env]
  self.cwd = options[:cwd]
  self.fail_on_fail = options[:fail_on_fail]
  self.events = options[:events]
end

Instance Attribute Details

#commandObject

Returns the value of attribute command.



3
4
5
# File 'lib/komenda/process_builder.rb', line 3

def command
  @command
end

#cwdObject

Returns the value of attribute cwd.



7
8
9
# File 'lib/komenda/process_builder.rb', line 7

def cwd
  @cwd
end

#envObject

Returns the value of attribute env.



5
6
7
# File 'lib/komenda/process_builder.rb', line 5

def env
  @env
end

#eventsObject

Returns the value of attribute events.



9
10
11
# File 'lib/komenda/process_builder.rb', line 9

def events
  @events
end

#fail_on_failObject

Returns the value of attribute fail_on_fail.



8
9
10
# File 'lib/komenda/process_builder.rb', line 8

def fail_on_fail
  @fail_on_fail
end

#use_bundler_envObject

Returns the value of attribute use_bundler_env.



6
7
8
# File 'lib/komenda/process_builder.rb', line 6

def use_bundler_env
  @use_bundler_env
end

Instance Method Details

#createKomenda::Process

Returns:



32
33
34
# File 'lib/komenda/process_builder.rb', line 32

def create
  Komenda::Process.new(self)
end

#env_finalHash

Returns:

  • (Hash)


71
72
73
74
75
76
77
78
# File 'lib/komenda/process_builder.rb', line 71

def env_final
  if !use_bundler_env && Object.const_defined?('Bundler')
    env_original = bundler_clean_env
  else
    env_original = ENV.to_hash
  end
  env_original.merge(env)
end