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.



5713
5714
5715
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5713

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


5680
5681
5682
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5680

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)


5689
5690
5691
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5689

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)


5698
5699
5700
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5698

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


5705
5706
5707
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5705

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)


5711
5712
5713
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5711

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5718
5719
5720
5721
5722
5723
5724
# File 'lib/google/apis/containeranalysis_v1/classes.rb', line 5718

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