| // Copyright 2019 The ChromiumOS Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Code generated by protoc-gen-go. DO NOT EDIT. |
| // versions: |
| // protoc-gen-go v1.27.1 |
| // protoc v3.17.1 |
| // source: test_platform/skylab_test_runner/request.proto |
| |
| package skylab_test_runner |
| |
| import ( |
| api "go.chromium.org/chromiumos/config/go/build/api" |
| test_platform "go.chromium.org/chromiumos/infra/proto/go/test_platform" |
| execution "go.chromium.org/chromiumos/infra/proto/go/test_platform/execution" |
| protoreflect "google.golang.org/protobuf/reflect/protoreflect" |
| protoimpl "google.golang.org/protobuf/runtime/protoimpl" |
| timestamppb "google.golang.org/protobuf/types/known/timestamppb" |
| reflect "reflect" |
| sync "sync" |
| ) |
| |
| const ( |
| // Verify that this generated code is sufficiently up-to-date. |
| _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) |
| // Verify that runtime/protoimpl is sufficiently up-to-date. |
| _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) |
| ) |
| |
| // Request represents a request for running an individual test via the |
| // skylab_test_runner recipe. |
| type Request struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Prejob *Request_Prejob `protobuf:"bytes,1,opt,name=prejob,proto3" json:"prejob,omitempty"` |
| Test *Request_Test `protobuf:"bytes,2,opt,name=test,proto3" json:"test,omitempty"` |
| // Soft deadline for test_runner execution. |
| // |
| // All prejob or test execution should abort beyond this deadline. |
| // Clean up actions may execute beyond the deadline. |
| Deadline *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=deadline,proto3" json:"deadline,omitempty"` |
| // The UID of the individual CTP request which kicked off this test run. |
| // Note that distinct requests inside a multi-request CTP build will have |
| // different UIDs. |
| ParentRequestUid string `protobuf:"bytes,4,opt,name=parent_request_uid,json=parentRequestUid,proto3" json:"parent_request_uid,omitempty"` |
| // The buildbucket ID of the CTP build that sent this test_runner request. |
| ParentBuildId int64 `protobuf:"varint,5,opt,name=parent_build_id,json=parentBuildId,proto3" json:"parent_build_id,omitempty"` |
| // Set of Tests to run. The string is a UUID provided by the client |
| // and used to identify each test result in the response. |
| Tests map[string]*Request_Test `protobuf:"bytes,6,rep,name=tests,proto3" json:"tests,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // Uniformly applied parameters for all test executions in the parent test |
| // platform request. |
| ExecutionParam *execution.Param `protobuf:"bytes,7,opt,name=execution_param,json=executionParam,proto3" json:"execution_param,omitempty"` |
| // If set, a Docker container to use to run autoserv. The container must |
| // contain autoserv under the same path as the host (e.g. |
| // "/usr/local/autotest/server/autoserv"). |
| // |
| // The container will be pulled if needed. |
| // |
| // Deprecated: Do not use. |
| ContainerImageInfo *api.ContainerImageInfo `protobuf:"bytes,8,opt,name=container_image_info,json=containerImageInfo,proto3" json:"container_image_info,omitempty"` |
| // TestExecutionBehavior specifies how tests should be run. |
| // This can include information about whether the tests should run and |
| // if failures should be exonerated. |
| DefaultTestExecutionBehavior test_platform.Request_Params_TestExecutionBehavior `protobuf:"varint,9,opt,name=default_test_execution_behavior,json=defaultTestExecutionBehavior,proto3,enum=test_platform.Request_Params_TestExecutionBehavior" json:"default_test_execution_behavior,omitempty"` |
| // The retry attempt identifier. Details how many retries |
| // this build has performed. |
| RetryNumber int32 `protobuf:"varint,10,opt,name=retry_number,json=retryNumber,proto3" json:"retry_number,omitempty"` |
| // Configuration related to results upload of the particular test. |
| ResultsUploadConfig *test_platform.Request_Params_ResultsUploadConfig `protobuf:"bytes,11,opt,name=results_upload_config,json=resultsUploadConfig,proto3" json:"results_upload_config,omitempty"` |
| } |
| |
| func (x *Request) Reset() { |
| *x = Request{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[0] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Request) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Request) ProtoMessage() {} |
| |
| func (x *Request) ProtoReflect() protoreflect.Message { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[0] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Request.ProtoReflect.Descriptor instead. |
| func (*Request) Descriptor() ([]byte, []int) { |
| return file_test_platform_skylab_test_runner_request_proto_rawDescGZIP(), []int{0} |
| } |
| |
| func (x *Request) GetPrejob() *Request_Prejob { |
| if x != nil { |
| return x.Prejob |
| } |
| return nil |
| } |
| |
| func (x *Request) GetTest() *Request_Test { |
| if x != nil { |
| return x.Test |
| } |
| return nil |
| } |
| |
| func (x *Request) GetDeadline() *timestamppb.Timestamp { |
| if x != nil { |
| return x.Deadline |
| } |
| return nil |
| } |
| |
| func (x *Request) GetParentRequestUid() string { |
| if x != nil { |
| return x.ParentRequestUid |
| } |
| return "" |
| } |
| |
| func (x *Request) GetParentBuildId() int64 { |
| if x != nil { |
| return x.ParentBuildId |
| } |
| return 0 |
| } |
| |
| func (x *Request) GetTests() map[string]*Request_Test { |
| if x != nil { |
| return x.Tests |
| } |
| return nil |
| } |
| |
| func (x *Request) GetExecutionParam() *execution.Param { |
| if x != nil { |
| return x.ExecutionParam |
| } |
| return nil |
| } |
| |
| // Deprecated: Do not use. |
| func (x *Request) GetContainerImageInfo() *api.ContainerImageInfo { |
| if x != nil { |
| return x.ContainerImageInfo |
| } |
| return nil |
| } |
| |
| func (x *Request) GetDefaultTestExecutionBehavior() test_platform.Request_Params_TestExecutionBehavior { |
| if x != nil { |
| return x.DefaultTestExecutionBehavior |
| } |
| return test_platform.Request_Params_TestExecutionBehavior(0) |
| } |
| |
| func (x *Request) GetRetryNumber() int32 { |
| if x != nil { |
| return x.RetryNumber |
| } |
| return 0 |
| } |
| |
| func (x *Request) GetResultsUploadConfig() *test_platform.Request_Params_ResultsUploadConfig { |
| if x != nil { |
| return x.ResultsUploadConfig |
| } |
| return nil |
| } |
| |
| // Prejob defines parameters that affect the steps before the actual test |
| // (e.g. provision). |
| type Request_Prejob struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // What needs to be installed onto the DUT at the end of prejob, as |
| // specified in the cros_test_platform request. |
| SoftwareDependencies []*test_platform.Request_Params_SoftwareDependency `protobuf:"bytes,1,rep,name=software_dependencies,json=softwareDependencies,proto3" json:"software_dependencies,omitempty"` |
| // Mutable software prerequisites. Are installed before running the test if |
| // necessary. E.g. {"cros-version" : "reef-release/R77-12345.0.0"} |
| // TODO(crbug.com/1162347): Delete this post-migration. |
| // |
| // Deprecated: Do not use. |
| ProvisionableLabels map[string]string `protobuf:"bytes,2,rep,name=provisionable_labels,json=provisionableLabels,proto3" json:"provisionable_labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // If set, use the Provision TLS API for the prejob. |
| // See go/cros-prover go/cros-tls |
| // |
| // crbug.com/1137444: This is a transitional argument. Once go/cros-prover |
| // migration is complete, all prejobs will use the TLS API and this argument |
| // will be dropped. |
| UseTls bool `protobuf:"varint,3,opt,name=use_tls,json=useTls,proto3" json:"use_tls,omitempty"` |
| // In a multi-DUT test scenario, software_attributes and hardware_attributes |
| // can help us determine primary DUT in a DUT topology. |
| SoftwareAttributes *test_platform.Request_Params_SoftwareAttributes `protobuf:"bytes,4,opt,name=software_attributes,json=softwareAttributes,proto3" json:"software_attributes,omitempty"` |
| HardwareAttributes *test_platform.Request_Params_HardwareAttributes `protobuf:"bytes,5,opt,name=hardware_attributes,json=hardwareAttributes,proto3" json:"hardware_attributes,omitempty"` |
| // Will present in a multi-DUTs test request, it includes necessary metadata |
| // to help us determine DUT topology(primary/secondaries), as well as |
| // software dependencies to run prejob for secondary DUTs. |
| SecondaryDevices []*test_platform.Request_Params_SecondaryDevice `protobuf:"bytes,6,rep,name=secondary_devices,json=secondaryDevices,proto3" json:"secondary_devices,omitempty"` |
| } |
| |
| func (x *Request_Prejob) Reset() { |
| *x = Request_Prejob{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[1] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Request_Prejob) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Request_Prejob) ProtoMessage() {} |
| |
| func (x *Request_Prejob) ProtoReflect() protoreflect.Message { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[1] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Request_Prejob.ProtoReflect.Descriptor instead. |
| func (*Request_Prejob) Descriptor() ([]byte, []int) { |
| return file_test_platform_skylab_test_runner_request_proto_rawDescGZIP(), []int{0, 0} |
| } |
| |
| func (x *Request_Prejob) GetSoftwareDependencies() []*test_platform.Request_Params_SoftwareDependency { |
| if x != nil { |
| return x.SoftwareDependencies |
| } |
| return nil |
| } |
| |
| // Deprecated: Do not use. |
| func (x *Request_Prejob) GetProvisionableLabels() map[string]string { |
| if x != nil { |
| return x.ProvisionableLabels |
| } |
| return nil |
| } |
| |
| func (x *Request_Prejob) GetUseTls() bool { |
| if x != nil { |
| return x.UseTls |
| } |
| return false |
| } |
| |
| func (x *Request_Prejob) GetSoftwareAttributes() *test_platform.Request_Params_SoftwareAttributes { |
| if x != nil { |
| return x.SoftwareAttributes |
| } |
| return nil |
| } |
| |
| func (x *Request_Prejob) GetHardwareAttributes() *test_platform.Request_Params_HardwareAttributes { |
| if x != nil { |
| return x.HardwareAttributes |
| } |
| return nil |
| } |
| |
| func (x *Request_Prejob) GetSecondaryDevices() []*test_platform.Request_Params_SecondaryDevice { |
| if x != nil { |
| return x.SecondaryDevices |
| } |
| return nil |
| } |
| |
| // Test describes which test harness and which test(s) to run. |
| type Request_Test struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Types that are assignable to Harness: |
| // *Request_Test_Autotest_ |
| Harness isRequest_Test_Harness `protobuf_oneof:"harness"` |
| Offload *Request_Test_OffloadOptions `protobuf:"bytes,2,opt,name=offload,proto3" json:"offload,omitempty"` |
| } |
| |
| func (x *Request_Test) Reset() { |
| *x = Request_Test{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[2] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Request_Test) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Request_Test) ProtoMessage() {} |
| |
| func (x *Request_Test) ProtoReflect() protoreflect.Message { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[2] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Request_Test.ProtoReflect.Descriptor instead. |
| func (*Request_Test) Descriptor() ([]byte, []int) { |
| return file_test_platform_skylab_test_runner_request_proto_rawDescGZIP(), []int{0, 1} |
| } |
| |
| func (m *Request_Test) GetHarness() isRequest_Test_Harness { |
| if m != nil { |
| return m.Harness |
| } |
| return nil |
| } |
| |
| func (x *Request_Test) GetAutotest() *Request_Test_Autotest { |
| if x, ok := x.GetHarness().(*Request_Test_Autotest_); ok { |
| return x.Autotest |
| } |
| return nil |
| } |
| |
| func (x *Request_Test) GetOffload() *Request_Test_OffloadOptions { |
| if x != nil { |
| return x.Offload |
| } |
| return nil |
| } |
| |
| type isRequest_Test_Harness interface { |
| isRequest_Test_Harness() |
| } |
| |
| type Request_Test_Autotest_ struct { |
| Autotest *Request_Test_Autotest `protobuf:"bytes,1,opt,name=autotest,proto3,oneof"` |
| } |
| |
| func (*Request_Test_Autotest_) isRequest_Test_Harness() {} |
| |
| type Request_Test_Autotest struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| TestArgs string `protobuf:"bytes,2,opt,name=test_args,json=testArgs,proto3" json:"test_args,omitempty"` |
| // Keyvals are key:value pairs added to the autoserv command. |
| Keyvals map[string]string `protobuf:"bytes,3,rep,name=keyvals,proto3" json:"keyvals,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // If true, run the test as a client-side test: the test logic is |
| // executed in its entirety on the DUT itself. |
| // Otherwise, run the test as a server-side test: the test logic is |
| // executed on the drone server and interacts with the DUT as an external |
| // object. |
| IsClientTest bool `protobuf:"varint,4,opt,name=is_client_test,json=isClientTest,proto3" json:"is_client_test,omitempty"` |
| // Name to be used to display this test's output artifacts, e.g. logs, |
| // results etc. By default display_name is the same as name. |
| // |
| // display_name is especially useful when using test_args to distinguish |
| // between multiple instances of the same test in a request. |
| DisplayName string `protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` |
| } |
| |
| func (x *Request_Test_Autotest) Reset() { |
| *x = Request_Test_Autotest{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[5] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Request_Test_Autotest) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Request_Test_Autotest) ProtoMessage() {} |
| |
| func (x *Request_Test_Autotest) ProtoReflect() protoreflect.Message { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[5] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Request_Test_Autotest.ProtoReflect.Descriptor instead. |
| func (*Request_Test_Autotest) Descriptor() ([]byte, []int) { |
| return file_test_platform_skylab_test_runner_request_proto_rawDescGZIP(), []int{0, 1, 0} |
| } |
| |
| func (x *Request_Test_Autotest) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *Request_Test_Autotest) GetTestArgs() string { |
| if x != nil { |
| return x.TestArgs |
| } |
| return "" |
| } |
| |
| func (x *Request_Test_Autotest) GetKeyvals() map[string]string { |
| if x != nil { |
| return x.Keyvals |
| } |
| return nil |
| } |
| |
| func (x *Request_Test_Autotest) GetIsClientTest() bool { |
| if x != nil { |
| return x.IsClientTest |
| } |
| return false |
| } |
| |
| func (x *Request_Test_Autotest) GetDisplayName() string { |
| if x != nil { |
| return x.DisplayName |
| } |
| return "" |
| } |
| |
| // User-specified options for how results are served to clients |
| type Request_Test_OffloadOptions struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // If this test needs synchronous offloading of results to Google Storage |
| SynchronousGsEnable bool `protobuf:"varint,1,opt,name=synchronous_gs_enable,json=synchronousGsEnable,proto3" json:"synchronous_gs_enable,omitempty"` |
| } |
| |
| func (x *Request_Test_OffloadOptions) Reset() { |
| *x = Request_Test_OffloadOptions{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[6] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Request_Test_OffloadOptions) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Request_Test_OffloadOptions) ProtoMessage() {} |
| |
| func (x *Request_Test_OffloadOptions) ProtoReflect() protoreflect.Message { |
| mi := &file_test_platform_skylab_test_runner_request_proto_msgTypes[6] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Request_Test_OffloadOptions.ProtoReflect.Descriptor instead. |
| func (*Request_Test_OffloadOptions) Descriptor() ([]byte, []int) { |
| return file_test_platform_skylab_test_runner_request_proto_rawDescGZIP(), []int{0, 1, 1} |
| } |
| |
| func (x *Request_Test_OffloadOptions) GetSynchronousGsEnable() bool { |
| if x != nil { |
| return x.SynchronousGsEnable |
| } |
| return false |
| } |
| |
| var File_test_platform_skylab_test_runner_request_proto protoreflect.FileDescriptor |
| |
| var file_test_platform_skylab_test_runner_request_proto_rawDesc = []byte{ |
| 0x0a, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, |
| 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, |
| 0x65, 0x72, 0x2f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x12, 0x20, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, |
| 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, |
| 0x65, 0x72, 0x1a, 0x2d, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x62, |
| 0x75, 0x69, 0x6c, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, |
| 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, |
| 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, |
| 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x1a, 0x23, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, |
| 0x6d, 0x2f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2f, 0x70, 0x61, 0x72, 0x61, |
| 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, |
| 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x70, |
| 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xaf, 0x10, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, |
| 0x12, 0x48, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x6a, 0x6f, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x30, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, |
| 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x6a, |
| 0x6f, 0x62, 0x52, 0x06, 0x70, 0x72, 0x65, 0x6a, 0x6f, 0x62, 0x12, 0x42, 0x0a, 0x04, 0x74, 0x65, |
| 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, |
| 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, |
| 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, |
| 0x65, 0x73, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x04, 0x74, 0x65, 0x73, 0x74, 0x12, 0x36, |
| 0x0a, 0x08, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, |
| 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x64, 0x65, |
| 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x2c, 0x0a, 0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, |
| 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, |
| 0x28, 0x09, 0x52, 0x10, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, |
| 0x74, 0x55, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x62, |
| 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x70, |
| 0x61, 0x72, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x64, 0x12, 0x4a, 0x0a, 0x05, |
| 0x74, 0x65, 0x73, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x74, 0x65, |
| 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x73, 0x6b, 0x79, 0x6c, |
| 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x52, |
| 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, |
| 0x79, 0x52, 0x05, 0x74, 0x65, 0x73, 0x74, 0x73, 0x12, 0x47, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, |
| 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, |
| 0x0b, 0x32, 0x1e, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, |
| 0x6d, 0x2e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x50, 0x61, 0x72, 0x61, |
| 0x6d, 0x52, 0x0e, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, |
| 0x6d, 0x12, 0x5e, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, |
| 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, |
| 0x28, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x6f, 0x73, 0x2e, 0x62, 0x75, 0x69, |
| 0x6c, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, |
| 0x49, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x02, 0x18, 0x01, 0x52, 0x12, 0x63, |
| 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x49, 0x6e, 0x66, |
| 0x6f, 0x12, 0x7a, 0x0a, 0x1f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x74, 0x65, 0x73, |
| 0x74, 0x5f, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x65, 0x68, 0x61, |
| 0x76, 0x69, 0x6f, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x74, 0x65, 0x73, |
| 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, |
| 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, |
| 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x52, |
| 0x1c, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x54, 0x65, 0x73, 0x74, 0x45, 0x78, 0x65, 0x63, |
| 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x12, 0x21, 0x0a, |
| 0x0c, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, |
| 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x74, 0x72, 0x79, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, |
| 0x12, 0x65, 0x0a, 0x15, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x5f, 0x75, 0x70, 0x6c, 0x6f, |
| 0x61, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, |
| 0x31, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, |
| 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x52, |
| 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x55, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x66, |
| 0x69, 0x67, 0x52, 0x13, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x55, 0x70, 0x6c, 0x6f, 0x61, |
| 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0xf5, 0x04, 0x0a, 0x06, 0x50, 0x72, 0x65, 0x6a, |
| 0x6f, 0x62, 0x12, 0x65, 0x0a, 0x15, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x5f, 0x64, |
| 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, |
| 0x0b, 0x32, 0x30, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, |
| 0x6d, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, |
| 0x2e, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, |
| 0x6e, 0x63, 0x79, 0x52, 0x14, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x44, 0x65, 0x70, |
| 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x69, 0x65, 0x73, 0x12, 0x80, 0x01, 0x0a, 0x14, 0x70, 0x72, |
| 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c, 0x61, 0x62, 0x65, |
| 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, |
| 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, |
| 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, |
| 0x65, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x65, 0x6a, 0x6f, 0x62, 0x2e, 0x50, 0x72, 0x6f, 0x76, 0x69, |
| 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, |
| 0x74, 0x72, 0x79, 0x42, 0x02, 0x18, 0x01, 0x52, 0x13, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, |
| 0x6f, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x17, 0x0a, 0x07, |
| 0x75, 0x73, 0x65, 0x5f, 0x74, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, |
| 0x73, 0x65, 0x54, 0x6c, 0x73, 0x12, 0x61, 0x0a, 0x13, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, |
| 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, |
| 0x72, 0x6d, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61, 0x6d, |
| 0x73, 0x2e, 0x53, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, |
| 0x75, 0x74, 0x65, 0x73, 0x52, 0x12, 0x73, 0x6f, 0x66, 0x74, 0x77, 0x61, 0x72, 0x65, 0x41, 0x74, |
| 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x61, 0x0a, 0x13, 0x68, 0x61, 0x72, 0x64, |
| 0x77, 0x61, 0x72, 0x65, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, |
| 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, |
| 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, |
| 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x41, 0x74, 0x74, |
| 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x12, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, |
| 0x65, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x5a, 0x0a, 0x11, 0x73, |
| 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, |
| 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, |
| 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, |
| 0x61, 0x72, 0x61, 0x6d, 0x73, 0x2e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x44, |
| 0x65, 0x76, 0x69, 0x63, 0x65, 0x52, 0x10, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, |
| 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x1a, 0x46, 0x0a, 0x18, 0x50, 0x72, 0x6f, 0x76, 0x69, |
| 0x73, 0x69, 0x6f, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, |
| 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, |
| 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, |
| 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, |
| 0xaa, 0x04, 0x0a, 0x04, 0x54, 0x65, 0x73, 0x74, 0x12, 0x55, 0x0a, 0x08, 0x61, 0x75, 0x74, 0x6f, |
| 0x74, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x74, 0x65, 0x73, |
| 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, |
| 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, |
| 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x74, |
| 0x65, 0x73, 0x74, 0x48, 0x00, 0x52, 0x08, 0x61, 0x75, 0x74, 0x6f, 0x74, 0x65, 0x73, 0x74, 0x12, |
| 0x57, 0x0a, 0x07, 0x6f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x3d, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, |
| 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, |
| 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, |
| 0x2e, 0x4f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, |
| 0x07, 0x6f, 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x1a, 0xa0, 0x02, 0x0a, 0x08, 0x41, 0x75, 0x74, |
| 0x6f, 0x74, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x65, 0x73, |
| 0x74, 0x5f, 0x61, 0x72, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x65, |
| 0x73, 0x74, 0x41, 0x72, 0x67, 0x73, 0x12, 0x5e, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x76, 0x61, 0x6c, |
| 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, |
| 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x74, |
| 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, |
| 0x73, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x74, 0x65, 0x73, 0x74, |
| 0x2e, 0x4b, 0x65, 0x79, 0x76, 0x61, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6b, |
| 0x65, 0x79, 0x76, 0x61, 0x6c, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x69, 0x73, 0x5f, 0x63, 0x6c, 0x69, |
| 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, |
| 0x69, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, |
| 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, |
| 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x1a, |
| 0x3a, 0x0a, 0x0c, 0x4b, 0x65, 0x79, 0x76, 0x61, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, |
| 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, |
| 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, |
| 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x44, 0x0a, 0x0e, 0x4f, |
| 0x66, 0x66, 0x6c, 0x6f, 0x61, 0x64, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x32, 0x0a, |
| 0x15, 0x73, 0x79, 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x6f, 0x75, 0x73, 0x5f, 0x67, 0x73, 0x5f, |
| 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x79, |
| 0x6e, 0x63, 0x68, 0x72, 0x6f, 0x6e, 0x6f, 0x75, 0x73, 0x47, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, |
| 0x65, 0x42, 0x09, 0x0a, 0x07, 0x68, 0x61, 0x72, 0x6e, 0x65, 0x73, 0x73, 0x1a, 0x68, 0x0a, 0x0a, |
| 0x54, 0x65, 0x73, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, |
| 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x44, 0x0a, 0x05, |
| 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x74, 0x65, |
| 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x73, 0x6b, 0x79, 0x6c, |
| 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x2e, 0x52, |
| 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x54, 0x65, 0x73, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, |
| 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x4c, 0x5a, 0x4a, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, |
| 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, |
| 0x75, 0x6d, 0x6f, 0x73, 0x2f, 0x69, 0x6e, 0x66, 0x72, 0x61, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x2f, 0x67, 0x6f, 0x2f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, |
| 0x6d, 0x2f, 0x73, 0x6b, 0x79, 0x6c, 0x61, 0x62, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x75, |
| 0x6e, 0x6e, 0x65, 0x72, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, |
| } |
| |
| var ( |
| file_test_platform_skylab_test_runner_request_proto_rawDescOnce sync.Once |
| file_test_platform_skylab_test_runner_request_proto_rawDescData = file_test_platform_skylab_test_runner_request_proto_rawDesc |
| ) |
| |
| func file_test_platform_skylab_test_runner_request_proto_rawDescGZIP() []byte { |
| file_test_platform_skylab_test_runner_request_proto_rawDescOnce.Do(func() { |
| file_test_platform_skylab_test_runner_request_proto_rawDescData = protoimpl.X.CompressGZIP(file_test_platform_skylab_test_runner_request_proto_rawDescData) |
| }) |
| return file_test_platform_skylab_test_runner_request_proto_rawDescData |
| } |
| |
| var file_test_platform_skylab_test_runner_request_proto_msgTypes = make([]protoimpl.MessageInfo, 8) |
| var file_test_platform_skylab_test_runner_request_proto_goTypes = []interface{}{ |
| (*Request)(nil), // 0: test_platform.skylab_test_runner.Request |
| (*Request_Prejob)(nil), // 1: test_platform.skylab_test_runner.Request.Prejob |
| (*Request_Test)(nil), // 2: test_platform.skylab_test_runner.Request.Test |
| nil, // 3: test_platform.skylab_test_runner.Request.TestsEntry |
| nil, // 4: test_platform.skylab_test_runner.Request.Prejob.ProvisionableLabelsEntry |
| (*Request_Test_Autotest)(nil), // 5: test_platform.skylab_test_runner.Request.Test.Autotest |
| (*Request_Test_OffloadOptions)(nil), // 6: test_platform.skylab_test_runner.Request.Test.OffloadOptions |
| nil, // 7: test_platform.skylab_test_runner.Request.Test.Autotest.KeyvalsEntry |
| (*timestamppb.Timestamp)(nil), // 8: google.protobuf.Timestamp |
| (*execution.Param)(nil), // 9: test_platform.execution.Param |
| (*api.ContainerImageInfo)(nil), // 10: chromiumos.build.api.ContainerImageInfo |
| (test_platform.Request_Params_TestExecutionBehavior)(0), // 11: test_platform.Request.Params.TestExecutionBehavior |
| (*test_platform.Request_Params_ResultsUploadConfig)(nil), // 12: test_platform.Request.Params.ResultsUploadConfig |
| (*test_platform.Request_Params_SoftwareDependency)(nil), // 13: test_platform.Request.Params.SoftwareDependency |
| (*test_platform.Request_Params_SoftwareAttributes)(nil), // 14: test_platform.Request.Params.SoftwareAttributes |
| (*test_platform.Request_Params_HardwareAttributes)(nil), // 15: test_platform.Request.Params.HardwareAttributes |
| (*test_platform.Request_Params_SecondaryDevice)(nil), // 16: test_platform.Request.Params.SecondaryDevice |
| } |
| var file_test_platform_skylab_test_runner_request_proto_depIdxs = []int32{ |
| 1, // 0: test_platform.skylab_test_runner.Request.prejob:type_name -> test_platform.skylab_test_runner.Request.Prejob |
| 2, // 1: test_platform.skylab_test_runner.Request.test:type_name -> test_platform.skylab_test_runner.Request.Test |
| 8, // 2: test_platform.skylab_test_runner.Request.deadline:type_name -> google.protobuf.Timestamp |
| 3, // 3: test_platform.skylab_test_runner.Request.tests:type_name -> test_platform.skylab_test_runner.Request.TestsEntry |
| 9, // 4: test_platform.skylab_test_runner.Request.execution_param:type_name -> test_platform.execution.Param |
| 10, // 5: test_platform.skylab_test_runner.Request.container_image_info:type_name -> chromiumos.build.api.ContainerImageInfo |
| 11, // 6: test_platform.skylab_test_runner.Request.default_test_execution_behavior:type_name -> test_platform.Request.Params.TestExecutionBehavior |
| 12, // 7: test_platform.skylab_test_runner.Request.results_upload_config:type_name -> test_platform.Request.Params.ResultsUploadConfig |
| 13, // 8: test_platform.skylab_test_runner.Request.Prejob.software_dependencies:type_name -> test_platform.Request.Params.SoftwareDependency |
| 4, // 9: test_platform.skylab_test_runner.Request.Prejob.provisionable_labels:type_name -> test_platform.skylab_test_runner.Request.Prejob.ProvisionableLabelsEntry |
| 14, // 10: test_platform.skylab_test_runner.Request.Prejob.software_attributes:type_name -> test_platform.Request.Params.SoftwareAttributes |
| 15, // 11: test_platform.skylab_test_runner.Request.Prejob.hardware_attributes:type_name -> test_platform.Request.Params.HardwareAttributes |
| 16, // 12: test_platform.skylab_test_runner.Request.Prejob.secondary_devices:type_name -> test_platform.Request.Params.SecondaryDevice |
| 5, // 13: test_platform.skylab_test_runner.Request.Test.autotest:type_name -> test_platform.skylab_test_runner.Request.Test.Autotest |
| 6, // 14: test_platform.skylab_test_runner.Request.Test.offload:type_name -> test_platform.skylab_test_runner.Request.Test.OffloadOptions |
| 2, // 15: test_platform.skylab_test_runner.Request.TestsEntry.value:type_name -> test_platform.skylab_test_runner.Request.Test |
| 7, // 16: test_platform.skylab_test_runner.Request.Test.Autotest.keyvals:type_name -> test_platform.skylab_test_runner.Request.Test.Autotest.KeyvalsEntry |
| 17, // [17:17] is the sub-list for method output_type |
| 17, // [17:17] is the sub-list for method input_type |
| 17, // [17:17] is the sub-list for extension type_name |
| 17, // [17:17] is the sub-list for extension extendee |
| 0, // [0:17] is the sub-list for field type_name |
| } |
| |
| func init() { file_test_platform_skylab_test_runner_request_proto_init() } |
| func file_test_platform_skylab_test_runner_request_proto_init() { |
| if File_test_platform_skylab_test_runner_request_proto != nil { |
| return |
| } |
| if !protoimpl.UnsafeEnabled { |
| file_test_platform_skylab_test_runner_request_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Request); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_test_platform_skylab_test_runner_request_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Request_Prejob); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_test_platform_skylab_test_runner_request_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Request_Test); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_test_platform_skylab_test_runner_request_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Request_Test_Autotest); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_test_platform_skylab_test_runner_request_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Request_Test_OffloadOptions); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| } |
| file_test_platform_skylab_test_runner_request_proto_msgTypes[2].OneofWrappers = []interface{}{ |
| (*Request_Test_Autotest_)(nil), |
| } |
| type x struct{} |
| out := protoimpl.TypeBuilder{ |
| File: protoimpl.DescBuilder{ |
| GoPackagePath: reflect.TypeOf(x{}).PkgPath(), |
| RawDescriptor: file_test_platform_skylab_test_runner_request_proto_rawDesc, |
| NumEnums: 0, |
| NumMessages: 8, |
| NumExtensions: 0, |
| NumServices: 0, |
| }, |
| GoTypes: file_test_platform_skylab_test_runner_request_proto_goTypes, |
| DependencyIndexes: file_test_platform_skylab_test_runner_request_proto_depIdxs, |
| MessageInfos: file_test_platform_skylab_test_runner_request_proto_msgTypes, |
| }.Build() |
| File_test_platform_skylab_test_runner_request_proto = out.File |
| file_test_platform_skylab_test_runner_request_proto_rawDesc = nil |
| file_test_platform_skylab_test_runner_request_proto_goTypes = nil |
| file_test_platform_skylab_test_runner_request_proto_depIdxs = nil |
| } |