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.



5206
5207
5208
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5206

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>)


5173
5174
5175
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5173

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)


5182
5183
5184
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5182

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)


5191
5192
5193
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5191

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>)


5198
5199
5200
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5198

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)


5204
5205
5206
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5204

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5211
5212
5213
5214
5215
5216
5217
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5211

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