Exception: Bolt::PAL::PALError

Inherits:
Error
  • Object
show all
Defined in:
lib/bolt/pal.rb

Overview

PALError is used to convert errors from executing puppet code into Bolt::Errors

Instance Attribute Summary

Attributes inherited from Error

#details, #error_code, #issue_code, #kind

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Error

#msg, #to_h, #to_json, #to_puppet_error, unknown_plan, unknown_task

Constructor Details

#initialize(msg) ⇒ PALError

Returns a new instance of PALError.



34
35
36
# File 'lib/bolt/pal.rb', line 34

def initialize(msg)
  super(msg, 'bolt/pal-error')
end

Class Method Details

.from_error(err) ⇒ Object

Generate a Bolt::Pal::PALError for non-bolt errors



28
29
30
31
32
# File 'lib/bolt/pal.rb', line 28

def self.from_error(err)
  e = new(err.message)
  e.set_backtrace(err.backtrace)
  e
end

.from_preformatted_error(err) ⇒ Object

Puppet sometimes rescues exceptions notes the location and reraises. Return the original error.



19
20
21
22
23
24
25
# File 'lib/bolt/pal.rb', line 19

def self.from_preformatted_error(err)
  if err.cause&.is_a? Bolt::Error
    err.cause
  else
    from_error(err.cause || err)
  end
end