Sha256: 70293ed2a8c6837ace5dd9b16ac71de936ed9f9e87b45395ca00535546a73724
Contents?: true
Size: 1.24 KB
Versions: 2
Compression:
Stored size: 1.24 KB
Contents
class Lono::Inspector::Summary < Lono::Inspector::Base def perform puts "CloudFormation Template Summary:".colorize(:green) return if @options[:noop] puts "Parameters:" print_parameters("Required", required_parameters) print_parameters("Optional", optional_parameters) puts "Resources:" print_resource_types end def print_parameters(label, parameters) puts "#{label}:" if parameters.empty? puts " There are no #{label.downcase} parameters" else parameters.each do |logical_id, p| output = " #{logical_id} (#{p["Type"]})" if p["Default"] output << " Default: #{p["Default"]}" end puts output end end end def required_parameters data["Parameters"].reject { |logical_id, p| p["Default"] } end def optional_parameters data["Parameters"].select { |logical_id, p| p["Default"] } end def resource_types types = Hash.new(0) data["Resources"].each do |logical_id, resource| types[resource["Type"]] += 1 end types end def print_resource_types types = resource_types.sort_by {|r| r[1] * -1} # Hash -> 2D Array types.each do |a| type, count = a printf "%3s %s\n", count, type end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
lono-3.3.2 | lib/lono/inspector/summary.rb |
lono-3.3.0 | lib/lono/inspector/summary.rb |