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.



5969
5970
5971
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5969

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

Instance Attribute Details

#ai_skill_analysisGoogle::Apis::ContaineranalysisV1alpha1::AiSkillAnalysisNote

AISkillAnalysisNote provides the metadata of an AI-based skill analysis. Corresponds to the JSON property aiSkillAnalysis



5814
5815
5816
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5814

def ai_skill_analysis
  @ai_skill_analysis
end

#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



5826
5827
5828
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5826

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



5833
5834
5835
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5833

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



5839
5840
5841
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5839

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



5844
5845
5846
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5844

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)


5850
5851
5852
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5850

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



5855
5856
5857
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5855

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



5864
5865
5866
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5864

def discovery
  @discovery
end

#dsse_attestationGoogle::Apis::ContaineranalysisV1alpha1::DsseAttestationNote

A note describing an attestation Corresponds to the JSON property dsseAttestation



5869
5870
5871
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5869

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)


5874
5875
5876
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5874

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)


5880
5881
5882
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5880

def kind
  @kind
end

#long_descriptionString

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

Returns:

  • (String)


5885
5886
5887
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5885

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)


5891
5892
5893
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5891

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



5897
5898
5899
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5897

def package
  @package
end

URLs associated with this note Corresponds to the JSON property relatedUrl



5902
5903
5904
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5902

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



5908
5909
5910
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5908

def sbom
  @sbom
end

#sbom_referenceGoogle::Apis::ContaineranalysisV1alpha1::SbomReferenceNote

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



5913
5914
5915
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5913

def sbom_reference
  @sbom_reference
end

#secretGoogle::Apis::ContaineranalysisV1alpha1::SecretNote

The note representing a secret. Corresponds to the JSON property secret



5918
5919
5920
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5918

def secret
  @secret
end

#short_descriptionString

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

Returns:

  • (String)


5923
5924
5925
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5923

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



5929
5930
5931
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5929

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



5935
5936
5937
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5935

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



5941
5942
5943
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5941

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)


5947
5948
5949
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5947

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



5954
5955
5956
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5954

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



5962
5963
5964
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5962

def vulnerability_assessment
  @vulnerability_assessment
end

#vulnerability_typeGoogle::Apis::ContaineranalysisV1alpha1::VulnerabilityType

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



5967
5968
5969
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5967

def vulnerability_type
  @vulnerability_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 5974

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