Class: Grafeas::V1::SlsaProvenance

Inherits:
Object
  • Object
show all
Extended by:
Google::Protobuf::MessageExts::ClassMethods
Includes:
Google::Protobuf::MessageExts
Defined in:
proto_docs/grafeas/v1/slsa_provenance.rb

Defined Under Namespace

Classes: Material, SlsaBuilder, SlsaCompleteness, SlsaMetadata, SlsaRecipe

Instance Attribute Summary collapse

Instance Attribute Details

#builder::Grafeas::V1::SlsaProvenance::SlsaBuilder



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# File 'proto_docs/grafeas/v1/slsa_provenance.rb', line 38

class SlsaProvenance
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Steps taken to build the artifact.
  # For a TaskRun, typically each container corresponds to one step in the
  # recipe.
  # @!attribute [rw] type
  #   @return [::String]
  #     URI indicating what type of recipe was performed. It determines the
  #     meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and
  #     materials.
  # @!attribute [rw] defined_in_material
  #   @return [::Integer]
  #     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.
  # @!attribute [rw] entry_point
  #   @return [::String]
  #     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.
  # @!attribute [rw] arguments
  #   @return [::Google::Protobuf::Any]
  #     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.
  # @!attribute [rw] environment
  #   @return [::Google::Protobuf::Any]
  #     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.
  class SlsaRecipe
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Indicates that the builder claims certain fields in this message to be
  # complete.
  # @!attribute [rw] arguments
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.arguments is complete, meaning
  #     that all external inputs are properly captured in the recipe.
  # @!attribute [rw] environment
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.environment is claimed to be
  #     complete.
  # @!attribute [rw] materials
  #   @return [::Boolean]
  #     If true, the builder claims that materials are complete, usually through
  #     some controls to prevent network access. Sometimes called "hermetic".
  class SlsaCompleteness
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Other properties of the build.
  # @!attribute [rw] build_invocation_id
  #   @return [::String]
  #     Identifies the particular build invocation, which can be useful for
  #     finding associated logs or other ad-hoc analysis. The value SHOULD be
  #     globally unique, per in-toto Provenance spec.
  # @!attribute [rw] build_started_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build started.
  # @!attribute [rw] build_finished_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build completed.
  # @!attribute [rw] completeness
  #   @return [::Grafeas::V1::SlsaProvenance::SlsaCompleteness]
  #     Indicates that the builder claims certain fields in this message to be
  #     complete.
  # @!attribute [rw] reproducible
  #   @return [::Boolean]
  #     If true, the builder claims that running the recipe on materials will
  #     produce bit-for-bit identical output.
  class SlsaMetadata
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] id
  #   @return [::String]
  class SlsaBuilder
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] uri
  #   @return [::String]
  # @!attribute [rw] digest
  #   @return [::Google::Protobuf::Map{::String => ::String}]
  class Material
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::String]
    class DigestEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#materials::Array<::Grafeas::V1::SlsaProvenance::Material>

Returns The collection of artifacts that influenced the build including sources, dependencies, build tools, base images, and so on. This is considered to be incomplete unless metadata.completeness.materials is true. Unset or null is equivalent to empty.

Returns:

  • (::Array<::Grafeas::V1::SlsaProvenance::Material>)

    The collection of artifacts that influenced the build including sources, dependencies, build tools, base images, and so on. This is considered to be incomplete unless metadata.completeness.materials is true. Unset or null is equivalent to empty.



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# File 'proto_docs/grafeas/v1/slsa_provenance.rb', line 38

class SlsaProvenance
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Steps taken to build the artifact.
  # For a TaskRun, typically each container corresponds to one step in the
  # recipe.
  # @!attribute [rw] type
  #   @return [::String]
  #     URI indicating what type of recipe was performed. It determines the
  #     meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and
  #     materials.
  # @!attribute [rw] defined_in_material
  #   @return [::Integer]
  #     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.
  # @!attribute [rw] entry_point
  #   @return [::String]
  #     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.
  # @!attribute [rw] arguments
  #   @return [::Google::Protobuf::Any]
  #     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.
  # @!attribute [rw] environment
  #   @return [::Google::Protobuf::Any]
  #     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.
  class SlsaRecipe
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Indicates that the builder claims certain fields in this message to be
  # complete.
  # @!attribute [rw] arguments
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.arguments is complete, meaning
  #     that all external inputs are properly captured in the recipe.
  # @!attribute [rw] environment
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.environment is claimed to be
  #     complete.
  # @!attribute [rw] materials
  #   @return [::Boolean]
  #     If true, the builder claims that materials are complete, usually through
  #     some controls to prevent network access. Sometimes called "hermetic".
  class SlsaCompleteness
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Other properties of the build.
  # @!attribute [rw] build_invocation_id
  #   @return [::String]
  #     Identifies the particular build invocation, which can be useful for
  #     finding associated logs or other ad-hoc analysis. The value SHOULD be
  #     globally unique, per in-toto Provenance spec.
  # @!attribute [rw] build_started_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build started.
  # @!attribute [rw] build_finished_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build completed.
  # @!attribute [rw] completeness
  #   @return [::Grafeas::V1::SlsaProvenance::SlsaCompleteness]
  #     Indicates that the builder claims certain fields in this message to be
  #     complete.
  # @!attribute [rw] reproducible
  #   @return [::Boolean]
  #     If true, the builder claims that running the recipe on materials will
  #     produce bit-for-bit identical output.
  class SlsaMetadata
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] id
  #   @return [::String]
  class SlsaBuilder
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] uri
  #   @return [::String]
  # @!attribute [rw] digest
  #   @return [::Google::Protobuf::Map{::String => ::String}]
  class Material
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::String]
    class DigestEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#metadata::Grafeas::V1::SlsaProvenance::SlsaMetadata



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# File 'proto_docs/grafeas/v1/slsa_provenance.rb', line 38

