Class: Jekyll::AgentAudit::Report
- Inherits:
-
Object
- Object
- Jekyll::AgentAudit::Report
- Defined in:
- lib/jekyll/agent_audit/report.rb
Constant Summary collapse
- SCHEMA_VERSION =
"1.0"
Instance Attribute Summary collapse
-
#data ⇒ Object
readonly
Returns the value of attribute data.
Instance Method Summary collapse
- #exit_code ⇒ Object
- #findings ⇒ Object
-
#initialize(findings: [], coverage: {}, diagnostics: [], documents_inspected: 0, options: {}, site_config: {}, complete: true, reference_time: Time.now.utc, operational_error: false, effective_configuration: nil, build: nil) ⇒ Report
constructor
A new instance of Report.
- #to_h ⇒ Object
Constructor Details
#initialize(findings: [], coverage: {}, diagnostics: [], documents_inspected: 0, options: {}, site_config: {}, complete: true, reference_time: Time.now.utc, operational_error: false, effective_configuration: nil, build: nil) ⇒ Report
Returns a new instance of Report.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/jekyll/agent_audit/report.rb', line 11 def initialize(findings: [], coverage: {}, diagnostics: [], documents_inspected: 0, options: {}, site_config: {}, complete: true, reference_time: Time.now.utc, operational_error: false, effective_configuration: nil, build: nil) @findings = findings.map { |f| f.is_a?(Finding) ? f : Finding.new(f) } @coverage = coverage @diagnostics = diagnostics @documents_inspected = documents_inspected @options = @complete = complete @site_config = site_config @reference_time = reference_time @operational_error = operational_error @effective_configuration = effective_configuration @build = build @data = build_data end |
Instance Attribute Details
#data ⇒ Object (readonly)
Returns the value of attribute data.
9 10 11 |
# File 'lib/jekyll/agent_audit/report.rb', line 9 def data @data end |
Instance Method Details
#exit_code ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/jekyll/agent_audit/report.rb', line 29 def exit_code return 2 if @operational_error || !@complete fail_on = @options.fetch("fail_on", "error") return 0 if fail_on == "none" return 1 if @findings.any? { |f| !f.suppressed? && f["severity"] == "error" } return 1 if fail_on == "warning" && @findings.any? { |f| !f.suppressed? && f["severity"] == "warning" } 0 end |
#findings ⇒ Object
27 |
# File 'lib/jekyll/agent_audit/report.rb', line 27 def findings = @findings |
#to_h ⇒ Object
28 |
# File 'lib/jekyll/agent_audit/report.rb', line 28 def to_h = deep_dup(@data) |