Class: Google::Apis::ContaineranalysisV1::SlsaRecipe

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/containeranalysis_v1/classes.rb,
lib/google/apis/containeranalysis_v1/representations.rb,
lib/google/apis/containeranalysis_v1/representations.rb

Overview

Steps taken to build the artifact. For a TaskRun, typically each container corresponds to one step in the recipe.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SlsaRecipe

Returns a new instance of SlsaRecipe.



4556
4557
4558
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4556

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

Instance Attribute Details

#argumentsHash<String,Object>

Collection of all external inputs that influenced the build on top of recipe. definedInMaterial and recipe.entryPoint. For example, if the recipe type were " make", then this might be the flags passed to make aside from the target, which is captured in recipe.entryPoint. Depending on the recipe Type, the structure may be different. Corresponds to the JSON property arguments

Returns:

  • (Hash<String,Object>)


4523
4524
4525
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4523

def arguments
  @arguments
end

#defined_in_materialFixnum

Index in materials containing the recipe steps that are not implied by recipe. type. For example, if the recipe type were "make", then this would point to the source containing the Makefile, not the make program itself. Set to -1 if the recipe doesn't come from a material, as zero is default unset value for int64. Corresponds to the JSON property definedInMaterial

Returns:

  • (Fixnum)


4532
4533
4534
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4532

def defined_in_material
  @defined_in_material
end

#entry_pointString

String identifying the entry point into the build. This is often a path to a configuration file and/or a target label within that file. The syntax and meaning are defined by recipe.type. For example, if the recipe type were "make" , then this would reference the directory in which to run make as well as which target to use. Corresponds to the JSON property entryPoint

Returns:

  • (String)


4541
4542
4543
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4541

def entry_point
  @entry_point
end

#environmentHash<String,Object>

Any other builder-controlled inputs necessary for correctly evaluating the recipe. Usually only needed for reproducing the build but not evaluated as part of policy. Depending on the recipe Type, the structure may be different. Corresponds to the JSON property environment

Returns:

  • (Hash<String,Object>)


4548
4549
4550
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4548

def environment
  @environment
end

#typeString

URI indicating what type of recipe was performed. It determines the meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and materials. Corresponds to the JSON property type

Returns:

  • (String)


4554
4555
4556
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4554

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



4561
4562
4563
4564
4565
4566
4567
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 4561

def update!(**args)
  @arguments = args[:arguments] if args.key?(:arguments)
  @defined_in_material = args[:defined_in_material] if args.key?(:defined_in_material)
  @entry_point = args[:entry_point] if args.key?(:entry_point)
  @environment = args[:environment] if args.key?(:environment)
  @type = args[:type] if args.key?(:type)
end