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.



2410
2411
2412
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2410

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



2285
2286
2287
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2285

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



2292
2293
2294
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2292

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



2298
2299
2300
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2298

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



2303
2304
2305
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2303

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)


2309
2310
2311
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2309

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



2314
2315
2316
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2314

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



2323
2324
2325
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2323

def discovery
  @discovery
end

#dsse_attestationGoogle::Apis::ContaineranalysisV1alpha1::DsseAttestationNote

A note describing an attestation Corresponds to the JSON property dsseAttestation



2328
2329
2330
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2328

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)


2333
2334
2335
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2333

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)


2339
2340
2341
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2339

def kind
  @kind
end

#long_descriptionString

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

Returns:

  • (String)


2344
2345
2346
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2344

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)


2350
2351
2352
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2350

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



2356
2357
2358
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2356

def package
  @package
end

URLs associated with this note Corresponds to the JSON property relatedUrl



2361
2362
2363
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2361

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



2367
2368
2369
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2367

def sbom
  @sbom
end

#short_descriptionString

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

Returns:

  • (String)


2372
2373
2374
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2372

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



2378
2379
2380
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2378

def spdx_file
  @spdx_file
end

#spdx_packageGoogle::Apis::ContaineranalysisV1alpha1::PackageNote

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



2384
2385
2386
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2384

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



2390
2391
2392
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2390

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)


2396
2397
2398
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2396

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



2403
2404
2405
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2403

def upgrade
  @upgrade
end

#vulnerability_typeGoogle::Apis::ContaineranalysisV1alpha1::VulnerabilityType

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



2408
2409
2410
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2408

def vulnerability_type
  @vulnerability_type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 2415

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