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.



6243
6244
6245
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6243

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


6210
6211
6212
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6210

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)


6219
6220
6221
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6219

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)


6228
6229
6230
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6228

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


6235
6236
6237
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6235

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)


6241
6242
6243
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6241

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



6248
6249
6250
6251
6252
6253
6254
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 6248

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