Class: Google::Apis::ContaineranalysisV1alpha1::Note

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

Provides a detailed description of a Note.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Note

Returns a new instance of Note.



4954
4955
4956
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4954

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

Instance Attribute Details

#attestation_authorityGoogle::Apis::ContaineranalysisV1alpha1::AttestationAuthority

Note kind that represents a logical attestation "role" or "authority". For example, an organization might have one AttestationAuthority 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



4816
4817
4818
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4816

def attestation_authority
  @attestation_authority
end

#base_imageGoogle::Apis::ContaineranalysisV1alpha1::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



4823
4824
4825
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4823

def base_image
  @base_image
end

#build_typeGoogle::Apis::ContaineranalysisV1alpha1::BuildType

Note holding the version of the provider's builder and the signature of the provenance message in linked BuildDetails. Corresponds to the JSON property buildType



4829
4830
4831
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4829

def build_type
  @build_type
end

#complianceGoogle::Apis::ContaineranalysisV1alpha1::ComplianceNote

ComplianceNote encapsulates all information about a specific compliance check. Corresponds to the JSON property compliance



4834
4835
4836
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4834

def compliance
  @compliance
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)


4840
4841
4842
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4840

def create_time
  @create_time
end

#deployableGoogle::Apis::ContaineranalysisV1alpha1::Deployable

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



4845
4846
4847
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4845

def deployable
  @deployable
end

#discoveryGoogle::Apis::ContaineranalysisV1alpha1::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. The occurrence's operation will indicate the status of the analysis. Absence of an occurrence linked to this note for a resource indicates that analysis hasn't started. Corresponds to the JSON property discovery



4854
4855
4856
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4854

def discovery
  @discovery
end

#dsse_attestationGoogle::Apis::ContaineranalysisV1alpha1::DsseAttestationNote

A note describing an attestation Corresponds to the JSON property dsseAttestation



4859
4860
4861
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4859

def dsse_attestation
  @dsse_attestation
end

#expiration_timeString

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

Returns:

  • (String)


4864
4865
4866
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4864

def expiration_time
  @expiration_time
end

#kindString

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

Returns:

  • (String)


4870
4871
4872
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4870

def kind
  @kind
end

#long_descriptionString

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

Returns:

  • (String)


4875
4876
4877
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4875

def long_description
  @long_description
end

#nameString

The name of the note in the form "projects/provider_project_id/notes/ NOTE_ID" Corresponds to the JSON property name

Returns:

  • (String)


4881
4882
4883
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4881

def name
  @name
end

#packageGoogle::Apis::ContaineranalysisV1alpha1::Package

This represents a particular package that is distributed over various channels. e.g. glibc (aka libc6) is distributed by many, at various versions. Corresponds to the JSON property package



4887
4888
4889
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4887

def package
  @package
end

URLs associated with this note Corresponds to the JSON property relatedUrl



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

def related_url
  @related_url
end

#sbomGoogle::Apis::ContaineranalysisV1alpha1::DocumentNote

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



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

def sbom
  @sbom
end

#sbom_referenceGoogle::Apis::ContaineranalysisV1alpha1::SbomReferenceNote

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



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

def sbom_reference
  @sbom_reference
end

#short_descriptionString

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

Returns:

  • (String)


4908
4909
4910
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4908

def short_description
  @short_description
end

#spdx_fileGoogle::Apis::ContaineranalysisV1alpha1::FileNote

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



4914
4915
4916
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4914

def spdx_file
  @spdx_file
end

#spdx_packageGoogle::Apis::ContaineranalysisV1alpha1::PackageInfoNote

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



4920
4921
4922
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4920

def spdx_package
  @spdx_package
end

#spdx_relationshipGoogle::Apis::ContaineranalysisV1alpha1::RelationshipNote

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



4926
4927
4928
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4926

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)


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

def update_time
  @update_time
end

#upgradeGoogle::Apis::ContaineranalysisV1alpha1::UpgradeNote

An Upgrade Note represents a potential upgrade of a package to a given version. For each package version combination (i.e. bash 4.0, bash 4.1, bash 4.1.2), there will be a Upgrade Note. Corresponds to the JSON property upgrade



4939
4940
4941
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4939

def upgrade
  @upgrade
end

#vulnerability_assessmentGoogle::Apis::ContaineranalysisV1alpha1::VulnerabilityAssessmentNote

A single VulnerabilityAssessmentNote represents one particular product's vulnerability assessment for one CVE. Multiple VulnerabilityAssessmentNotes together form a Vex statement. Please go/sds-vex-example for a sample Vex statement in the CSAF format. Corresponds to the JSON property vulnerabilityAssessment



4947
4948
4949
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4947

def vulnerability_assessment
  @vulnerability_assessment
end

#vulnerability_typeGoogle::Apis::ContaineranalysisV1alpha1::VulnerabilityType

VulnerabilityType provides metadata about a security vulnerability. Corresponds to the JSON property vulnerabilityType



4952
4953
4954
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4952

def vulnerability_type
  @vulnerability_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 4959

def update!(**args)
  @attestation_authority = args[:attestation_authority] if args.key?(:attestation_authority)
  @base_image = args[:base_image] if args.key?(:base_image)
  @build_type = args[:build_type] if args.key?(:build_type)
  @compliance = args[:compliance] if args.key?(:compliance)
  @create_time = args[:create_time] if args.key?(:create_time)
  @deployable = args[:deployable] if args.key?(:deployable)
  @discovery = args[:discovery] if args.key?(:discovery)
  @dsse_attestation = args[:dsse_attestation] if args.key?(:dsse_attestation)
  @expiration_time = args[:expiration_time] if args.key?(:expiration_time)
  @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_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)
  @upgrade = args[:upgrade] if args.key?(:upgrade)
  @vulnerability_assessment = args[:vulnerability_assessment] if args.key?(:vulnerability_assessment)
  @vulnerability_type = args[:vulnerability_type] if args.key?(:vulnerability_type)
end