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.



5658
5659
5660
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5658

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

Instance Attribute Details

#ai_skill_analysisGoogle::Apis::ContaineranalysisV1beta1::AiSkillAnalysisNote

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



5514
5515
5516
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5514

def ai_skill_analysis
  @ai_skill_analysis
end

#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



5526
5527
5528
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5526

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



5533
5534
5535
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5533

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



5539
5540
5541
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5539

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)


5545
5546
5547
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5545

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



5550
5551
5552
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5550

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



5557
5558
5559
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5557

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)


5562
5563
5564
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5562

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



5568
5569
5570
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5568

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)


5574
5575
5576
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5574

def kind
  @kind
end

#long_descriptionString

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

Returns:

  • (String)


5579
5580
5581
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5579

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)


5585
5586
5587
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5585

def name
  @name
end

#packageGoogle::Apis::ContaineranalysisV1beta1::Package

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



5590
5591
5592
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5590

def package
  @package
end

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

Returns:

  • (Array<String>)


5595
5596
5597
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5595

def related_note_names
  @related_note_names
end

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



5600
5601
5602
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5600

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



5606
5607
5608
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5606

def sbom
  @sbom
end

#sbom_referenceGoogle::Apis::ContaineranalysisV1beta1::SbomReferenceNote

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



5611
5612
5613
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5611

def sbom_reference
  @sbom_reference
end

#secretGoogle::Apis::ContaineranalysisV1beta1::SecretNote

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



5616
5617
5618
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5616

def secret
  @secret
end

#short_descriptionString

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

Returns:

  • (String)


5621
5622
5623
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5621

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



5627
5628
5629
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5627

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



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

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



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

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)


5645
5646
5647
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5645

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



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

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



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

def vulnerability_assessment
  @vulnerability_assessment
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
# File 'lib/google/apis/containeranalysis_v1beta1/classes.rb', line 5663

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