Class: Google::Apis::ContaineranalysisV1alpha1::BuildDetails

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

Message encapsulating build provenance details.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BuildDetails

Returns a new instance of BuildDetails.



537
538
539
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 537

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

Instance Attribute Details

#in_toto_slsa_provenance_v1Google::Apis::ContaineranalysisV1alpha1::InTotoSlsaProvenanceV1

In-Toto Slsa Provenance V1 represents a slsa provenance meeting the slsa spec, wrapped in an in-toto statement. This allows for direct jsonification of a to- spec in-toto slsa statement with a to-spec slsa provenance. Corresponds to the JSON property inTotoSlsaProvenanceV1



504
505
506
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 504

def in_toto_slsa_provenance_v1
  @in_toto_slsa_provenance_v1
end

#intoto_provenanceGoogle::Apis::ContaineranalysisV1alpha1::InTotoProvenance

Deprecated. See InTotoStatement for the replacement. In-toto Provenance representation as defined in spec. Corresponds to the JSON property intotoProvenance



510
511
512
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 510

def intoto_provenance
  @intoto_provenance
end

#intoto_statementGoogle::Apis::ContaineranalysisV1alpha1::InTotoStatement

Spec defined at https://github.com/in-toto/attestation/tree/main/spec# statement The serialized InTotoStatement will be stored as Envelope.payload. Envelope.payloadType is always "application/vnd.in-toto+json". Corresponds to the JSON property intotoStatement



517
518
519
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 517

def intoto_statement
  @intoto_statement
end

#provenanceGoogle::Apis::ContaineranalysisV1alpha1::BuildProvenance

Provenance of a build. Contains all information needed to verify the full details about the build from source to completion. Corresponds to the JSON property provenance



523
524
525
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 523

def provenance
  @provenance
end

#provenance_bytesString

Serialized JSON representation of the provenance, used in generating the BuildSignature in the corresponding Result. After verifying the signature, provenance_bytes can be unmarshalled and compared to the provenance to confirm that it is unchanged. A base64-encoded string representation of the provenance bytes is used for the signature in order to interoperate with openssl which expects this format for signature verification. The serialized form is captured both to avoid ambiguity in how the provenance is marshalled to json as well to prevent incompatibilities with future changes. Corresponds to the JSON property provenanceBytes

Returns:

  • (String)


535
536
537
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 535

def provenance_bytes
  @provenance_bytes
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



542
543
544
545
546
547
548
# File 'lib/google/apis/containeranalysis_v1alpha1/classes.rb', line 542

def update!(**args)
  @in_toto_slsa_provenance_v1 = args[:in_toto_slsa_provenance_v1] if args.key?(:in_toto_slsa_provenance_v1)
  @intoto_provenance = args[:intoto_provenance] if args.key?(:intoto_provenance)
  @intoto_statement = args[:intoto_statement] if args.key?(:intoto_statement)
  @provenance = args[:provenance] if args.key?(:provenance)
  @provenance_bytes = args[:provenance_bytes] if args.key?(:provenance_bytes)
end