Method: Sfn::Command::Lint#execute!
- Defined in:
- lib/sfn/command/lint.rb
#execute! ⇒ Object
Perform linting
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/sfn/command/lint.rb', line 11 def execute! print_only_original = config[:print_only] config[:print_only] = true file = load_template_file ui.info "#{ui.color("Template Linting (#{provider.connection.provider}): ", :bold)} #{config[:file].sub(Dir.pwd, "").sub(%r{^/}, "")}" config[:print_only] = print_only_original raw_template = parameter_scrub!(template_content(file)) if config[:print_only] ui.puts raw_template else result = lint_template(raw_template) if result == true ui.info ui.color(" -> VALID", :green, :bold) else ui.info ui.color(" -> INVALID", :red, :bold) result.each do |failure| ui.error "Result Set: #{ui.color(failure[:rule_set].name, :red, :bold)}" failure[:failures].each do |f_msg| ui.fatal f_msg end end raise "Linting failure" end end end |