Class: Google::Apis::ContaineranalysisV1beta1::Note

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

Overview

A type of analysis that can be done for a resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Note

Returns a new instance of Note.



5006
5007
5008
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5006

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

Instance Attribute Details

#attestation_authorityGoogle::Apis::ContaineranalysisV1beta1::Authority

Note kind that represents a logical attestation "role" or "authority". For example, an organization might have one Authority for "QA" and one for " build". This note is intended to act strictly as a grouping mechanism for the attached occurrences (Attestations). This grouping mechanism also provides a security boundary, since IAM ACLs gate the ability for a principle to attach an occurrence to a given note. It also provides a single point of lookup to find all attached attestation occurrences, even if they don't all live in the same project. Corresponds to the JSON property attestationAuthority



4879
4880
4881
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4879

def attestation_authority
  @attestation_authority
end

#base_imageGoogle::Apis::ContaineranalysisV1beta1::Basis

Basis describes the base image portion (Note) of the DockerImage relationship. Linked occurrences are derived from this or an equivalent image via: FROM Or an equivalent reference, e.g. a tag of the resource_url. Corresponds to the JSON property baseImage



4886
4887
4888
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4886

def base_image
  @base_image
end

#buildGoogle::Apis::ContaineranalysisV1beta1::Build

Note holding the version of the provider's builder and the signature of the provenance message in the build details occurrence. Corresponds to the JSON property build



4892
4893
4894
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4892

def build
  @build
end

#create_timeString

Output only. The time this note was created. This field can be used as a filter in list requests. Corresponds to the JSON property createTime

Returns:

  • (String)


4898
4899
4900
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4898

def create_time
  @create_time
end

#deployableGoogle::Apis::ContaineranalysisV1beta1::Deployable

An artifact that can be deployed in some runtime. Corresponds to the JSON property deployable



4903
4904
4905
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4903

def deployable
  @deployable
end

#discoveryGoogle::Apis::ContaineranalysisV1beta1::Discovery

A note that indicates a type of analysis a provider would perform. This note exists in a provider's project. A Discovery occurrence is created in a consumer's project at the start of analysis. Corresponds to the JSON property discovery



4910
4911
4912
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4910

def discovery
  @discovery
end

#expiration_timeString

Time of expiration for this note. Empty if note does not expire. Corresponds to the JSON property expirationTime

Returns:

  • (String)


4915
4916
4917
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4915

def expiration_time
  @expiration_time
end

#intotoGoogle::Apis::ContaineranalysisV1beta1::InToto

This contains the fields corresponding to the definition of a software supply chain step in an in-toto layout. This information goes into a Grafeas note. Corresponds to the JSON property intoto



4921
4922
4923
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4921

def intoto
  @intoto
end

#kindString

Output only. The type of analysis. This field can be used as a filter in list requests. Corresponds to the JSON property kind

Returns:

  • (String)


4927
4928
4929
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4927

def kind
  @kind
end

#long_descriptionString

A detailed description of this note. Corresponds to the JSON property longDescription

Returns:

  • (String)


4932
4933
4934
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4932

def long_description
  @long_description
end

#nameString

Output only. The name of the note in the form of projects/[PROVIDER_ID]/notes/ [NOTE_ID]. Corresponds to the JSON property name

Returns:

  • (String)


4938
4939
4940
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4938

def name
  @name
end

#packageGoogle::Apis::ContaineranalysisV1beta1::Package

Package represents a particular package version. Corresponds to the JSON property package



4943
4944
4945
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4943

def package
  @package
end

Other notes related to this note. Corresponds to the JSON property relatedNoteNames

Returns:

  • (Array<String>)


4948
4949
4950
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4948

def related_note_names
  @related_note_names
end

URLs associated with this note. Corresponds to the JSON property relatedUrl



4953
4954
4955
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4953

def related_url
  @related_url
end

#sbomGoogle::Apis::ContaineranalysisV1beta1::DocumentNote

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



4959
4960
4961
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4959

def sbom
  @sbom
end

#sbom_referenceGoogle::Apis::ContaineranalysisV1beta1::SbomReferenceNote

The note representing an SBOM reference. Corresponds to the JSON property sbomReference



4964
4965
4966
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4964

def sbom_reference
  @sbom_reference
end

#short_descriptionString

A one sentence description of this note. Corresponds to the JSON property shortDescription

Returns:

  • (String)


4969
4970
4971
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4969

def short_description
  @short_description
end

#spdx_fileGoogle::Apis::ContaineranalysisV1beta1::FileNote

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



4975
4976
4977
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4975

def spdx_file
  @spdx_file
end

#spdx_packageGoogle::Apis::ContaineranalysisV1beta1::PackageInfoNote

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



4981
4982
4983
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4981

def spdx_package
  @spdx_package
end

#spdx_relationshipGoogle::Apis::ContaineranalysisV1beta1::RelationshipNote

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



4987
4988
4989
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4987

def spdx_relationship
  @spdx_relationship
end

#update_timeString

Output only. The time this note was last updated. This field can be used as a filter in list requests. Corresponds to the JSON property updateTime

Returns:

  • (String)


4993
4994
4995
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4993

def update_time
  @update_time
end

#vulnerabilityGoogle::Apis::ContaineranalysisV1beta1::Vulnerability

Vulnerability provides metadata about a security vulnerability in a Note. Corresponds to the JSON property vulnerability



4998
4999
5000
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 4998

def vulnerability
  @vulnerability
end

#vulnerability_assessmentGoogle::Apis::ContaineranalysisV1beta1::VulnerabilityAssessmentNote

A single VulnerabilityAssessmentNote represents one particular product's vulnerability assessment for one CVE. Corresponds to the JSON property vulnerabilityAssessment



5004
5005
5006
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5004

def vulnerability_assessment
  @vulnerability_assessment
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5011

def update!(**args)
  @attestation_authority = args[:attestation_authority] if args.key?(:attestation_authority)
  @base_image = args[:base_image] if args.key?(:base_image)
  @build = args[:build] if args.key?(:build)
  @create_time = args[:create_time] if args.key?(:create_time)
  @deployable = args[:deployable] if args.key?(:deployable)
  @discovery = args[:discovery] if args.key?(:discovery)
  @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
  @intoto = args[:intoto] if args.key?(:intoto)
  @kind = args[:kind] if args.key?(:kind)
  @long_description = args[:long_description] if args.key?(:long_description)
  @name = args[:name] if args.key?(:name)
  @package = args[:package] if args.key?(:package)
  @related_note_names = args[:related_note_names] if args.key?(:related_note_names)
  @related_url = args[:related_url] if args.key?(:related_url)
  @sbom = args[:sbom] if args.key?(:sbom)
  @sbom_reference = args[:sbom_reference] if args.key?(:sbom_reference)
  @short_description = args[:short_description] if args.key?(:short_description)
  @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)
  @vulnerability = args[:vulnerability] if args.key?(:vulnerability)
  @vulnerability_assessment = args[:vulnerability_assessment] if args.key?(:vulnerability_assessment)
end