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.



5736
5737
5738
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5736

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



5596
5597
5598
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5596

def attestation
  @attestation
end

#build_detailsGoogle::Apis::ContaineranalysisV1alpha1::BuildDetails

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



5601
5602
5603
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5601

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



5607
5608
5609
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5607

def compliance
  @compliance
end

#create_timeString

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

Returns:

  • (String)


5612
5613
5614
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5612

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



5617
5618
5619
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5617

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



5623
5624
5625
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5623

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



5628
5629
5630
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5628

def discovered
  @discovered
end

#dsse_attestationGoogle::Apis::ContaineranalysisV1alpha1::DsseAttestationOccurrence

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



5633
5634
5635
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5633

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



5639
5640
5641
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5639

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



5644
5645
5646
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5644

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)


5650
5651
5652
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5650

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)


5656
5657
5658
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5656

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)


5663
5664
5665
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5663

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)


5668
5669
5670
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5668

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



5673
5674
5675
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5673

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)


5680
5681
5682
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5680

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



5686
5687
5688
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5686

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



5693
5694
5695
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5693

def sbom_reference
  @sbom_reference
end

#secretGoogle::Apis::ContaineranalysisV1alpha1::SecretOccurrence

The occurrence provides details of a secret. Corresponds to the JSON property secret



5698
5699
5700
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5698

def secret
  @secret
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



5704
5705
5706
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5704

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



5710
5711
5712
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5710

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



5716
5717
5718
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5716

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)


5721
5722
5723
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5721

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



5728
5729
5730
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5728

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



5734
5735
5736
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5734

def vulnerability_details
  @vulnerability_details
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5741

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)
  @secret = args[:secret] if args.key?(:secret)
  @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