go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/resultdb/proto/v1/invocation.pb.go (about)

     1  // Copyright 2019 The LUCI Authors.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //      http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go. DO NOT EDIT.
    16  // versions:
    17  // 	protoc-gen-go v1.31.0
    18  // 	protoc        v3.21.7
    19  // source: go.chromium.org/luci/resultdb/proto/v1/invocation.proto
    20  
    21  package resultpb
    22  
    23  import (
    24  	_ "google.golang.org/genproto/googleapis/api/annotations"
    25  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    26  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    27  	structpb "google.golang.org/protobuf/types/known/structpb"
    28  	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
    29  	reflect "reflect"
    30  	sync "sync"
    31  )
    32  
    33  const (
    34  	// Verify that this generated code is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    36  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    38  )
    39  
    40  type Invocation_State int32
    41  
    42  const (
    43  	// The default value. This value is used if the state is omitted.
    44  	Invocation_STATE_UNSPECIFIED Invocation_State = 0
    45  	// The invocation was created and accepts new results.
    46  	Invocation_ACTIVE Invocation_State = 1
    47  	// The invocation is in the process of transitioning into FINALIZED state.
    48  	// This will happen automatically soon after all of its directly or
    49  	// indirectly included invocations become inactive.
    50  	Invocation_FINALIZING Invocation_State = 2
    51  	// The invocation is immutable and no longer accepts new results nor
    52  	// inclusions directly or indirectly.
    53  	Invocation_FINALIZED Invocation_State = 3
    54  )
    55  
    56  // Enum value maps for Invocation_State.
    57  var (
    58  	Invocation_State_name = map[int32]string{
    59  		0: "STATE_UNSPECIFIED",
    60  		1: "ACTIVE",
    61  		2: "FINALIZING",
    62  		3: "FINALIZED",
    63  	}
    64  	Invocation_State_value = map[string]int32{
    65  		"STATE_UNSPECIFIED": 0,
    66  		"ACTIVE":            1,
    67  		"FINALIZING":        2,
    68  		"FINALIZED":         3,
    69  	}
    70  )
    71  
    72  func (x Invocation_State) Enum() *Invocation_State {
    73  	p := new(Invocation_State)
    74  	*p = x
    75  	return p
    76  }
    77  
    78  func (x Invocation_State) String() string {
    79  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    80  }
    81  
    82  func (Invocation_State) Descriptor() protoreflect.EnumDescriptor {
    83  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_enumTypes[0].Descriptor()
    84  }
    85  
    86  func (Invocation_State) Type() protoreflect.EnumType {
    87  	return &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_enumTypes[0]
    88  }
    89  
    90  func (x Invocation_State) Number() protoreflect.EnumNumber {
    91  	return protoreflect.EnumNumber(x)
    92  }
    93  
    94  // Deprecated: Use Invocation_State.Descriptor instead.
    95  func (Invocation_State) EnumDescriptor() ([]byte, []int) {
    96  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{0, 0}
    97  }
    98  
    99  // A conceptual container of results. Immutable once finalized.
   100  // It represents all results of some computation; examples: swarming task,
   101  // buildbucket build, CQ attempt.
   102  // Composable: can include other invocations, see inclusion.proto.
   103  //
   104  // Next id: 17.
   105  type Invocation struct {
   106  	state         protoimpl.MessageState
   107  	sizeCache     protoimpl.SizeCache
   108  	unknownFields protoimpl.UnknownFields
   109  
   110  	// Can be used to refer to this invocation, e.g. in ResultDB.GetInvocation
   111  	// RPC.
   112  	// Format: invocations/{INVOCATION_ID}
   113  	// See also https://aip.dev/122.
   114  	//
   115  	// Output only.
   116  	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
   117  	// Current state of the invocation.
   118  	//
   119  	// At creation time this can be set to FINALIZING e.g. if this invocation is
   120  	// a simple wrapper of another and will itself not be modified.
   121  	//
   122  	// Otherwise this is an output only field.
   123  	State Invocation_State `protobuf:"varint,2,opt,name=state,proto3,enum=luci.resultdb.v1.Invocation_State" json:"state,omitempty"`
   124  	// When the invocation was created.
   125  	// Output only.
   126  	CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
   127  	// Invocation-level string key-value pairs.
   128  	// A key can be repeated.
   129  	Tags []*StringPair `protobuf:"bytes,5,rep,name=tags,proto3" json:"tags,omitempty"`
   130  	// When the invocation was finalized, i.e. transitioned to FINALIZED state.
   131  	// If this field is set, implies that the invocation is finalized.
   132  	//
   133  	// Output only.
   134  	FinalizeTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=finalize_time,json=finalizeTime,proto3" json:"finalize_time,omitempty"`
   135  	// Timestamp when the invocation will be forcefully finalized.
   136  	// Can be extended with UpdateInvocation until finalized.
   137  	Deadline *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=deadline,proto3" json:"deadline,omitempty"`
   138  	// Names of invocations included into this one. Overall results of this
   139  	// invocation is a UNION of results directly included into this invocation
   140  	// and results from the included invocations, recursively.
   141  	// For example, a Buildbucket build invocation may include invocations of its
   142  	// child swarming tasks and represent overall result of the build,
   143  	// encapsulating the internal structure of the build.
   144  	//
   145  	// The graph is directed.
   146  	// There can be at most one edge between a given pair of invocations.
   147  	// The shape of the graph does not matter. What matters is only the set of
   148  	// reachable invocations. Thus cycles are allowed and are noop.
   149  	//
   150  	// QueryTestResults returns test results from the transitive closure of
   151  	// invocations.
   152  	//
   153  	// This field can be set under Recorder.CreateInvocationsRequest to include
   154  	// existing invocations at the moment of invocation creation.
   155  	// New invocations created in the same batch (via
   156  	// Recorder.BatchCreateInvocationsRequest) are also allowed.
   157  	// Otherwise, this field is to be treated as Output only.
   158  	//
   159  	// To modify included invocations, use Recorder.UpdateIncludedInvocations in
   160  	// all other cases.
   161  	IncludedInvocations []string `protobuf:"bytes,8,rep,name=included_invocations,json=includedInvocations,proto3" json:"included_invocations,omitempty"`
   162  	// bigquery_exports indicates what BigQuery table(s) that results in this
   163  	// invocation should export to.
   164  	BigqueryExports []*BigQueryExport `protobuf:"bytes,9,rep,name=bigquery_exports,json=bigqueryExports,proto3" json:"bigquery_exports,omitempty"`
   165  	// LUCI identity (e.g. "user:<email>") who created the invocation.
   166  	// Typically, a LUCI service account (e.g.
   167  	// "user:cr-buildbucket@appspot.gserviceaccount.com"), but can also be a user
   168  	// (e.g. "user:johndoe@example.com").
   169  	//
   170  	// Output only.
   171  	CreatedBy string `protobuf:"bytes,10,opt,name=created_by,json=createdBy,proto3" json:"created_by,omitempty"`
   172  	// Full name of the resource that produced results in this invocation.
   173  	// See also https://aip.dev/122#full-resource-names
   174  	// Typical examples:
   175  	// - Swarming task: "//chromium-swarm.appspot.com/tasks/deadbeef"
   176  	// - Buildbucket build: "//cr-buildbucket.appspot.com/builds/1234567890".
   177  	ProducerResource string `protobuf:"bytes,11,opt,name=producer_resource,json=producerResource,proto3" json:"producer_resource,omitempty"`
   178  	// Realm that the invocation exists under.
   179  	// See https://chromium.googlesource.com/infra/luci/luci-py/+/refs/heads/master/appengine/auth_service/proto/realms_config.proto
   180  	Realm string `protobuf:"bytes,12,opt,name=realm,proto3" json:"realm,omitempty"`
   181  	// Deprecated. Values specified here are ignored.
   182  	HistoryOptions *HistoryOptions `protobuf:"bytes,13,opt,name=history_options,json=historyOptions,proto3" json:"history_options,omitempty"`
   183  	// Arbitrary JSON object that contains structured, domain-specific properties
   184  	// of the invocation.
   185  	//
   186  	// The serialized size must be <= 4096 bytes.
   187  	Properties *structpb.Struct `protobuf:"bytes,14,opt,name=properties,proto3" json:"properties,omitempty"`
   188  	// The code sources which were tested by this invocation.
   189  	// This is used to index test results for test history, and for
   190  	// related analyses (e.g. culprit analysis / changepoint analyses).
   191  	//
   192  	// The sources specified here applies only to:
   193  	// - the test results directly contained in this invocation, and
   194  	// - any directly included invocations which set their source_spec.inherit to
   195  	// true.
   196  	//
   197  	// Clients should be careful to ensure the uploaded source spec is consistent
   198  	// between included invocations that upload the same test variants.
   199  	// Verdicts are associated with the sources of *any* of their constituent
   200  	// test results, so if there is inconsistency between included invocations,
   201  	// the position of the verdict becomes not well defined.
   202  	SourceSpec *SourceSpec `protobuf:"bytes,15,opt,name=source_spec,json=sourceSpec,proto3" json:"source_spec,omitempty"`
   203  	// A user-specified baseline identifier that maps to a set of test variants.
   204  	// Often, this will be the source that generated the test result, such as the
   205  	// builder name for Chromium. For example, the baseline identifier may be
   206  	// try:linux-rel. The supported syntax for a baseline identifier is
   207  	// ^[a-z0-9\-_.]{1,100}:[a-zA-Z0-9\-_.\(\) ]{1,128}`$. This syntax was selected
   208  	// to allow <buildbucket bucket name>:<buildbucket builder name> as a valid
   209  	// baseline ID.
   210  	// See go/src/go.chromium.org/luci/buildbucket/proto/builder_common.proto for
   211  	// character lengths for buildbucket bucket name and builder name.
   212  	//
   213  	// Baselines are used to identify new tests; a subtraction between the set of
   214  	// test variants for a baseline in the Baselines table and test variants from
   215  	// a given invocation determines whether a test is new.
   216  	//
   217  	// The caller must have `resultdb.baselines.put` to be able to
   218  	// modify this field.
   219  	BaselineId string `protobuf:"bytes,16,opt,name=baseline_id,json=baselineId,proto3" json:"baseline_id,omitempty"`
   220  }
   221  
   222  func (x *Invocation) Reset() {
   223  	*x = Invocation{}
   224  	if protoimpl.UnsafeEnabled {
   225  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[0]
   226  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   227  		ms.StoreMessageInfo(mi)
   228  	}
   229  }
   230  
   231  func (x *Invocation) String() string {
   232  	return protoimpl.X.MessageStringOf(x)
   233  }
   234  
   235  func (*Invocation) ProtoMessage() {}
   236  
   237  func (x *Invocation) ProtoReflect() protoreflect.Message {
   238  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[0]
   239  	if protoimpl.UnsafeEnabled && x != nil {
   240  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   241  		if ms.LoadMessageInfo() == nil {
   242  			ms.StoreMessageInfo(mi)
   243  		}
   244  		return ms
   245  	}
   246  	return mi.MessageOf(x)
   247  }
   248  
   249  // Deprecated: Use Invocation.ProtoReflect.Descriptor instead.
   250  func (*Invocation) Descriptor() ([]byte, []int) {
   251  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{0}
   252  }
   253  
   254  func (x *Invocation) GetName() string {
   255  	if x != nil {
   256  		return x.Name
   257  	}
   258  	return ""
   259  }
   260  
   261  func (x *Invocation) GetState() Invocation_State {
   262  	if x != nil {
   263  		return x.State
   264  	}
   265  	return Invocation_STATE_UNSPECIFIED
   266  }
   267  
   268  func (x *Invocation) GetCreateTime() *timestamppb.Timestamp {
   269  	if x != nil {
   270  		return x.CreateTime
   271  	}
   272  	return nil
   273  }
   274  
   275  func (x *Invocation) GetTags() []*StringPair {
   276  	if x != nil {
   277  		return x.Tags
   278  	}
   279  	return nil
   280  }
   281  
   282  func (x *Invocation) GetFinalizeTime() *timestamppb.Timestamp {
   283  	if x != nil {
   284  		return x.FinalizeTime
   285  	}
   286  	return nil
   287  }
   288  
   289  func (x *Invocation) GetDeadline() *timestamppb.Timestamp {
   290  	if x != nil {
   291  		return x.Deadline
   292  	}
   293  	return nil
   294  }
   295  
   296  func (x *Invocation) GetIncludedInvocations() []string {
   297  	if x != nil {
   298  		return x.IncludedInvocations
   299  	}
   300  	return nil
   301  }
   302  
   303  func (x *Invocation) GetBigqueryExports() []*BigQueryExport {
   304  	if x != nil {
   305  		return x.BigqueryExports
   306  	}
   307  	return nil
   308  }
   309  
   310  func (x *Invocation) GetCreatedBy() string {
   311  	if x != nil {
   312  		return x.CreatedBy
   313  	}
   314  	return ""
   315  }
   316  
   317  func (x *Invocation) GetProducerResource() string {
   318  	if x != nil {
   319  		return x.ProducerResource
   320  	}
   321  	return ""
   322  }
   323  
   324  func (x *Invocation) GetRealm() string {
   325  	if x != nil {
   326  		return x.Realm
   327  	}
   328  	return ""
   329  }
   330  
   331  func (x *Invocation) GetHistoryOptions() *HistoryOptions {
   332  	if x != nil {
   333  		return x.HistoryOptions
   334  	}
   335  	return nil
   336  }
   337  
   338  func (x *Invocation) GetProperties() *structpb.Struct {
   339  	if x != nil {
   340  		return x.Properties
   341  	}
   342  	return nil
   343  }
   344  
   345  func (x *Invocation) GetSourceSpec() *SourceSpec {
   346  	if x != nil {
   347  		return x.SourceSpec
   348  	}
   349  	return nil
   350  }
   351  
   352  func (x *Invocation) GetBaselineId() string {
   353  	if x != nil {
   354  		return x.BaselineId
   355  	}
   356  	return ""
   357  }
   358  
   359  // BigQueryExport indicates that results in this invocation should be exported
   360  // to BigQuery after finalization.
   361  type BigQueryExport struct {
   362  	state         protoimpl.MessageState
   363  	sizeCache     protoimpl.SizeCache
   364  	unknownFields protoimpl.UnknownFields
   365  
   366  	// Name of the BigQuery project.
   367  	Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
   368  	// Name of the BigQuery Dataset.
   369  	Dataset string `protobuf:"bytes,2,opt,name=dataset,proto3" json:"dataset,omitempty"`
   370  	// Name of the BigQuery Table.
   371  	Table string `protobuf:"bytes,3,opt,name=table,proto3" json:"table,omitempty"`
   372  	// Types that are assignable to ResultType:
   373  	//
   374  	//	*BigQueryExport_TestResults_
   375  	//	*BigQueryExport_TextArtifacts_
   376  	ResultType isBigQueryExport_ResultType `protobuf_oneof:"result_type"`
   377  }
   378  
   379  func (x *BigQueryExport) Reset() {
   380  	*x = BigQueryExport{}
   381  	if protoimpl.UnsafeEnabled {
   382  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[1]
   383  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   384  		ms.StoreMessageInfo(mi)
   385  	}
   386  }
   387  
   388  func (x *BigQueryExport) String() string {
   389  	return protoimpl.X.MessageStringOf(x)
   390  }
   391  
   392  func (*BigQueryExport) ProtoMessage() {}
   393  
   394  func (x *BigQueryExport) ProtoReflect() protoreflect.Message {
   395  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[1]
   396  	if protoimpl.UnsafeEnabled && x != nil {
   397  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   398  		if ms.LoadMessageInfo() == nil {
   399  			ms.StoreMessageInfo(mi)
   400  		}
   401  		return ms
   402  	}
   403  	return mi.MessageOf(x)
   404  }
   405  
   406  // Deprecated: Use BigQueryExport.ProtoReflect.Descriptor instead.
   407  func (*BigQueryExport) Descriptor() ([]byte, []int) {
   408  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{1}
   409  }
   410  
   411  func (x *BigQueryExport) GetProject() string {
   412  	if x != nil {
   413  		return x.Project
   414  	}
   415  	return ""
   416  }
   417  
   418  func (x *BigQueryExport) GetDataset() string {
   419  	if x != nil {
   420  		return x.Dataset
   421  	}
   422  	return ""
   423  }
   424  
   425  func (x *BigQueryExport) GetTable() string {
   426  	if x != nil {
   427  		return x.Table
   428  	}
   429  	return ""
   430  }
   431  
   432  func (m *BigQueryExport) GetResultType() isBigQueryExport_ResultType {
   433  	if m != nil {
   434  		return m.ResultType
   435  	}
   436  	return nil
   437  }
   438  
   439  func (x *BigQueryExport) GetTestResults() *BigQueryExport_TestResults {
   440  	if x, ok := x.GetResultType().(*BigQueryExport_TestResults_); ok {
   441  		return x.TestResults
   442  	}
   443  	return nil
   444  }
   445  
   446  func (x *BigQueryExport) GetTextArtifacts() *BigQueryExport_TextArtifacts {
   447  	if x, ok := x.GetResultType().(*BigQueryExport_TextArtifacts_); ok {
   448  		return x.TextArtifacts
   449  	}
   450  	return nil
   451  }
   452  
   453  type isBigQueryExport_ResultType interface {
   454  	isBigQueryExport_ResultType()
   455  }
   456  
   457  type BigQueryExport_TestResults_ struct {
   458  	TestResults *BigQueryExport_TestResults `protobuf:"bytes,4,opt,name=test_results,json=testResults,proto3,oneof"`
   459  }
   460  
   461  type BigQueryExport_TextArtifacts_ struct {
   462  	TextArtifacts *BigQueryExport_TextArtifacts `protobuf:"bytes,6,opt,name=text_artifacts,json=textArtifacts,proto3,oneof"`
   463  }
   464  
   465  func (*BigQueryExport_TestResults_) isBigQueryExport_ResultType() {}
   466  
   467  func (*BigQueryExport_TextArtifacts_) isBigQueryExport_ResultType() {}
   468  
   469  // HistoryOptions indicates how the invocations should be indexed, so that their
   470  // results can be queried over a range of time or of commits.
   471  // Deprecated: do not use.
   472  type HistoryOptions struct {
   473  	state         protoimpl.MessageState
   474  	sizeCache     protoimpl.SizeCache
   475  	unknownFields protoimpl.UnknownFields
   476  
   477  	// Set this to index the results by the containing invocation's create_time.
   478  	UseInvocationTimestamp bool `protobuf:"varint,1,opt,name=use_invocation_timestamp,json=useInvocationTimestamp,proto3" json:"use_invocation_timestamp,omitempty"`
   479  	// Set this to index by commit position.
   480  	// It's up to the creator of the invocation to set this consistently over
   481  	// time across the same test variant.
   482  	Commit *CommitPosition `protobuf:"bytes,2,opt,name=commit,proto3" json:"commit,omitempty"`
   483  }
   484  
   485  func (x *HistoryOptions) Reset() {
   486  	*x = HistoryOptions{}
   487  	if protoimpl.UnsafeEnabled {
   488  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[2]
   489  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   490  		ms.StoreMessageInfo(mi)
   491  	}
   492  }
   493  
   494  func (x *HistoryOptions) String() string {
   495  	return protoimpl.X.MessageStringOf(x)
   496  }
   497  
   498  func (*HistoryOptions) ProtoMessage() {}
   499  
   500  func (x *HistoryOptions) ProtoReflect() protoreflect.Message {
   501  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[2]
   502  	if protoimpl.UnsafeEnabled && x != nil {
   503  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   504  		if ms.LoadMessageInfo() == nil {
   505  			ms.StoreMessageInfo(mi)
   506  		}
   507  		return ms
   508  	}
   509  	return mi.MessageOf(x)
   510  }
   511  
   512  // Deprecated: Use HistoryOptions.ProtoReflect.Descriptor instead.
   513  func (*HistoryOptions) Descriptor() ([]byte, []int) {
   514  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{2}
   515  }
   516  
   517  func (x *HistoryOptions) GetUseInvocationTimestamp() bool {
   518  	if x != nil {
   519  		return x.UseInvocationTimestamp
   520  	}
   521  	return false
   522  }
   523  
   524  func (x *HistoryOptions) GetCommit() *CommitPosition {
   525  	if x != nil {
   526  		return x.Commit
   527  	}
   528  	return nil
   529  }
   530  
   531  // Specifies the source code that was tested in an invocation, either directly
   532  // (via the sources field) or indirectly (via inherit_sources).
   533  type SourceSpec struct {
   534  	state         protoimpl.MessageState
   535  	sizeCache     protoimpl.SizeCache
   536  	unknownFields protoimpl.UnknownFields
   537  
   538  	// Specifies the source position that was tested.
   539  	// Either this or inherit_sources may be set, but not both.
   540  	Sources *Sources `protobuf:"bytes,1,opt,name=sources,proto3" json:"sources,omitempty"`
   541  	// Specifies that the source position of the invocation is inherited
   542  	// from the parent invocation it is included in.
   543  	//
   544  	// # Use case
   545  	// This is useful in situations where the testing infrastructure deduplicates
   546  	// execution of tests on identical binaries (e.g. using swarming's task
   547  	// deduplication feature).
   548  	//
   549  	// Let A be the invocation for a swarming task that receives only a
   550  	// test binary as input, with task deduplication enabled.
   551  	// Let B be the invocation for a buildbucket build which built the
   552  	// binary from sources (or at the very least knew the sources)
   553  	// and triggered invocation A.
   554  	// Invocation B includes invocation A.
   555  	//
   556  	// By setting A's source_spec to inherit, and specifying the sources
   557  	// on invocation B, the test results in A will be associated with
   558  	// the sources specified on invocation B, when queried via invocation B.
   559  	//
   560  	// This allows further invocations B2, B3 ... BN to be created which also
   561  	// re-use the test results in A but associate them with possibly different
   562  	// sources when queried via B2 ... BN (this is valid so long as the sources
   563  	// produce a binary-identical testing input).
   564  	//
   565  	// # Multiple inclusion paths
   566  	// It is possible for an invocation A to be included in the reachable
   567  	// invocation graph for an invocation C in more than one way.
   568  	//
   569  	// For example, we may have:
   570  	//
   571  	//	A -> B1 -> C
   572  	//	A -> B2 -> C
   573  	//
   574  	// as two paths of inclusion.
   575  	//
   576  	// If A sets inherit to true, the commit position assigned to its
   577  	// test results will be selected via *one* of the paths of inclusion
   578  	// into C (i.e. from B1 or B2).
   579  	//
   580  	// However, which path is selected is not guaranteed, so if clients
   581  	// must include the same invocation multiple times, they should
   582  	// make the source position via all paths the same.
   583  	Inherit bool `protobuf:"varint,2,opt,name=inherit,proto3" json:"inherit,omitempty"`
   584  }
   585  
   586  func (x *SourceSpec) Reset() {
   587  	*x = SourceSpec{}
   588  	if protoimpl.UnsafeEnabled {
   589  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[3]
   590  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   591  		ms.StoreMessageInfo(mi)
   592  	}
   593  }
   594  
   595  func (x *SourceSpec) String() string {
   596  	return protoimpl.X.MessageStringOf(x)
   597  }
   598  
   599  func (*SourceSpec) ProtoMessage() {}
   600  
   601  func (x *SourceSpec) ProtoReflect() protoreflect.Message {
   602  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[3]
   603  	if protoimpl.UnsafeEnabled && x != nil {
   604  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   605  		if ms.LoadMessageInfo() == nil {
   606  			ms.StoreMessageInfo(mi)
   607  		}
   608  		return ms
   609  	}
   610  	return mi.MessageOf(x)
   611  }
   612  
   613  // Deprecated: Use SourceSpec.ProtoReflect.Descriptor instead.
   614  func (*SourceSpec) Descriptor() ([]byte, []int) {
   615  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{3}
   616  }
   617  
   618  func (x *SourceSpec) GetSources() *Sources {
   619  	if x != nil {
   620  		return x.Sources
   621  	}
   622  	return nil
   623  }
   624  
   625  func (x *SourceSpec) GetInherit() bool {
   626  	if x != nil {
   627  		return x.Inherit
   628  	}
   629  	return false
   630  }
   631  
   632  // Specifies the source code that was tested.
   633  type Sources struct {
   634  	state         protoimpl.MessageState
   635  	sizeCache     protoimpl.SizeCache
   636  	unknownFields protoimpl.UnknownFields
   637  
   638  	// The base version of code sources checked out. Mandatory.
   639  	// If necessary, we could add support for non-gitiles sources here in
   640  	// future, using a oneof statement. E.g.
   641  	//
   642  	//	oneof system {
   643  	//	   GitilesCommit gitiles_commit = 1;
   644  	//	   SubversionRevision svn_revision = 4;
   645  	//	   ...
   646  	//	}
   647  	GitilesCommit *GitilesCommit `protobuf:"bytes,1,opt,name=gitiles_commit,json=gitilesCommit,proto3" json:"gitiles_commit,omitempty"`
   648  	// The changelist(s) which were applied upon the base version of sources
   649  	// checked out. E.g. in commit queue tryjobs.
   650  	//
   651  	// At most 10 changelist(s) may be specified here. If there
   652  	// are more, only include the first 10 and set is_dirty.
   653  	Changelists []*GerritChange `protobuf:"bytes,2,rep,name=changelists,proto3" json:"changelists,omitempty"`
   654  	// Whether there were any changes made to the sources, not described above.
   655  	// For example, a version of a dependency was upgraded before testing (e.g.
   656  	// in an autoroller recipe).
   657  	//
   658  	// Cherry-picking a changelist on top of the base checkout is not considered
   659  	// making the sources dirty as it is reported separately above.
   660  	IsDirty bool `protobuf:"varint,3,opt,name=is_dirty,json=isDirty,proto3" json:"is_dirty,omitempty"`
   661  }
   662  
   663  func (x *Sources) Reset() {
   664  	*x = Sources{}
   665  	if protoimpl.UnsafeEnabled {
   666  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[4]
   667  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   668  		ms.StoreMessageInfo(mi)
   669  	}
   670  }
   671  
   672  func (x *Sources) String() string {
   673  	return protoimpl.X.MessageStringOf(x)
   674  }
   675  
   676  func (*Sources) ProtoMessage() {}
   677  
   678  func (x *Sources) ProtoReflect() protoreflect.Message {
   679  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[4]
   680  	if protoimpl.UnsafeEnabled && x != nil {
   681  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   682  		if ms.LoadMessageInfo() == nil {
   683  			ms.StoreMessageInfo(mi)
   684  		}
   685  		return ms
   686  	}
   687  	return mi.MessageOf(x)
   688  }
   689  
   690  // Deprecated: Use Sources.ProtoReflect.Descriptor instead.
   691  func (*Sources) Descriptor() ([]byte, []int) {
   692  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{4}
   693  }
   694  
   695  func (x *Sources) GetGitilesCommit() *GitilesCommit {
   696  	if x != nil {
   697  		return x.GitilesCommit
   698  	}
   699  	return nil
   700  }
   701  
   702  func (x *Sources) GetChangelists() []*GerritChange {
   703  	if x != nil {
   704  		return x.Changelists
   705  	}
   706  	return nil
   707  }
   708  
   709  func (x *Sources) GetIsDirty() bool {
   710  	if x != nil {
   711  		return x.IsDirty
   712  	}
   713  	return false
   714  }
   715  
   716  // TestResults indicates that test results should be exported.
   717  type BigQueryExport_TestResults struct {
   718  	state         protoimpl.MessageState
   719  	sizeCache     protoimpl.SizeCache
   720  	unknownFields protoimpl.UnknownFields
   721  
   722  	// Use predicate to query test results that should be exported to
   723  	// BigQuery table.
   724  	Predicate *TestResultPredicate `protobuf:"bytes,1,opt,name=predicate,proto3" json:"predicate,omitempty"`
   725  }
   726  
   727  func (x *BigQueryExport_TestResults) Reset() {
   728  	*x = BigQueryExport_TestResults{}
   729  	if protoimpl.UnsafeEnabled {
   730  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[5]
   731  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   732  		ms.StoreMessageInfo(mi)
   733  	}
   734  }
   735  
   736  func (x *BigQueryExport_TestResults) String() string {
   737  	return protoimpl.X.MessageStringOf(x)
   738  }
   739  
   740  func (*BigQueryExport_TestResults) ProtoMessage() {}
   741  
   742  func (x *BigQueryExport_TestResults) ProtoReflect() protoreflect.Message {
   743  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[5]
   744  	if protoimpl.UnsafeEnabled && x != nil {
   745  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   746  		if ms.LoadMessageInfo() == nil {
   747  			ms.StoreMessageInfo(mi)
   748  		}
   749  		return ms
   750  	}
   751  	return mi.MessageOf(x)
   752  }
   753  
   754  // Deprecated: Use BigQueryExport_TestResults.ProtoReflect.Descriptor instead.
   755  func (*BigQueryExport_TestResults) Descriptor() ([]byte, []int) {
   756  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{1, 0}
   757  }
   758  
   759  func (x *BigQueryExport_TestResults) GetPredicate() *TestResultPredicate {
   760  	if x != nil {
   761  		return x.Predicate
   762  	}
   763  	return nil
   764  }
   765  
   766  // TextArtifacts indicates that text artifacts should be exported.
   767  type BigQueryExport_TextArtifacts struct {
   768  	state         protoimpl.MessageState
   769  	sizeCache     protoimpl.SizeCache
   770  	unknownFields protoimpl.UnknownFields
   771  
   772  	// Use predicate to query artifacts that should be exported to
   773  	// BigQuery table.
   774  	//
   775  	// Sub-field predicate.content_type_regexp defaults to "text/.*".
   776  	Predicate *ArtifactPredicate `protobuf:"bytes,1,opt,name=predicate,proto3" json:"predicate,omitempty"`
   777  }
   778  
   779  func (x *BigQueryExport_TextArtifacts) Reset() {
   780  	*x = BigQueryExport_TextArtifacts{}
   781  	if protoimpl.UnsafeEnabled {
   782  		mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[6]
   783  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   784  		ms.StoreMessageInfo(mi)
   785  	}
   786  }
   787  
   788  func (x *BigQueryExport_TextArtifacts) String() string {
   789  	return protoimpl.X.MessageStringOf(x)
   790  }
   791  
   792  func (*BigQueryExport_TextArtifacts) ProtoMessage() {}
   793  
   794  func (x *BigQueryExport_TextArtifacts) ProtoReflect() protoreflect.Message {
   795  	mi := &file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[6]
   796  	if protoimpl.UnsafeEnabled && x != nil {
   797  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   798  		if ms.LoadMessageInfo() == nil {
   799  			ms.StoreMessageInfo(mi)
   800  		}
   801  		return ms
   802  	}
   803  	return mi.MessageOf(x)
   804  }
   805  
   806  // Deprecated: Use BigQueryExport_TextArtifacts.ProtoReflect.Descriptor instead.
   807  func (*BigQueryExport_TextArtifacts) Descriptor() ([]byte, []int) {
   808  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP(), []int{1, 1}
   809  }
   810  
   811  func (x *BigQueryExport_TextArtifacts) GetPredicate() *ArtifactPredicate {
   812  	if x != nil {
   813  		return x.Predicate
   814  	}
   815  	return nil
   816  }
   817  
   818  var File_go_chromium_org_luci_resultdb_proto_v1_invocation_proto protoreflect.FileDescriptor
   819  
   820  var file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDesc = []byte{
   821  	0x0a, 0x37, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
   822  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f,
   823  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74,
   824  	0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x10, 0x6c, 0x75, 0x63, 0x69, 0x2e,
   825  	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
   826  	0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
   827  	0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f,
   828  	0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74,
   829  	0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
   830  	0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65,
   831  	0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x33, 0x67, 0x6f, 0x2e,
   832  	0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63,
   833  	0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   834  	0x2f, 0x76, 0x31, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
   835  	0x1a, 0x36, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
   836  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f,
   837  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61,
   838  	0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf3, 0x06, 0x0a, 0x0a, 0x49, 0x6e, 0x76,
   839  	0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
   840  	0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x04, 0x6e,
   841  	0x61, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01,
   842  	0x28, 0x0e, 0x32, 0x22, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
   843  	0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
   844  	0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x43, 0x0a,
   845  	0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
   846  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
   847  	0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x06,
   848  	0xe0, 0x41, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69,
   849  	0x6d, 0x65, 0x12, 0x30, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b,
   850  	0x32, 0x1c, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62,
   851  	0x2e, 0x76, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x69, 0x72, 0x52, 0x04,
   852  	0x74, 0x61, 0x67, 0x73, 0x12, 0x44, 0x0a, 0x0d, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65,
   853  	0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
   854  	0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
   855  	0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x66, 0x69,
   856  	0x6e, 0x61, 0x6c, 0x69, 0x7a, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x64, 0x65,
   857  	0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
   858  	0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
   859  	0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69,
   860  	0x6e, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x5f, 0x69,
   861  	0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09,
   862  	0x52, 0x13, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61,
   863  	0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x4b, 0x0a, 0x10, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72,
   864  	0x79, 0x5f, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
   865  	0x20, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e,
   866  	0x76, 0x31, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72,
   867  	0x74, 0x52, 0x0f, 0x62, 0x69, 0x67, 0x71, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72,
   868  	0x74, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x62, 0x79,
   869  	0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x63, 0x72, 0x65,
   870  	0x61, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x2b, 0x0a, 0x11, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63,
   871  	0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28,
   872  	0x09, 0x52, 0x10, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x72, 0x52, 0x65, 0x73, 0x6f, 0x75,
   873  	0x72, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x18, 0x0c, 0x20, 0x01,
   874  	0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x61, 0x6c, 0x6d, 0x12, 0x49, 0x0a, 0x0f, 0x68, 0x69, 0x73,
   875  	0x74, 0x6f, 0x72, 0x79, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x01,
   876  	0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
   877  	0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4f, 0x70, 0x74,
   878  	0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4f, 0x70, 0x74,
   879  	0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69,
   880  	0x65, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
   881  	0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63,
   882  	0x74, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3d, 0x0a,
   883  	0x0b, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x0f, 0x20, 0x01,
   884  	0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
   885  	0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63,
   886  	0x52, 0x0a, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x70, 0x65, 0x63, 0x12, 0x1f, 0x0a, 0x0b,
   887  	0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28,
   888  	0x09, 0x52, 0x0a, 0x62, 0x61, 0x73, 0x65, 0x6c, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x22, 0x49, 0x0a,
   889  	0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f,
   890  	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0a, 0x0a,
   891  	0x06, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x46, 0x49, 0x4e,
   892  	0x41, 0x4c, 0x49, 0x5a, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x46, 0x49, 0x4e,
   893  	0x41, 0x4c, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0xcc,
   894  	0x03, 0x0a, 0x0e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72,
   895  	0x74, 0x12, 0x1d, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01,
   896  	0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
   897  	0x12, 0x1d, 0x0a, 0x07, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
   898  	0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x64, 0x61, 0x74, 0x61, 0x73, 0x65, 0x74, 0x12,
   899  	0x19, 0x0a, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
   900  	0xe0, 0x41, 0x02, 0x52, 0x05, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x51, 0x0a, 0x0c, 0x74, 0x65,
   901  	0x73, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
   902  	0x32, 0x2c, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62,
   903  	0x2e, 0x76, 0x31, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x6f,
   904  	0x72, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x48, 0x00,
   905  	0x52, 0x0b, 0x74, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x57, 0x0a,
   906  	0x0e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x18,
   907  	0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73,
   908  	0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72,
   909  	0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x41, 0x72, 0x74, 0x69,
   910  	0x66, 0x61, 0x63, 0x74, 0x73, 0x48, 0x00, 0x52, 0x0d, 0x74, 0x65, 0x78, 0x74, 0x41, 0x72, 0x74,
   911  	0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x1a, 0x52, 0x0a, 0x0b, 0x54, 0x65, 0x73, 0x74, 0x52, 0x65,
   912  	0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x43, 0x0a, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61,
   913  	0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e,
   914  	0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x65, 0x73, 0x74,
   915  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x52,
   916  	0x09, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x1a, 0x52, 0x0a, 0x0d, 0x54, 0x65,
   917  	0x78, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x12, 0x41, 0x0a, 0x09, 0x70,
   918  	0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23,
   919  	0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76,
   920  	0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x50, 0x72, 0x65, 0x64, 0x69, 0x63,
   921  	0x61, 0x74, 0x65, 0x52, 0x09, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x42, 0x0d,
   922  	0x0a, 0x0b, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x84, 0x01,
   923  	0x0a, 0x0e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73,
   924  	0x12, 0x38, 0x0a, 0x18, 0x75, 0x73, 0x65, 0x5f, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69,
   925  	0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01,
   926  	0x28, 0x08, 0x52, 0x16, 0x75, 0x73, 0x65, 0x49, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
   927  	0x6e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x38, 0x0a, 0x06, 0x63, 0x6f,
   928  	0x6d, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x75, 0x63,
   929  	0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x6f,
   930  	0x6d, 0x6d, 0x69, 0x74, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x63, 0x6f,
   931  	0x6d, 0x6d, 0x69, 0x74, 0x22, 0x5b, 0x0a, 0x0a, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x53, 0x70,
   932  	0x65, 0x63, 0x12, 0x33, 0x0a, 0x07, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20,
   933  	0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c,
   934  	0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x52, 0x07,
   935  	0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x6e, 0x68, 0x65, 0x72,
   936  	0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x6e, 0x68, 0x65, 0x72, 0x69,
   937  	0x74, 0x22, 0xae, 0x01, 0x0a, 0x07, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x46, 0x0a,
   938  	0x0e, 0x67, 0x69, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18,
   939  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73,
   940  	0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x69, 0x74, 0x69, 0x6c, 0x65, 0x73,
   941  	0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x52, 0x0d, 0x67, 0x69, 0x74, 0x69, 0x6c, 0x65, 0x73, 0x43,
   942  	0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x6c,
   943  	0x69, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x75, 0x63,
   944  	0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
   945  	0x72, 0x72, 0x69, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x52, 0x0b, 0x63, 0x68, 0x61, 0x6e,
   946  	0x67, 0x65, 0x6c, 0x69, 0x73, 0x74, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x64, 0x69,
   947  	0x72, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x44, 0x69, 0x72,
   948  	0x74, 0x79, 0x42, 0x31, 0x5a, 0x2f, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
   949  	0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c,
   950  	0x74, 0x64, 0x62, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x3b, 0x72, 0x65, 0x73,
   951  	0x75, 0x6c, 0x74, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   952  }
   953  
   954  var (
   955  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescOnce sync.Once
   956  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescData = file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDesc
   957  )
   958  
   959  func file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescGZIP() []byte {
   960  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescOnce.Do(func() {
   961  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescData)
   962  	})
   963  	return file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDescData
   964  }
   965  
   966  var file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
   967  var file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
   968  var file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_goTypes = []interface{}{
   969  	(Invocation_State)(0),                // 0: luci.resultdb.v1.Invocation.State
   970  	(*Invocation)(nil),                   // 1: luci.resultdb.v1.Invocation
   971  	(*BigQueryExport)(nil),               // 2: luci.resultdb.v1.BigQueryExport
   972  	(*HistoryOptions)(nil),               // 3: luci.resultdb.v1.HistoryOptions
   973  	(*SourceSpec)(nil),                   // 4: luci.resultdb.v1.SourceSpec
   974  	(*Sources)(nil),                      // 5: luci.resultdb.v1.Sources
   975  	(*BigQueryExport_TestResults)(nil),   // 6: luci.resultdb.v1.BigQueryExport.TestResults
   976  	(*BigQueryExport_TextArtifacts)(nil), // 7: luci.resultdb.v1.BigQueryExport.TextArtifacts
   977  	(*timestamppb.Timestamp)(nil),        // 8: google.protobuf.Timestamp
   978  	(*StringPair)(nil),                   // 9: luci.resultdb.v1.StringPair
   979  	(*structpb.Struct)(nil),              // 10: google.protobuf.Struct
   980  	(*CommitPosition)(nil),               // 11: luci.resultdb.v1.CommitPosition
   981  	(*GitilesCommit)(nil),                // 12: luci.resultdb.v1.GitilesCommit
   982  	(*GerritChange)(nil),                 // 13: luci.resultdb.v1.GerritChange
   983  	(*TestResultPredicate)(nil),          // 14: luci.resultdb.v1.TestResultPredicate
   984  	(*ArtifactPredicate)(nil),            // 15: luci.resultdb.v1.ArtifactPredicate
   985  }
   986  var file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_depIdxs = []int32{
   987  	0,  // 0: luci.resultdb.v1.Invocation.state:type_name -> luci.resultdb.v1.Invocation.State
   988  	8,  // 1: luci.resultdb.v1.Invocation.create_time:type_name -> google.protobuf.Timestamp
   989  	9,  // 2: luci.resultdb.v1.Invocation.tags:type_name -> luci.resultdb.v1.StringPair
   990  	8,  // 3: luci.resultdb.v1.Invocation.finalize_time:type_name -> google.protobuf.Timestamp
   991  	8,  // 4: luci.resultdb.v1.Invocation.deadline:type_name -> google.protobuf.Timestamp
   992  	2,  // 5: luci.resultdb.v1.Invocation.bigquery_exports:type_name -> luci.resultdb.v1.BigQueryExport
   993  	3,  // 6: luci.resultdb.v1.Invocation.history_options:type_name -> luci.resultdb.v1.HistoryOptions
   994  	10, // 7: luci.resultdb.v1.Invocation.properties:type_name -> google.protobuf.Struct
   995  	4,  // 8: luci.resultdb.v1.Invocation.source_spec:type_name -> luci.resultdb.v1.SourceSpec
   996  	6,  // 9: luci.resultdb.v1.BigQueryExport.test_results:type_name -> luci.resultdb.v1.BigQueryExport.TestResults
   997  	7,  // 10: luci.resultdb.v1.BigQueryExport.text_artifacts:type_name -> luci.resultdb.v1.BigQueryExport.TextArtifacts
   998  	11, // 11: luci.resultdb.v1.HistoryOptions.commit:type_name -> luci.resultdb.v1.CommitPosition
   999  	5,  // 12: luci.resultdb.v1.SourceSpec.sources:type_name -> luci.resultdb.v1.Sources
  1000  	12, // 13: luci.resultdb.v1.Sources.gitiles_commit:type_name -> luci.resultdb.v1.GitilesCommit
  1001  	13, // 14: luci.resultdb.v1.Sources.changelists:type_name -> luci.resultdb.v1.GerritChange
  1002  	14, // 15: luci.resultdb.v1.BigQueryExport.TestResults.predicate:type_name -> luci.resultdb.v1.TestResultPredicate
  1003  	15, // 16: luci.resultdb.v1.BigQueryExport.TextArtifacts.predicate:type_name -> luci.resultdb.v1.ArtifactPredicate
  1004  	17, // [17:17] is the sub-list for method output_type
  1005  	17, // [17:17] is the sub-list for method input_type
  1006  	17, // [17:17] is the sub-list for extension type_name
  1007  	17, // [17:17] is the sub-list for extension extendee
  1008  	0,  // [0:17] is the sub-list for field type_name
  1009  }
  1010  
  1011  func init() { file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_init() }
  1012  func file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_init() {
  1013  	if File_go_chromium_org_luci_resultdb_proto_v1_invocation_proto != nil {
  1014  		return
  1015  	}
  1016  	file_go_chromium_org_luci_resultdb_proto_v1_common_proto_init()
  1017  	file_go_chromium_org_luci_resultdb_proto_v1_predicate_proto_init()
  1018  	if !protoimpl.UnsafeEnabled {
  1019  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1020  			switch v := v.(*Invocation); i {
  1021  			case 0:
  1022  				return &v.state
  1023  			case 1:
  1024  				return &v.sizeCache
  1025  			case 2:
  1026  				return &v.unknownFields
  1027  			default:
  1028  				return nil
  1029  			}
  1030  		}
  1031  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1032  			switch v := v.(*BigQueryExport); i {
  1033  			case 0:
  1034  				return &v.state
  1035  			case 1:
  1036  				return &v.sizeCache
  1037  			case 2:
  1038  				return &v.unknownFields
  1039  			default:
  1040  				return nil
  1041  			}
  1042  		}
  1043  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1044  			switch v := v.(*HistoryOptions); i {
  1045  			case 0:
  1046  				return &v.state
  1047  			case 1:
  1048  				return &v.sizeCache
  1049  			case 2:
  1050  				return &v.unknownFields
  1051  			default:
  1052  				return nil
  1053  			}
  1054  		}
  1055  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1056  			switch v := v.(*SourceSpec); i {
  1057  			case 0:
  1058  				return &v.state
  1059  			case 1:
  1060  				return &v.sizeCache
  1061  			case 2:
  1062  				return &v.unknownFields
  1063  			default:
  1064  				return nil
  1065  			}
  1066  		}
  1067  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1068  			switch v := v.(*Sources); i {
  1069  			case 0:
  1070  				return &v.state
  1071  			case 1:
  1072  				return &v.sizeCache
  1073  			case 2:
  1074  				return &v.unknownFields
  1075  			default:
  1076  				return nil
  1077  			}
  1078  		}
  1079  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1080  			switch v := v.(*BigQueryExport_TestResults); i {
  1081  			case 0:
  1082  				return &v.state
  1083  			case 1:
  1084  				return &v.sizeCache
  1085  			case 2:
  1086  				return &v.unknownFields
  1087  			default:
  1088  				return nil
  1089  			}
  1090  		}
  1091  		file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1092  			switch v := v.(*BigQueryExport_TextArtifacts); i {
  1093  			case 0:
  1094  				return &v.state
  1095  			case 1:
  1096  				return &v.sizeCache
  1097  			case 2:
  1098  				return &v.unknownFields
  1099  			default:
  1100  				return nil
  1101  			}
  1102  		}
  1103  	}
  1104  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes[1].OneofWrappers = []interface{}{
  1105  		(*BigQueryExport_TestResults_)(nil),
  1106  		(*BigQueryExport_TextArtifacts_)(nil),
  1107  	}
  1108  	type x struct{}
  1109  	out := protoimpl.TypeBuilder{
  1110  		File: protoimpl.DescBuilder{
  1111  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1112  			RawDescriptor: file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDesc,
  1113  			NumEnums:      1,
  1114  			NumMessages:   7,
  1115  			NumExtensions: 0,
  1116  			NumServices:   0,
  1117  		},
  1118  		GoTypes:           file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_goTypes,
  1119  		DependencyIndexes: file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_depIdxs,
  1120  		EnumInfos:         file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_enumTypes,
  1121  		MessageInfos:      file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_msgTypes,
  1122  	}.Build()
  1123  	File_go_chromium_org_luci_resultdb_proto_v1_invocation_proto = out.File
  1124  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_rawDesc = nil
  1125  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_goTypes = nil
  1126  	file_go_chromium_org_luci_resultdb_proto_v1_invocation_proto_depIdxs = nil
  1127  }