class SlsaProvenance
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Steps taken to build the artifact.
  # For a TaskRun, typically each container corresponds to one step in the
  # recipe.
  # @!attribute [rw] type
  #   @return [::String]
  #     URI indicating what type of recipe was performed. It determines the
  #     meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and
  #     materials.
  # @!attribute [rw] defined_in_material
  #   @return [::Integer]
  #     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.
  # @!attribute [rw] entry_point
  #   @return [::String]
  #     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.
  # @!attribute [rw] arguments
  #   @return [::Google::Protobuf::Any]
  #     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.
  # @!attribute [rw] environment
  #   @return [::Google::Protobuf::Any]
  #     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.
  class SlsaRecipe
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Indicates that the builder claims certain fields in this message to be
  # complete.
  # @!attribute [rw] arguments
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.arguments is complete, meaning
  #     that all external inputs are properly captured in the recipe.
  # @!attribute [rw] environment
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.environment is claimed to be
  #     complete.
  # @!attribute [rw] materials
  #   @return [::Boolean]
  #     If true, the builder claims that materials are complete, usually through
  #     some controls to prevent network access. Sometimes called "hermetic".
  class SlsaCompleteness
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Other properties of the build.
  # @!attribute [rw] build_invocation_id
  #   @return [::String]
  #     Identifies the particular build invocation, which can be useful for
  #     finding associated logs or other ad-hoc analysis. The value SHOULD be
  #     globally unique, per in-toto Provenance spec.
  # @!attribute [rw] build_started_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build started.
  # @!attribute [rw] build_finished_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build completed.
  # @!attribute [rw] completeness
  #   @return [::Grafeas::V1::SlsaProvenance::SlsaCompleteness]
  #     Indicates that the builder claims certain fields in this message to be
  #     complete.
  # @!attribute [rw] reproducible
  #   @return [::Boolean]
  #     If true, the builder claims that running the recipe on materials will
  #     produce bit-for-bit identical output.
  class SlsaMetadata
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] id
  #   @return [::String]
  class SlsaBuilder
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] uri
  #   @return [::String]
  # @!attribute [rw] digest
  #   @return [::Google::Protobuf::Map{::String => ::String}]
  class Material
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::String]
    class DigestEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#recipe::Grafeas::V1::SlsaProvenance::SlsaRecipe

Returns Identifies the configuration used for the build. When combined with materials, this SHOULD fully describe the build, such that re-running this recipe results in bit-for-bit identical output (if the build is reproducible).

Returns:

  • (::Grafeas::V1::SlsaProvenance::SlsaRecipe)

    Identifies the configuration used for the build. When combined with materials, this SHOULD fully describe the build, such that re-running this recipe results in bit-for-bit identical output (if the build is reproducible).



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
# File 'proto_docs/grafeas/v1/slsa_provenance.rb', line 38

class SlsaProvenance
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Steps taken to build the artifact.
  # For a TaskRun, typically each container corresponds to one step in the
  # recipe.
  # @!attribute [rw] type
  #   @return [::String]
  #     URI indicating what type of recipe was performed. It determines the
  #     meaning of recipe.entryPoint, recipe.arguments, recipe.environment, and
  #     materials.
  # @!attribute [rw] defined_in_material
  #   @return [::Integer]
  #     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.
  # @!attribute [rw] entry_point
  #   @return [::String]
  #     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.
  # @!attribute [rw] arguments
  #   @return [::Google::Protobuf::Any]
  #     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.
  # @!attribute [rw] environment
  #   @return [::Google::Protobuf::Any]
  #     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.
  class SlsaRecipe
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Indicates that the builder claims certain fields in this message to be
  # complete.
  # @!attribute [rw] arguments
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.arguments is complete, meaning
  #     that all external inputs are properly captured in the recipe.
  # @!attribute [rw] environment
  #   @return [::Boolean]
  #     If true, the builder claims that recipe.environment is claimed to be
  #     complete.
  # @!attribute [rw] materials
  #   @return [::Boolean]
  #     If true, the builder claims that materials are complete, usually through
  #     some controls to prevent network access. Sometimes called "hermetic".
  class SlsaCompleteness
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Other properties of the build.
  # @!attribute [rw] build_invocation_id
  #   @return [::String]
  #     Identifies the particular build invocation, which can be useful for
  #     finding associated logs or other ad-hoc analysis. The value SHOULD be
  #     globally unique, per in-toto Provenance spec.
  # @!attribute [rw] build_started_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build started.
  # @!attribute [rw] build_finished_on
  #   @return [::Google::Protobuf::Timestamp]
  #     The timestamp of when the build completed.
  # @!attribute [rw] completeness
  #   @return [::Grafeas::V1::SlsaProvenance::SlsaCompleteness]
  #     Indicates that the builder claims certain fields in this message to be
  #     complete.
  # @!attribute [rw] reproducible
  #   @return [::Boolean]
  #     If true, the builder claims that running the recipe on materials will
  #     produce bit-for-bit identical output.
  class SlsaMetadata
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] id
  #   @return [::String]
  class SlsaBuilder
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # @!attribute [rw] uri
  #   @return [::String]
  # @!attribute [rw] digest
  #   @return [::Google::Protobuf::Map{::String => ::String}]
  class Material
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::String]
    class DigestEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end