Class: Google::Apis::ContaineranalysisV1alpha1::Occurrence

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/containeranalysis_v1alpha1/classes.rb,
lib/google/apis/containeranalysis_v1alpha1/representations.rb,
lib/google/apis/containeranalysis_v1alpha1/representations.rb

Overview

Occurrence includes information about analysis occurrences for an image.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Occurrence

Returns a new instance of Occurrence.



5179
5180
5181
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5179

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#attestationGoogle::Apis::ContaineranalysisV1alpha1::Attestation

Occurrence that represents a single "attestation". The authenticity of an Attestation can be verified using the attached signature. If the verifier trusts the public key of the signer, then verifying the signature is sufficient to establish trust. In this circumstance, the AttestationAuthority to which this Attestation is attached is primarily useful for look-up (how to find this Attestation if you already know the Authority and artifact to be verified) and intent (which authority was this attestation intended to sign for). Corresponds to the JSON property attestation



5044
5045
5046
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5044

def attestation
  @attestation
end

#build_detailsGoogle::Apis::ContaineranalysisV1alpha1::BuildDetails

Message encapsulating build provenance details. Corresponds to the JSON property buildDetails



5049
5050
5051
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5049

def build_details
  @build_details
end

#complianceGoogle::Apis::ContaineranalysisV1alpha1::ComplianceOccurrence

An indication that the compliance checks in the associated ComplianceNote were not satisfied for particular resources or a specified reason. Corresponds to the JSON property compliance



5055
5056
5057
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5055

def compliance
  @compliance
end

#create_timeString

Output only. The time this Occurrence was created. Corresponds to the JSON property createTime

Returns:

  • (String)


5060
5061
5062
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5060

def create_time
  @create_time
end

#deploymentGoogle::Apis::ContaineranalysisV1alpha1::Deployment

The period during which some deployable was active in a runtime. Corresponds to the JSON property deployment



5065
5066
5067
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5065

def deployment
  @deployment
end

#derived_imageGoogle::Apis::ContaineranalysisV1alpha1::Derived

Derived describes the derived image portion (Occurrence) of the DockerImage relationship. This image would be produced from a Dockerfile with FROM . Corresponds to the JSON property derivedImage



5071
5072
5073
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5071

def derived_image
  @derived_image
end

#discoveredGoogle::Apis::ContaineranalysisV1alpha1::Discovered

Provides information about the scan status of a discovered resource. Corresponds to the JSON property discovered



5076
5077
5078
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5076

def discovered
  @discovered
end

#dsse_attestationGoogle::Apis::ContaineranalysisV1alpha1::DsseAttestationOccurrence

An occurrence describing an attestation on a resource Corresponds to the JSON property dsseAttestation



5081
5082
5083
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5081

def dsse_attestation
  @dsse_attestation
end

#envelopeGoogle::Apis::ContaineranalysisV1alpha1::Envelope

MUST match https://github.com/secure-systems-lab/dsse/blob/master/envelope. proto. An authenticated message of arbitrary type. Corresponds to the JSON property envelope



5087
5088
5089
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5087

def envelope
  @envelope
end

#installationGoogle::Apis::ContaineranalysisV1alpha1::Installation

This represents how a particular software package may be installed on a system. Corresponds to the JSON property installation



5092
5093
5094
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5092

def installation
  @installation
end

#kindString

Output only. This explicitly denotes which of the Occurrence details are specified. This field can be used as a filter in list requests. Corresponds to the JSON property kind

Returns:

  • (String)


5098
5099
5100
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5098

def kind
  @kind
end

#nameString

Output only. The name of the Occurrence in the form "projects/project_id/ occurrences/OCCURRENCE_ID" Corresponds to the JSON property name

Returns:

  • (String)


5104
5105
5106
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5104

def name
  @name
end

#note_nameString

An analysis note associated with this image, in the form "providers/ provider_id/notes/NOTE_ID" This field can be used as a filter in list requests. Corresponds to the JSON property noteName

Returns:

  • (String)


5111
5112
5113
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5111

def note_name
  @note_name
end

#remediationString

A description of actions that can be taken to remedy the Note Corresponds to the JSON property remediation

Returns:

  • (String)


5116
5117
5118
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5116

def remediation
  @remediation
end

#resourceGoogle::Apis::ContaineranalysisV1alpha1::Resource

Resource is an entity that can have metadata. E.g., a Docker image. Corresponds to the JSON property resource



5121
5122
5123
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5121

def resource
  @resource
end

#resource_urlString

