class Itamae::Notification
Public Class Methods
create(*args)
click to toggle source
# File lib/itamae/notification.rb, line 3 def self.create(*args) self.new(*args).tap(&:validate!) end
Public Instance Methods
action_resource()
click to toggle source
# File lib/itamae/notification.rb, line 15 def action_resource resource end
delayed?()
click to toggle source
# File lib/itamae/notification.rb, line 23 def delayed? [:delay, :delayed].include?(timing) end
immediately?()
click to toggle source
# File lib/itamae/notification.rb, line 27 def immediately? timing == :immediately end
resource()
click to toggle source
# File lib/itamae/notification.rb, line 7 def resource runner.children.find_resource_by_description(target_resource_desc) end
run()
click to toggle source
# File lib/itamae/notification.rb, line 11 def run action_resource.run(action) end
runner()
click to toggle source
# File lib/itamae/notification.rb, line 19 def runner defined_in_resource.recipe.runner end
validate!()
click to toggle source
# File lib/itamae/notification.rb, line 31 def validate! unless [:delay, :delayed, :immediately].include?(timing) Itamae.logger.error "'#{timing}' is not valid notification timing. (Valid option is delayed or immediately)" abort end end