class Chef::Formatters::Minimal
Formatters::Minimal
¶ ↑
Shows the progress of the chef run by printing single characters, and displays a summary of updates at the conclusion of the run. For events that don't have meaningful status information (loading a file, syncing a cookbook) a dot is printed. For resources, a dot, 'S' or 'U' is printed if the resource is up to date, skipped by not_if/only_if, or updated, respectively.
Attributes
Public Class Methods
Chef::Formatters::Base::new
# File lib/chef/formatters/minimal.rb, line 23 def initialize(out, err) super @updated_resources = [] @updates_by_resource = Hash.new { |h, k| h[k] = [] } end
Public Instance Methods
Called when the converge phase is finished.
# File lib/chef/formatters/minimal.rb, line 141 def converge_complete puts "\n" puts "System converged." if updated_resources.empty? puts "no resources updated" else puts "\n" puts "resources updated this run:" updated_resources.each do |resource| puts "* #{resource}" updates_by_resource[resource.name].flatten.each do |update| puts " - #{update}" end puts "\n" end end end
Called before convergence starts
# File lib/chef/formatters/minimal.rb, line 136 def converge_start(run_context) puts "Converging #{run_context.resource_collection.all_resources.size} resources" end
Called when cookbook cleaning is finished.
# File lib/chef/formatters/minimal.rb, line 96 def cookbook_clean_complete; end
Called before unneeded cookbooks are removed
# File lib/chef/formatters/minimal.rb, line 88 def cookbook_clean_start; end
Called when the cookbook collection is returned from the server.
# File lib/chef/formatters/minimal.rb, line 83 def cookbook_resolution_complete(cookbook_collection); end
Called when there is an error getting the cookbook collection from the server.
# File lib/chef/formatters/minimal.rb, line 80 def cookbook_resolution_failed(expanded_run_list, exception); end
Called before the cookbook collection is fetched from the server.
# File lib/chef/formatters/minimal.rb, line 74 def cookbook_resolution_start(expanded_run_list) puts "Resolving cookbooks for run list: #{expanded_run_list.inspect}" end
Called after all cookbooks have been sync'd.
# File lib/chef/formatters/minimal.rb, line 112 def cookbook_sync_complete puts "done." end
Called before cookbook sync starts
# File lib/chef/formatters/minimal.rb, line 99 def cookbook_sync_start(cookbook_count) puts "Synchronizing cookbooks" end
Chef::Formatters::Base#file_load_failed
# File lib/chef/formatters/minimal.rb, line 126 def file_load_failed(path, exception) super end
Called after a file in a cookbook is loaded.
# File lib/chef/formatters/minimal.rb, line 122 def file_loaded(path) print "." end
Called after an individual handler has run
# File lib/chef/formatters/minimal.rb, line 202 def handler_executed(handler); end
Called after all handlers have executed
# File lib/chef/formatters/minimal.rb, line 205 def handlers_completed; end
Called before handlers run
# File lib/chef/formatters/minimal.rb, line 199 def handlers_start(handler_count); end
Called when cookbook loading starts.
# File lib/chef/formatters/minimal.rb, line 117 def library_load_start(file_count) puts "Compiling cookbooks" end
An uncategorized message. This supports the case that a user needs to pass output that doesn't fit into one of the callbacks above. Note that there's no semantic information about the content or importance of the message. That means that if you're using this too often, you should add a callback for it.
# File lib/chef/formatters/minimal.rb, line 212 def msg(message); end
Default and override attrs from roles have been computed, but not yet applied. Normal attrs from JSON have been added to the node.
# File lib/chef/formatters/minimal.rb, line 71 def node_load_completed(node, expanded_run_list, config); end
Failed to load node data from the server
# File lib/chef/formatters/minimal.rb, line 67 def node_load_failed(node_name, exception, config); end
# File lib/chef/formatters/minimal.rb, line 64 def node_load_start(node_name, config); end
Called right after ohai runs.
# File lib/chef/formatters/minimal.rb, line 49 def ohai_completed(node); end
Called when recipes have been loaded.
# File lib/chef/formatters/minimal.rb, line 131 def recipe_load_complete puts "done." end
# File lib/chef/formatters/minimal.rb, line 57 def registration_completed; end
Failed to register this client with the server.
Chef::Formatters::Base#registration_failed
# File lib/chef/formatters/minimal.rb, line 60 def registration_failed(node_name, exception, config) super end
About to attempt to register as node_name
# File lib/chef/formatters/minimal.rb, line 55 def registration_start(node_name, config); end
Called after the file at path
is removed. It may be removed if the cookbook containing it was removed from the run list, or if the file was removed from the cookbook.
# File lib/chef/formatters/minimal.rb, line 93 def removed_cookbook_file(path); end
Called before action is executed on a resource.
# File lib/chef/formatters/minimal.rb, line 160 def resource_action_start(resource, action, notification_type = nil, notifier = nil); end
Called after load_current_resource has run.
# File lib/chef/formatters/minimal.rb, line 174 def resource_current_state_loaded(resource, action, current_resource); end
Called when a resource fails and will not be retried.
# File lib/chef/formatters/minimal.rb, line 166 def resource_failed(resource, action, exception); end
Called when a resource fails, but will retry.
# File lib/chef/formatters/minimal.rb, line 163 def resource_failed_retriable(resource, action, retry_count, exception); end
Called when a resource action has been skipped b/c of a conditional
# File lib/chef/formatters/minimal.rb, line 169 def resource_skipped(resource, action, conditional) print "S" end
Called when a resource has no converge actions, e.g., it was already correct.
# File lib/chef/formatters/minimal.rb, line 177 def resource_up_to_date(resource, action) print "." end
Called when a change has been made to a resource. May be called multiple times per resource, e.g., a file may have its content updated, and then its permissions updated.
# File lib/chef/formatters/minimal.rb, line 188 def resource_update_applied(resource, action, update) @updates_by_resource[resource.name] << Array(update)[0] end
Called after a resource has been completely converged.
# File lib/chef/formatters/minimal.rb, line 193 def resource_updated(resource, action) updated_resources << resource print "U" end
Called at the end of the Chef
run.
# File lib/chef/formatters/minimal.rb, line 39 def run_completed(node) puts "Infra phase complete, #{@updated_resources.size} resources updated" end
called at the end of a failed run
# File lib/chef/formatters/minimal.rb, line 44 def run_failed(exception) puts "Infra phase failed. #{@updated_resources.size} resources updated" end
Called at the very start of a Chef
Run
# File lib/chef/formatters/minimal.rb, line 30 def run_start(version, run_status) puts_line "#{ChefUtils::Dist::Infra::PRODUCT}, version #{version}" puts_line "Patents: #{ChefUtils::Dist::Org::PATENTS}" puts_line "OpenSSL FIPS 140 mode enabled" if Chef::Config[:fips] puts_line "Infra Phase starting" puts_line "Targeting node: #{Chef::Config.target_mode.host}" if Chef::Config.target_mode? end
Already have a client key, assuming this node has registered.
# File lib/chef/formatters/minimal.rb, line 52 def skipping_registration(node_name, config); end
Called when cookbook cookbook
has been sync'd
# File lib/chef/formatters/minimal.rb, line 104 def synchronized_cookbook(cookbook_name, cookbook) print "." end
Called when an individual file in a cookbook has been updated
# File lib/chef/formatters/minimal.rb, line 109 def updated_cookbook_file(cookbook_name, path); end