The unique URL of the image or the container for which the Occurrence applies. For example, https://gcr.io/project/image@sha256:foo This field can be used as a filter in list requests. Corresponds to the JSON property resourceUrl

Returns:

  • (String)


5128
5129
5130
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5128

def resource_url
  @resource_url
end

#sbomGoogle::Apis::ContaineranalysisV1alpha1::DocumentOccurrence

DocumentOccurrence represents an SPDX Document Creation Information section: https://spdx.github.io/spdx-spec/2-document-creation-information/ Corresponds to the JSON property sbom



5134
5135
5136
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5134

def sbom
  @sbom
end

#sbom_referenceGoogle::Apis::ContaineranalysisV1alpha1::SbomReferenceOccurrence

The occurrence representing an SBOM reference as applied to a specific resource. The occurrence follows the DSSE specification. See https://github. com/secure-systems-lab/dsse/blob/master/envelope.md for more details. Corresponds to the JSON property sbomReference



5141
5142
5143
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5141

def sbom_reference
  @sbom_reference
end

#spdx_fileGoogle::Apis::ContaineranalysisV1alpha1::FileOccurrence

FileOccurrence represents an SPDX File Information section: https://spdx. github.io/spdx-spec/4-file-information/ Corresponds to the JSON property spdxFile



5147
5148
5149
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5147

def spdx_file
  @spdx_file
end

#spdx_packageGoogle::Apis::ContaineranalysisV1alpha1::PackageInfoOccurrence

PackageInfoOccurrence represents an SPDX Package Information section: https:// spdx.github.io/spdx-spec/3-package-information/ Corresponds to the JSON property spdxPackage



5153
5154
5155
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5153

def spdx_package
  @spdx_package
end

#spdx_relationshipGoogle::Apis::ContaineranalysisV1alpha1::RelationshipOccurrence

RelationshipOccurrence represents an SPDX Relationship section: https://spdx. github.io/spdx-spec/7-relationships-between-SPDX-elements/ Corresponds to the JSON property spdxRelationship



5159
5160
5161
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5159

def spdx_relationship
  @spdx_relationship
end

#update_timeString

Output only. The time this Occurrence was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


5164
5165
5166
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5164

def update_time
  @update_time
end

#upgradeGoogle::Apis::ContaineranalysisV1alpha1::UpgradeOccurrence

An Upgrade Occurrence represents that a specific resource_url could install a specific upgrade. This presence is supplied via local sources (i.e. it is present in the mirror and the running system has noticed its availability). Corresponds to the JSON property upgrade



5171
5172
5173
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5171

def upgrade
  @upgrade
end

#vulnerability_detailsGoogle::Apis::ContaineranalysisV1alpha1::VulnerabilityDetails

Used by Occurrence to point to where the vulnerability exists and how to fix it. Corresponds to the JSON property vulnerabilityDetails



5177
5178
5179
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5177

def vulnerability_details
  @vulnerability_details
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5184

def update!(**args)
  @attestation = args[:attestation] if args.key?(:attestation)
  @build_details = args[:build_details] if args.key?(:build_details)
  @compliance = args[:compliance] if args.key?(:compliance)
  @create_time = args[:create_time] if args.key?(:create_time)
  @deployment = args[:deployment] if args.key?(:deployment)
  @derived_image = args[:derived_image] if args.key?(:derived_image)
  @discovered = args[:discovered] if args.key?(:discovered)
  @dsse_attestation = args[:dsse_attestation] if args.key?(:dsse_attestation)
  @envelope = args[:envelope] if args.key?(:envelope)
  @installation = args[:installation] if args.key?(:installation)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @note_name = args[:note_name] if args.key?(:note_name)
  @remediation = args[:remediation] if args.key?(:remediation)
  @resource = args[:resource] if args.key?(:resource)
  @resource_url = args[:resource_url] if args.key?(:resource_url)
  @sbom = args[:sbom] if args.key?(:sbom)
  @sbom_reference = args[:sbom_reference] if args.key?(:sbom_reference)
  @spdx_file = args[:spdx_file] if args.key?(:spdx_file)
  @spdx_package = args[:spdx_package] if args.key?(:spdx_package)
  @spdx_relationship = args[:spdx_relationship] if args.key?(:spdx_relationship)
  @update_time = args[:update_time] if args.key?(:update_time)
  @upgrade = args[:upgrade] if args.key?(:upgrade)
  @vulnerability_details = args[:vulnerability_details] if args.key?(:vulnerability_details)
end