class Dust::Messages
Attributes
current_recipe[R]
Public Class Methods
new()
click to toggle source
# File lib/dust/messaging.rb, line 8 def initialize @store = {} # store non-recipe messages in _node start_recipe('_node') end
Public Instance Methods
add(msg, options = {})
click to toggle source
# File lib/dust/messaging.rb, line 15 def add(msg, options = {}) m = Message.new(msg, options) @store[@current_recipe] << m m end
collect(level = 'all')
click to toggle source
# File lib/dust/messaging.rb, line 40 def collect(level = 'all') case level when 'all' l = [ 'none', 'ok', 'warning', 'failed' ] when 'warning' l = [ 'warning', 'failed' ] when 'failed' l = [ 'failed' ] else puts "WARNING: unknown error level '#{level}', using 'all'".yellow l = [ 'none', 'ok', 'warning', 'failed' ] end errors = {} @store.each do |recipe, messages| messages.each do |msg| if l.include? msg.status errors[recipe] ||= [] errors[recipe] << msg.text end end end errors end
print_hostname_header(host)
click to toggle source
print hostname
# File lib/dust/messaging.rb, line 31 def print_hostname_header(host) puts "\n\n[ #{host} ]".blue end
print_recipe_header(recipe)
click to toggle source
print recipe name
# File lib/dust/messaging.rb, line 36 def print_recipe_header(recipe) puts "\n|#{recipe}|".green end
start_recipe(recipe)
click to toggle source
# File lib/dust/messaging.rb, line 21 def start_recipe(recipe) @current_recipe = recipe # display recipe header, unless we're starting non-recipe messages print_recipe_header(recipe) if recipe != '_node' and not $parallel @store[@current_recipe] = [] end