Class: AWSCDK::CloudAssemblySchema::PolicyValidationReportJson

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
cloud_assembly_schema/policy_validation_report_json.rb

Overview

The top-level structure of the policy validation report file.

Examples:

require 'aws-cdk-cloud-assembly-schema'

report = {
    version: "1.0",
    plugin_reports: [
        {
            plugin_name: "my-plugin",
            conclusion: "success",
            violations: [],
        },
    ],
}

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(plugin_reports:, version:, title: nil) ⇒ PolicyValidationReportJson

Returns a new instance of PolicyValidationReportJson.

Parameters:

  • plugin_reports (Array<AWSCDK::CloudAssemblySchema::PluginReportJson>)

    Reports from all validation plugins that ran during synthesis.

  • version (String)

    Protocol version.

  • title (String, nil) (defaults to: nil)

    Report title, if present.



25
26
27
28
29
30
31
32
# File 'cloud_assembly_schema/policy_validation_report_json.rb', line 25

def initialize(plugin_reports:, version:, title: nil)
  @plugin_reports = plugin_reports.is_a?(Array) ? plugin_reports.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CloudAssemblySchema::PluginReportJson.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : plugin_reports
  Jsii::Type.check_type(@plugin_reports, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLmNsb3VkX2Fzc2VtYmx5X3NjaGVtYS5QbHVnaW5SZXBvcnRKc29uIn0sImtpbmQiOiJhcnJheSJ9fQ==")), "pluginReports")
  @version = version
  Jsii::Type.check_type(@version, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "version")
  @title = title
  Jsii::Type.check_type(@title, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "title") unless @title.nil?
end

Instance Attribute Details

#plugin_reportsArray<AWSCDK::CloudAssemblySchema::PluginReportJson> (readonly)

Reports from all validation plugins that ran during synthesis.



37
38
39
# File 'cloud_assembly_schema/policy_validation_report_json.rb', line 37

def plugin_reports
  @plugin_reports
end

#titleString? (readonly)

Report title, if present.

Returns:

  • (String, nil)


45
46
47
# File 'cloud_assembly_schema/policy_validation_report_json.rb', line 45

def title
  @title
end

#versionString (readonly)

Protocol version.

Returns:

  • (String)


41
42
43
# File 'cloud_assembly_schema/policy_validation_report_json.rb', line 41

def version
  @version
end

Class Method Details

.jsii_propertiesObject



47
48
49
50
51
52
53
# File 'cloud_assembly_schema/policy_validation_report_json.rb', line 47

def self.jsii_properties
  {
    :plugin_reports => "pluginReports",
    :version => "version",
    :title => "title",
  }
end

Instance Method Details

#to_jsiiObject



55
56
57
58
59
60
61
62
63
# File 'cloud_assembly_schema/policy_validation_report_json.rb', line 55

def to_jsii
  result = {}
  result.merge!({
    "pluginReports" => @plugin_reports,
    "version" => @version,
    "title" => @title,
  })
  result.compact
end