Class: Proxy::Dynflow::Runner::Update

Inherits:
Object
  • Object
show all
Defined in:
lib/smart_proxy_dynflow/runner/update.rb

Overview

Runner::Update represents chunk of data produced by runner that can be consumed by other components, such as RunnerAction

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(continuous_output, exit_status, exit_status_timestamp: nil) ⇒ Update

Returns a new instance of Update.



12
13
14
15
16
# File 'lib/smart_proxy_dynflow/runner/update.rb', line 12

def initialize(continuous_output, exit_status, exit_status_timestamp: nil)
  @continuous_output = continuous_output
  @exit_status = exit_status
  @exit_status_timestamp = exit_status_timestamp || Time.now.utc if @exit_status
end

Instance Attribute Details

#continuous_outputObject (readonly)

Returns the value of attribute continuous_output.



10
11
12
# File 'lib/smart_proxy_dynflow/runner/update.rb', line 10

def continuous_output
  @continuous_output
end

#exit_statusObject (readonly)

Returns the value of attribute exit_status.



10
11
12
# File 'lib/smart_proxy_dynflow/runner/update.rb', line 10

def exit_status
  @exit_status
end

#exit_status_timestampObject (readonly)

Returns the value of attribute exit_status_timestamp.



10
11
12
# File 'lib/smart_proxy_dynflow/runner/update.rb', line 10

def exit_status_timestamp
  @exit_status_timestamp
end

Class Method Details

.encode_exception(context, exception, fatal = true) ⇒ Object



18
19
20
21
22
# File 'lib/smart_proxy_dynflow/runner/update.rb', line 18

def self.encode_exception(context, exception, fatal = true)
  continuous_output = ::Proxy::Dynflow::ContinuousOutput.new
  continuous_output.add_exception(context, exception)
  new(continuous_output, fatal ? 'EXCEPTION' : nil)
end