Exception: Chef::Exceptions::RunFailedWrappingError
- Inherits:
-
RuntimeError
- Object
- RuntimeError
- Chef::Exceptions::RunFailedWrappingError
- Defined in:
- lib/chef/exceptions.rb
Overview
If a converge fails, we want to wrap the output from those errors into 1 error so we can see both issues in the output. It is possible that nil will be provided. You must call ‘fill_backtrace` to correctly populate the backtrace with the wrapped backtraces.
Instance Attribute Summary collapse
-
#wrapped_errors ⇒ Object
readonly
Returns the value of attribute wrapped_errors.
Instance Method Summary collapse
- #fill_backtrace ⇒ Object
-
#initialize(*errors) ⇒ RunFailedWrappingError
constructor
A new instance of RunFailedWrappingError.
Constructor Details
#initialize(*errors) ⇒ RunFailedWrappingError
Returns a new instance of RunFailedWrappingError.
490 491 492 493 494 495 |
# File 'lib/chef/exceptions.rb', line 490 def initialize(*errors) errors = errors.compact output = "Found #{errors.size} errors, they are stored in the backtrace" @wrapped_errors = errors super output end |
Instance Attribute Details
#wrapped_errors ⇒ Object (readonly)
Returns the value of attribute wrapped_errors.
488 489 490 |
# File 'lib/chef/exceptions.rb', line 488 def wrapped_errors @wrapped_errors end |
Instance Method Details
#fill_backtrace ⇒ Object
497 498 499 500 501 502 503 504 505 |
# File 'lib/chef/exceptions.rb', line 497 def fill_backtrace backtrace = [] wrapped_errors.each_with_index do |e, i| backtrace << "#{i + 1}) #{e.class} - #{e.}" backtrace += e.backtrace if e.backtrace backtrace << "" unless i == wrapped_errors.length - 1 end set_backtrace(backtrace) end |