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.



7209
7210
7211
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7209

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


7176
7177
7178
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7176

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)


7185
7186
7187
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7185

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)


7194
7195
7196
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7194

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


7201
7202
7203
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7201

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)


7207
7208
7209
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7207

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



7214
7215
7216
7217
7218
7219
7220
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 7214

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