go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/swarming/internal/remoteworkers/worker.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.31.0
     4  // 	protoc        v3.21.7
     5  // source: go.chromium.org/luci/swarming/internal/remoteworkers/worker.proto
     6  
     7  package remoteworkers
     8  
     9  import (
    10  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    11  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    12  	anypb "google.golang.org/protobuf/types/known/anypb"
    13  	reflect "reflect"
    14  	sync "sync"
    15  )
    16  
    17  const (
    18  	// Verify that this generated code is sufficiently up-to-date.
    19  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    20  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    21  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    22  )
    23  
    24  // Describes a worker, which is a list of one or more devices and the
    25  // connections between them. A device could be a computer, a phone, or even an
    26  // accelerator like a GPU; it's up to the farm administrator to decide how to
    27  // model their farm. For example, if a farm only has one type of GPU, the GPU
    28  // could be modelled as a "has_gpu" property on its host computer; if it has
    29  // many subproperties itself, it might be better to model it as a separate
    30  // device.
    31  //
    32  // The first device in the worker is the "primary device" - that is, the device
    33  // running a bot and which is responsible for actually executing commands. All
    34  // other devices are considered to be attached devices, and must be controllable
    35  // by the primary device.
    36  //
    37  // This message (and all its submessages) can be used in two contexts:
    38  //
    39  // * Status: sent by the bot to report the current capabilities of the device to
    40  // allow reservation matching.
    41  // * Request: sent by a client to request a device with certain capabilities in
    42  // a reservation.
    43  //
    44  // Several of the fields in this message have different semantics depending on
    45  // which of which of these contexts it is used. These semantics are described
    46  // below.
    47  //
    48  // Several messages in Worker and its submessages have the concept of keys and
    49  // values, such as `Worker.Property` and `Device.Property`. All keys are simple
    50  // strings, but certain keys are "standard" keys and should be broadly supported
    51  // across farms and implementations; these are listed below each relevant
    52  // message. Bot implementations or farm admins may add *additional* keys, but
    53  // these SHOULD all begin with an underscore so they do not conflict with
    54  // standard keys that may be added in the future.
    55  //
    56  // Keys are not context sensitive.
    57  //
    58  // See http://goo.gl/NurY8g for more information on the Worker message.
    59  type Worker struct {
    60  	state         protoimpl.MessageState
    61  	sizeCache     protoimpl.SizeCache
    62  	unknownFields protoimpl.UnknownFields
    63  
    64  	// A list of devices; the first device is the primary device. See the `Device`
    65  	// message for more information.
    66  	Devices []*Device `protobuf:"bytes,1,rep,name=devices,proto3" json:"devices,omitempty"`
    67  	// A worker may contain "global" properties. For example, certain machines
    68  	// might be reserved for certain types of jobs, like short-running compilation
    69  	// versus long-running integration tests. This property is known as a "pool"
    70  	// and is not related to any one device within the worker; rather, it applies
    71  	// to the worker as a whole.
    72  	//
    73  	// The behaviour of repeated keys is identical to that of Device.Property.
    74  	Properties []*Worker_Property `protobuf:"bytes,2,rep,name=properties,proto3" json:"properties,omitempty"`
    75  	// Bots can be configured in certain ways when accepting leases. For example,
    76  	// many leases are executed inside a Docker container. To support this, the
    77  	// bot needs to be able to report that it has Docker installed (and knows how
    78  	// to execute something inside a container), and the task submitter needs to
    79  	// specify which image should be used to start the container. Similarly, a
    80  	// lease may be able to run as one of several users on the worker; in such
    81  	// cases, the bot needs to report what users are available, and the submitter
    82  	// needs to choose one.
    83  	//
    84  	// Therefore, when this message is reported by the bot to the service, each
    85  	// key represents a *type* of configuration that the bot knows how to set,
    86  	// while each *value* represents a legal value for that configuration (the
    87  	// empty string is interpreted as a wildcard, such as for Docker images).
    88  	// When this message is sent by the server to the bot in the context of a
    89  	// lease, it represents a command to the bot to apply the setting. Keys may
    90  	// be repeated during reporting but not in a lease.
    91  	Configs []*Worker_Config `protobuf:"bytes,3,rep,name=configs,proto3" json:"configs,omitempty"`
    92  	// Implementation-dependent metadata about the worker. Both servers and bots
    93  	// may define messages which can be encoded here; bots are free to provide
    94  	// metadata in multiple formats, and servers are free to choose one or more
    95  	// of the values to process and ignore others. In particular, it is *not*
    96  	// considered an error for the bot to provide the server with a field that it
    97  	// doesn't know about.
    98  	Metadata []*anypb.Any `protobuf:"bytes,4,rep,name=metadata,proto3" json:"metadata,omitempty"`
    99  }
   100  
   101  func (x *Worker) Reset() {
   102  	*x = Worker{}
   103  	if protoimpl.UnsafeEnabled {
   104  		mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[0]
   105  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   106  		ms.StoreMessageInfo(mi)
   107  	}
   108  }
   109  
   110  func (x *Worker) String() string {
   111  	return protoimpl.X.MessageStringOf(x)
   112  }
   113  
   114  func (*Worker) ProtoMessage() {}
   115  
   116  func (x *Worker) ProtoReflect() protoreflect.Message {
   117  	mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[0]
   118  	if protoimpl.UnsafeEnabled && x != nil {
   119  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   120  		if ms.LoadMessageInfo() == nil {
   121  			ms.StoreMessageInfo(mi)
   122  		}
   123  		return ms
   124  	}
   125  	return mi.MessageOf(x)
   126  }
   127  
   128  // Deprecated: Use Worker.ProtoReflect.Descriptor instead.
   129  func (*Worker) Descriptor() ([]byte, []int) {
   130  	return file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescGZIP(), []int{0}
   131  }
   132  
   133  func (x *Worker) GetDevices() []*Device {
   134  	if x != nil {
   135  		return x.Devices
   136  	}
   137  	return nil
   138  }
   139  
   140  func (x *Worker) GetProperties() []*Worker_Property {
   141  	if x != nil {
   142  		return x.Properties
   143  	}
   144  	return nil
   145  }
   146  
   147  func (x *Worker) GetConfigs() []*Worker_Config {
   148  	if x != nil {
   149  		return x.Configs
   150  	}
   151  	return nil
   152  }
   153  
   154  func (x *Worker) GetMetadata() []*anypb.Any {
   155  	if x != nil {
   156  		return x.Metadata
   157  	}
   158  	return nil
   159  }
   160  
   161  // Any device, including computers, phones, accelerators (e.g. GPUs), etc. All
   162  // names must be unique.
   163  type Device struct {
   164  	state         protoimpl.MessageState
   165  	sizeCache     protoimpl.SizeCache
   166  	unknownFields protoimpl.UnknownFields
   167  
   168  	// The handle can be thought of as the "name" of the device, and must be
   169  	// unique within a Worker.
   170  	//
   171  	// In the Status context, the handle should be some human-understandable name,
   172  	// perhaps corresponding to a label physically written on the device to make
   173  	// it easy to locate. In the Request context, the name should be the
   174  	// *logical* name expected by the task. The bot is responsible for mapping the
   175  	// logical name expected by the task to a machine-readable name that the task
   176  	// can actually use, such as a USB address. The method by which this mapping
   177  	// is communicated to the task is not covered in this API.
   178  	Handle string `protobuf:"bytes,1,opt,name=handle,proto3" json:"handle,omitempty"`
   179  	// Properties of this device that don't change based on the tasks that are
   180  	// running on it, e.g. OS, CPU architecture, etc.
   181  	//
   182  	// Keys may be repeated, and have the following interpretation:
   183  	//
   184  	//   - Status context: the device can support *any* the listed values. For
   185  	//     example, an "ISA" property might include "x86", "x86-64" and "sse4".
   186  	//
   187  	//   - Request context: the device *must* support *all* of the listed values.
   188  	Properties []*Device_Property `protobuf:"bytes,2,rep,name=properties,proto3" json:"properties,omitempty"`
   189  }
   190  
   191  func (x *Device) Reset() {
   192  	*x = Device{}
   193  	if protoimpl.UnsafeEnabled {
   194  		mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[1]
   195  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   196  		ms.StoreMessageInfo(mi)
   197  	}
   198  }
   199  
   200  func (x *Device) String() string {
   201  	return protoimpl.X.MessageStringOf(x)
   202  }
   203  
   204  func (*Device) ProtoMessage() {}
   205  
   206  func (x *Device) ProtoReflect() protoreflect.Message {
   207  	mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[1]
   208  	if protoimpl.UnsafeEnabled && x != nil {
   209  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   210  		if ms.LoadMessageInfo() == nil {
   211  			ms.StoreMessageInfo(mi)
   212  		}
   213  		return ms
   214  	}
   215  	return mi.MessageOf(x)
   216  }
   217  
   218  // Deprecated: Use Device.ProtoReflect.Descriptor instead.
   219  func (*Device) Descriptor() ([]byte, []int) {
   220  	return file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescGZIP(), []int{1}
   221  }
   222  
   223  func (x *Device) GetHandle() string {
   224  	if x != nil {
   225  		return x.Handle
   226  	}
   227  	return ""
   228  }
   229  
   230  func (x *Device) GetProperties() []*Device_Property {
   231  	if x != nil {
   232  		return x.Properties
   233  	}
   234  	return nil
   235  }
   236  
   237  // A global property; see the `properties` field for more information.
   238  type Worker_Property struct {
   239  	state         protoimpl.MessageState
   240  	sizeCache     protoimpl.SizeCache
   241  	unknownFields protoimpl.UnknownFields
   242  
   243  	// For general information on keys, see the documentation to `Worker`.
   244  	//
   245  	// The current set of standard keys are:
   246  	//
   247  	// * pool: different workers can be reserved for different purposes. For
   248  	// example, an admin might want to segregate long-running integration tests
   249  	// from short-running unit tests, so unit tests will always get some
   250  	// throughput. To support this, the server can assign different values for
   251  	// `pool` (such as "itest" and "utest") to different workers, and then have
   252  	// jobs request workers from those pools.
   253  	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
   254  	// The property's value.
   255  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   256  }
   257  
   258  func (x *Worker_Property) Reset() {
   259  	*x = Worker_Property{}
   260  	if protoimpl.UnsafeEnabled {
   261  		mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[2]
   262  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   263  		ms.StoreMessageInfo(mi)
   264  	}
   265  }
   266  
   267  func (x *Worker_Property) String() string {
   268  	return protoimpl.X.MessageStringOf(x)
   269  }
   270  
   271  func (*Worker_Property) ProtoMessage() {}
   272  
   273  func (x *Worker_Property) ProtoReflect() protoreflect.Message {
   274  	mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[2]
   275  	if protoimpl.UnsafeEnabled && x != nil {
   276  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   277  		if ms.LoadMessageInfo() == nil {
   278  			ms.StoreMessageInfo(mi)
   279  		}
   280  		return ms
   281  	}
   282  	return mi.MessageOf(x)
   283  }
   284  
   285  // Deprecated: Use Worker_Property.ProtoReflect.Descriptor instead.
   286  func (*Worker_Property) Descriptor() ([]byte, []int) {
   287  	return file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescGZIP(), []int{0, 0}
   288  }
   289  
   290  func (x *Worker_Property) GetKey() string {
   291  	if x != nil {
   292  		return x.Key
   293  	}
   294  	return ""
   295  }
   296  
   297  func (x *Worker_Property) GetValue() string {
   298  	if x != nil {
   299  		return x.Value
   300  	}
   301  	return ""
   302  }
   303  
   304  // A configuration request or report; see the `configs` field for more
   305  // information.
   306  type Worker_Config struct {
   307  	state         protoimpl.MessageState
   308  	sizeCache     protoimpl.SizeCache
   309  	unknownFields protoimpl.UnknownFields
   310  
   311  	// For general information on keys, see the documentation to `Worker`.
   312  	//
   313  	// The current set of standard keys are:
   314  	//
   315  	// * DockerImage: the image of the container. When being reported by the
   316  	// bot, the empty value should always be included if the bot is able to pull
   317  	// its own images; the bot may optionally *also* report images that are
   318  	// present in its cache. When being requested in a lease, the value is the
   319  	// URI of the image (eg `gcr.io/user/image@sha256:hash`).
   320  	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
   321  	// The configuration's value.
   322  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   323  }
   324  
   325  func (x *Worker_Config) Reset() {
   326  	*x = Worker_Config{}
   327  	if protoimpl.UnsafeEnabled {
   328  		mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[3]
   329  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   330  		ms.StoreMessageInfo(mi)
   331  	}
   332  }
   333  
   334  func (x *Worker_Config) String() string {
   335  	return protoimpl.X.MessageStringOf(x)
   336  }
   337  
   338  func (*Worker_Config) ProtoMessage() {}
   339  
   340  func (x *Worker_Config) ProtoReflect() protoreflect.Message {
   341  	mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[3]
   342  	if protoimpl.UnsafeEnabled && x != nil {
   343  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   344  		if ms.LoadMessageInfo() == nil {
   345  			ms.StoreMessageInfo(mi)
   346  		}
   347  		return ms
   348  	}
   349  	return mi.MessageOf(x)
   350  }
   351  
   352  // Deprecated: Use Worker_Config.ProtoReflect.Descriptor instead.
   353  func (*Worker_Config) Descriptor() ([]byte, []int) {
   354  	return file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescGZIP(), []int{0, 1}
   355  }
   356  
   357  func (x *Worker_Config) GetKey() string {
   358  	if x != nil {
   359  		return x.Key
   360  	}
   361  	return ""
   362  }
   363  
   364  func (x *Worker_Config) GetValue() string {
   365  	if x != nil {
   366  		return x.Value
   367  	}
   368  	return ""
   369  }
   370  
   371  // A device property; see `properties` for more information.
   372  type Device_Property struct {
   373  	state         protoimpl.MessageState
   374  	sizeCache     protoimpl.SizeCache
   375  	unknownFields protoimpl.UnknownFields
   376  
   377  	// For general information on keys, see the documentation to `Worker`.
   378  	//
   379  	// The current set of standard keys are:
   380  	//
   381  	// * os: a human-readable description of the OS. Examples include `linux`,
   382  	// `ubuntu` and `ubuntu 14.04` (note that a bot may advertise itself as more
   383  	// than one). This will be replaced in the future by more well-structured
   384  	// keys and values to represent OS variants.
   385  	//
   386  	// * has-docker: "true" if the bot has Docker installed. This will be
   387  	// replaced in the future by a more structured message for Docker support.
   388  	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
   389  	// The property's value.
   390  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   391  }
   392  
   393  func (x *Device_Property) Reset() {
   394  	*x = Device_Property{}
   395  	if protoimpl.UnsafeEnabled {
   396  		mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[4]
   397  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   398  		ms.StoreMessageInfo(mi)
   399  	}
   400  }
   401  
   402  func (x *Device_Property) String() string {
   403  	return protoimpl.X.MessageStringOf(x)
   404  }
   405  
   406  func (*Device_Property) ProtoMessage() {}
   407  
   408  func (x *Device_Property) ProtoReflect() protoreflect.Message {
   409  	mi := &file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[4]
   410  	if protoimpl.UnsafeEnabled && x != nil {
   411  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   412  		if ms.LoadMessageInfo() == nil {
   413  			ms.StoreMessageInfo(mi)
   414  		}
   415  		return ms
   416  	}
   417  	return mi.MessageOf(x)
   418  }
   419  
   420  // Deprecated: Use Device_Property.ProtoReflect.Descriptor instead.
   421  func (*Device_Property) Descriptor() ([]byte, []int) {
   422  	return file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescGZIP(), []int{1, 0}
   423  }
   424  
   425  func (x *Device_Property) GetKey() string {
   426  	if x != nil {
   427  		return x.Key
   428  	}
   429  	return ""
   430  }
   431  
   432  func (x *Device_Property) GetValue() string {
   433  	if x != nil {
   434  		return x.Value
   435  	}
   436  	return ""
   437  }
   438  
   439  var File_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto protoreflect.FileDescriptor
   440  
   441  var file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDesc = []byte{
   442  	0x0a, 0x41, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
   443  	0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x2f,
   444  	0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77,
   445  	0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x2f, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x70, 0x72,
   446  	0x6f, 0x74, 0x6f, 0x12, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x65, 0x76, 0x74,
   447  	0x6f, 0x6f, 0x6c, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x65,
   448  	0x72, 0x73, 0x2e, 0x76, 0x31, 0x74, 0x65, 0x73, 0x74, 0x32, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67,
   449  	0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x61, 0x6e, 0x79, 0x2e,
   450  	0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x91, 0x03, 0x0a, 0x06, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72,
   451  	0x12, 0x47, 0x0a, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
   452  	0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x65, 0x76, 0x74, 0x6f,
   453  	0x6f, 0x6c, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72,
   454  	0x73, 0x2e, 0x76, 0x31, 0x74, 0x65, 0x73, 0x74, 0x32, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
   455  	0x52, 0x07, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x0a, 0x70, 0x72, 0x6f,
   456  	0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e,
   457  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x65, 0x76, 0x74, 0x6f, 0x6f, 0x6c, 0x73, 0x2e,
   458  	0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x2e, 0x76, 0x31,
   459  	0x74, 0x65, 0x73, 0x74, 0x32, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x2e, 0x50, 0x72, 0x6f,
   460  	0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65,
   461  	0x73, 0x12, 0x4e, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x03, 0x20, 0x03,
   462  	0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x65, 0x76, 0x74,
   463  	0x6f, 0x6f, 0x6c, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x65,
   464  	0x72, 0x73, 0x2e, 0x76, 0x31, 0x74, 0x65, 0x73, 0x74, 0x32, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x65,
   465  	0x72, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
   466  	0x73, 0x12, 0x30, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20,
   467  	0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
   468  	0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x41, 0x6e, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64,
   469  	0x61, 0x74, 0x61, 0x1a, 0x32, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x12,
   470  	0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
   471  	0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
   472  	0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x1a, 0x30, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69,
   473  	0x67, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
   474  	0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01,
   475  	0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0xac, 0x01, 0x0a, 0x06, 0x44, 0x65,
   476  	0x76, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x18, 0x01,
   477  	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x56, 0x0a, 0x0a,
   478  	0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
   479  	0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x65, 0x76, 0x74, 0x6f, 0x6f,
   480  	0x6c, 0x73, 0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73,
   481  	0x2e, 0x76, 0x31, 0x74, 0x65, 0x73, 0x74, 0x32, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x2e,
   482  	0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72,
   483  	0x74, 0x69, 0x65, 0x73, 0x1a, 0x32, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79,
   484  	0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
   485  	0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
   486  	0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x42, 0xa5, 0x01, 0x0a, 0x29, 0x63, 0x6f, 0x6d,
   487  	0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x64, 0x65, 0x76, 0x74, 0x6f, 0x6f, 0x6c, 0x73,
   488  	0x2e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x2e, 0x76,
   489  	0x31, 0x74, 0x65, 0x73, 0x74, 0x32, 0x42, 0x13, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x57, 0x6f,
   490  	0x72, 0x6b, 0x65, 0x72, 0x73, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x50, 0x01, 0x5a, 0x34, 0x67,
   491  	0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c,
   492  	0x75, 0x63, 0x69, 0x2f, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x2f, 0x69, 0x6e, 0x74,
   493  	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x77, 0x6f, 0x72, 0x6b,
   494  	0x65, 0x72, 0x73, 0xa2, 0x02, 0x02, 0x52, 0x57, 0xaa, 0x02, 0x25, 0x47, 0x6f, 0x6f, 0x67, 0x6c,
   495  	0x65, 0x2e, 0x44, 0x65, 0x76, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74,
   496  	0x65, 0x57, 0x6f, 0x72, 0x6b, 0x65, 0x72, 0x73, 0x2e, 0x56, 0x31, 0x54, 0x65, 0x73, 0x74, 0x32,
   497  	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
   498  }
   499  
   500  var (
   501  	file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescOnce sync.Once
   502  	file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescData = file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDesc
   503  )
   504  
   505  func file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescGZIP() []byte {
   506  	file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescOnce.Do(func() {
   507  		file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescData)
   508  	})
   509  	return file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDescData
   510  }
   511  
   512  var file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
   513  var file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_goTypes = []interface{}{
   514  	(*Worker)(nil),          // 0: google.devtools.remoteworkers.v1test2.Worker
   515  	(*Device)(nil),          // 1: google.devtools.remoteworkers.v1test2.Device
   516  	(*Worker_Property)(nil), // 2: google.devtools.remoteworkers.v1test2.Worker.Property
   517  	(*Worker_Config)(nil),   // 3: google.devtools.remoteworkers.v1test2.Worker.Config
   518  	(*Device_Property)(nil), // 4: google.devtools.remoteworkers.v1test2.Device.Property
   519  	(*anypb.Any)(nil),       // 5: google.protobuf.Any
   520  }
   521  var file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_depIdxs = []int32{
   522  	1, // 0: google.devtools.remoteworkers.v1test2.Worker.devices:type_name -> google.devtools.remoteworkers.v1test2.Device
   523  	2, // 1: google.devtools.remoteworkers.v1test2.Worker.properties:type_name -> google.devtools.remoteworkers.v1test2.Worker.Property
   524  	3, // 2: google.devtools.remoteworkers.v1test2.Worker.configs:type_name -> google.devtools.remoteworkers.v1test2.Worker.Config
   525  	5, // 3: google.devtools.remoteworkers.v1test2.Worker.metadata:type_name -> google.protobuf.Any
   526  	4, // 4: google.devtools.remoteworkers.v1test2.Device.properties:type_name -> google.devtools.remoteworkers.v1test2.Device.Property
   527  	5, // [5:5] is the sub-list for method output_type
   528  	5, // [5:5] is the sub-list for method input_type
   529  	5, // [5:5] is the sub-list for extension type_name
   530  	5, // [5:5] is the sub-list for extension extendee
   531  	0, // [0:5] is the sub-list for field type_name
   532  }
   533  
   534  func init() { file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_init() }
   535  func file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_init() {
   536  	if File_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto != nil {
   537  		return
   538  	}
   539  	if !protoimpl.UnsafeEnabled {
   540  		file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
   541  			switch v := v.(*Worker); i {
   542  			case 0:
   543  				return &v.state
   544  			case 1:
   545  				return &v.sizeCache
   546  			case 2:
   547  				return &v.unknownFields
   548  			default:
   549  				return nil
   550  			}
   551  		}
   552  		file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
   553  			switch v := v.(*Device); i {
   554  			case 0:
   555  				return &v.state
   556  			case 1:
   557  				return &v.sizeCache
   558  			case 2:
   559  				return &v.unknownFields
   560  			default:
   561  				return nil
   562  			}
   563  		}
   564  		file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
   565  			switch v := v.(*Worker_Property); i {
   566  			case 0:
   567  				return &v.state
   568  			case 1:
   569  				return &v.sizeCache
   570  			case 2:
   571  				return &v.unknownFields
   572  			default:
   573  				return nil
   574  			}
   575  		}
   576  		file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
   577  			switch v := v.(*Worker_Config); i {
   578  			case 0:
   579  				return &v.state
   580  			case 1:
   581  				return &v.sizeCache
   582  			case 2:
   583  				return &v.unknownFields
   584  			default:
   585  				return nil
   586  			}
   587  		}
   588  		file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
   589  			switch v := v.(*Device_Property); i {
   590  			case 0:
   591  				return &v.state
   592  			case 1:
   593  				return &v.sizeCache
   594  			case 2:
   595  				return &v.unknownFields
   596  			default:
   597  				return nil
   598  			}
   599  		}
   600  	}
   601  	type x struct{}
   602  	out := protoimpl.TypeBuilder{
   603  		File: protoimpl.DescBuilder{
   604  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
   605  			RawDescriptor: file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDesc,
   606  			NumEnums:      0,
   607  			NumMessages:   5,
   608  			NumExtensions: 0,
   609  			NumServices:   0,
   610  		},
   611  		GoTypes:           file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_goTypes,
   612  		DependencyIndexes: file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_depIdxs,
   613  		MessageInfos:      file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_msgTypes,
   614  	}.Build()
   615  	File_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto = out.File
   616  	file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_rawDesc = nil
   617  	file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_goTypes = nil
   618  	file_go_chromium_org_luci_swarming_internal_remoteworkers_worker_proto_depIdxs = nil
   619  }