1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/devtools/remoteworkers/v1test2/command.proto 3 4package remoteworkers 5 6import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11 any "github.com/golang/protobuf/ptypes/any" 12 duration "github.com/golang/protobuf/ptypes/duration" 13 status "google.golang.org/genproto/googleapis/rpc/status" 14) 15 16// Reference imports to suppress errors if they are not otherwise used. 17var _ = proto.Marshal 18var _ = fmt.Errorf 19var _ = math.Inf 20 21// This is a compile-time assertion to ensure that this generated file 22// is compatible with the proto package it is being compiled against. 23// A compilation error at this line likely means your copy of the 24// proto package needs to be updated. 25const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 26 27// Describes a shell-style task to execute, suitable for providing as the Bots 28// interface's `Lease.payload` field. 29type CommandTask struct { 30 // The inputs to the task. 31 Inputs *CommandTask_Inputs `protobuf:"bytes,1,opt,name=inputs,proto3" json:"inputs,omitempty"` 32 // The expected outputs from the task. 33 ExpectedOutputs *CommandTask_Outputs `protobuf:"bytes,4,opt,name=expected_outputs,json=expectedOutputs,proto3" json:"expected_outputs,omitempty"` 34 // The timeouts of this task. 35 Timeouts *CommandTask_Timeouts `protobuf:"bytes,5,opt,name=timeouts,proto3" json:"timeouts,omitempty"` 36 XXX_NoUnkeyedLiteral struct{} `json:"-"` 37 XXX_unrecognized []byte `json:"-"` 38 XXX_sizecache int32 `json:"-"` 39} 40 41func (m *CommandTask) Reset() { *m = CommandTask{} } 42func (m *CommandTask) String() string { return proto.CompactTextString(m) } 43func (*CommandTask) ProtoMessage() {} 44func (*CommandTask) Descriptor() ([]byte, []int) { 45 return fileDescriptor_7b7f8597ab32e88e, []int{0} 46} 47 48func (m *CommandTask) XXX_Unmarshal(b []byte) error { 49 return xxx_messageInfo_CommandTask.Unmarshal(m, b) 50} 51func (m *CommandTask) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 52 return xxx_messageInfo_CommandTask.Marshal(b, m, deterministic) 53} 54func (m *CommandTask) XXX_Merge(src proto.Message) { 55 xxx_messageInfo_CommandTask.Merge(m, src) 56} 57func (m *CommandTask) XXX_Size() int { 58 return xxx_messageInfo_CommandTask.Size(m) 59} 60func (m *CommandTask) XXX_DiscardUnknown() { 61 xxx_messageInfo_CommandTask.DiscardUnknown(m) 62} 63 64var xxx_messageInfo_CommandTask proto.InternalMessageInfo 65 66func (m *CommandTask) GetInputs() *CommandTask_Inputs { 67 if m != nil { 68 return m.Inputs 69 } 70 return nil 71} 72 73func (m *CommandTask) GetExpectedOutputs() *CommandTask_Outputs { 74 if m != nil { 75 return m.ExpectedOutputs 76 } 77 return nil 78} 79 80func (m *CommandTask) GetTimeouts() *CommandTask_Timeouts { 81 if m != nil { 82 return m.Timeouts 83 } 84 return nil 85} 86 87// Describes the inputs to a shell-style task. 88type CommandTask_Inputs struct { 89 // The command itself to run (e.g., argv). 90 // 91 // This field should be passed directly to the underlying operating system, 92 // and so it must be sensible to that operating system. For example, on 93 // Windows, the first argument might be "C:\Windows\System32\ping.exe" - 94 // that is, using drive letters and backslashes. A command for a *nix 95 // system, on the other hand, would use forward slashes. 96 // 97 // All other fields in the RWAPI must consistently use forward slashes, 98 // since those fields may be interpretted by both the service and the bot. 99 Arguments []string `protobuf:"bytes,1,rep,name=arguments,proto3" json:"arguments,omitempty"` 100 // The input filesystem to be set up prior to the task beginning. The 101 // contents should be a repeated set of FileMetadata messages though other 102 // formats are allowed if better for the implementation (eg, a LUCI-style 103 // .isolated file). 104 // 105 // This field is repeated since implementations might want to cache the 106 // metadata, in which case it may be useful to break up portions of the 107 // filesystem that change frequently (eg, specific input files) from those 108 // that don't (eg, standard header files). 109 Files []*Digest `protobuf:"bytes,2,rep,name=files,proto3" json:"files,omitempty"` 110 // All environment variables required by the task. 111 EnvironmentVariables []*CommandTask_Inputs_EnvironmentVariable `protobuf:"bytes,3,rep,name=environment_variables,json=environmentVariables,proto3" json:"environment_variables,omitempty"` 112 XXX_NoUnkeyedLiteral struct{} `json:"-"` 113 XXX_unrecognized []byte `json:"-"` 114 XXX_sizecache int32 `json:"-"` 115} 116 117func (m *CommandTask_Inputs) Reset() { *m = CommandTask_Inputs{} } 118func (m *CommandTask_Inputs) String() string { return proto.CompactTextString(m) } 119func (*CommandTask_Inputs) ProtoMessage() {} 120func (*CommandTask_Inputs) Descriptor() ([]byte, []int) { 121 return fileDescriptor_7b7f8597ab32e88e, []int{0, 0} 122} 123 124func (m *CommandTask_Inputs) XXX_Unmarshal(b []byte) error { 125 return xxx_messageInfo_CommandTask_Inputs.Unmarshal(m, b) 126} 127func (m *CommandTask_Inputs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 128 return xxx_messageInfo_CommandTask_Inputs.Marshal(b, m, deterministic) 129} 130func (m *CommandTask_Inputs) XXX_Merge(src proto.Message) { 131 xxx_messageInfo_CommandTask_Inputs.Merge(m, src) 132} 133func (m *CommandTask_Inputs) XXX_Size() int { 134 return xxx_messageInfo_CommandTask_Inputs.Size(m) 135} 136func (m *CommandTask_Inputs) XXX_DiscardUnknown() { 137 xxx_messageInfo_CommandTask_Inputs.DiscardUnknown(m) 138} 139 140var xxx_messageInfo_CommandTask_Inputs proto.InternalMessageInfo 141 142func (m *CommandTask_Inputs) GetArguments() []string { 143 if m != nil { 144 return m.Arguments 145 } 146 return nil 147} 148 149func (m *CommandTask_Inputs) GetFiles() []*Digest { 150 if m != nil { 151 return m.Files 152 } 153 return nil 154} 155 156func (m *CommandTask_Inputs) GetEnvironmentVariables() []*CommandTask_Inputs_EnvironmentVariable { 157 if m != nil { 158 return m.EnvironmentVariables 159 } 160 return nil 161} 162 163// An environment variable required by this task. 164type CommandTask_Inputs_EnvironmentVariable struct { 165 // The envvar name. 166 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 167 // The envvar value. 168 Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` 169 XXX_NoUnkeyedLiteral struct{} `json:"-"` 170 XXX_unrecognized []byte `json:"-"` 171 XXX_sizecache int32 `json:"-"` 172} 173 174func (m *CommandTask_Inputs_EnvironmentVariable) Reset() { 175 *m = CommandTask_Inputs_EnvironmentVariable{} 176} 177func (m *CommandTask_Inputs_EnvironmentVariable) String() string { return proto.CompactTextString(m) } 178func (*CommandTask_Inputs_EnvironmentVariable) ProtoMessage() {} 179func (*CommandTask_Inputs_EnvironmentVariable) Descriptor() ([]byte, []int) { 180 return fileDescriptor_7b7f8597ab32e88e, []int{0, 0, 0} 181} 182 183func (m *CommandTask_Inputs_EnvironmentVariable) XXX_Unmarshal(b []byte) error { 184 return xxx_messageInfo_CommandTask_Inputs_EnvironmentVariable.Unmarshal(m, b) 185} 186func (m *CommandTask_Inputs_EnvironmentVariable) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 187 return xxx_messageInfo_CommandTask_Inputs_EnvironmentVariable.Marshal(b, m, deterministic) 188} 189func (m *CommandTask_Inputs_EnvironmentVariable) XXX_Merge(src proto.Message) { 190 xxx_messageInfo_CommandTask_Inputs_EnvironmentVariable.Merge(m, src) 191} 192func (m *CommandTask_Inputs_EnvironmentVariable) XXX_Size() int { 193 return xxx_messageInfo_CommandTask_Inputs_EnvironmentVariable.Size(m) 194} 195func (m *CommandTask_Inputs_EnvironmentVariable) XXX_DiscardUnknown() { 196 xxx_messageInfo_CommandTask_Inputs_EnvironmentVariable.DiscardUnknown(m) 197} 198 199var xxx_messageInfo_CommandTask_Inputs_EnvironmentVariable proto.InternalMessageInfo 200 201func (m *CommandTask_Inputs_EnvironmentVariable) GetName() string { 202 if m != nil { 203 return m.Name 204 } 205 return "" 206} 207 208func (m *CommandTask_Inputs_EnvironmentVariable) GetValue() string { 209 if m != nil { 210 return m.Value 211 } 212 return "" 213} 214 215// Describes the expected outputs of the command. 216type CommandTask_Outputs struct { 217 // A list of expected files, relative to the execution root. All paths 218 // MUST be delimited by forward slashes. 219 Files []string `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"` 220 // A list of expected directories, relative to the execution root. All paths 221 // MUST be delimited by forward slashes. 222 Directories []string `protobuf:"bytes,2,rep,name=directories,proto3" json:"directories,omitempty"` 223 // The destination to which any stdout should be sent. The method by which 224 // the bot should send the stream contents to that destination is not 225 // defined in this API. As examples, the destination could be a file 226 // referenced in the `files` field in this message, or it could be a URI 227 // that must be written via the ByteStream API. 228 StdoutDestination string `protobuf:"bytes,3,opt,name=stdout_destination,json=stdoutDestination,proto3" json:"stdout_destination,omitempty"` 229 // The destination to which any stderr should be sent. The method by which 230 // the bot should send the stream contents to that destination is not 231 // defined in this API. As examples, the destination could be a file 232 // referenced in the `files` field in this message, or it could be a URI 233 // that must be written via the ByteStream API. 234 StderrDestination string `protobuf:"bytes,4,opt,name=stderr_destination,json=stderrDestination,proto3" json:"stderr_destination,omitempty"` 235 XXX_NoUnkeyedLiteral struct{} `json:"-"` 236 XXX_unrecognized []byte `json:"-"` 237 XXX_sizecache int32 `json:"-"` 238} 239 240func (m *CommandTask_Outputs) Reset() { *m = CommandTask_Outputs{} } 241func (m *CommandTask_Outputs) String() string { return proto.CompactTextString(m) } 242func (*CommandTask_Outputs) ProtoMessage() {} 243func (*CommandTask_Outputs) Descriptor() ([]byte, []int) { 244 return fileDescriptor_7b7f8597ab32e88e, []int{0, 1} 245} 246 247func (m *CommandTask_Outputs) XXX_Unmarshal(b []byte) error { 248 return xxx_messageInfo_CommandTask_Outputs.Unmarshal(m, b) 249} 250func (m *CommandTask_Outputs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 251 return xxx_messageInfo_CommandTask_Outputs.Marshal(b, m, deterministic) 252} 253func (m *CommandTask_Outputs) XXX_Merge(src proto.Message) { 254 xxx_messageInfo_CommandTask_Outputs.Merge(m, src) 255} 256func (m *CommandTask_Outputs) XXX_Size() int { 257 return xxx_messageInfo_CommandTask_Outputs.Size(m) 258} 259func (m *CommandTask_Outputs) XXX_DiscardUnknown() { 260 xxx_messageInfo_CommandTask_Outputs.DiscardUnknown(m) 261} 262 263var xxx_messageInfo_CommandTask_Outputs proto.InternalMessageInfo 264 265func (m *CommandTask_Outputs) GetFiles() []string { 266 if m != nil { 267 return m.Files 268 } 269 return nil 270} 271 272func (m *CommandTask_Outputs) GetDirectories() []string { 273 if m != nil { 274 return m.Directories 275 } 276 return nil 277} 278 279func (m *CommandTask_Outputs) GetStdoutDestination() string { 280 if m != nil { 281 return m.StdoutDestination 282 } 283 return "" 284} 285 286func (m *CommandTask_Outputs) GetStderrDestination() string { 287 if m != nil { 288 return m.StderrDestination 289 } 290 return "" 291} 292 293// Describes the timeouts associated with this task. 294type CommandTask_Timeouts struct { 295 // This specifies the maximum time that the task can run, excluding the 296 // time required to download inputs or upload outputs. That is, the worker 297 // will terminate the task if it runs longer than this. 298 Execution *duration.Duration `protobuf:"bytes,1,opt,name=execution,proto3" json:"execution,omitempty"` 299 // This specifies the maximum amount of time the task can be idle - that is, 300 // go without generating some output in either stdout or stderr. If the 301 // process is silent for more than the specified time, the worker will 302 // terminate the task. 303 Idle *duration.Duration `protobuf:"bytes,2,opt,name=idle,proto3" json:"idle,omitempty"` 304 // If the execution or IO timeouts are exceeded, the worker will try to 305 // gracefully terminate the task and return any existing logs. However, 306 // tasks may be hard-frozen in which case this process will fail. This 307 // timeout specifies how long to wait for a terminated task to shut down 308 // gracefully (e.g. via SIGTERM) before we bring down the hammer (e.g. 309 // SIGKILL on *nix, CTRL_BREAK_EVENT on Windows). 310 Shutdown *duration.Duration `protobuf:"bytes,3,opt,name=shutdown,proto3" json:"shutdown,omitempty"` 311 XXX_NoUnkeyedLiteral struct{} `json:"-"` 312 XXX_unrecognized []byte `json:"-"` 313 XXX_sizecache int32 `json:"-"` 314} 315 316func (m *CommandTask_Timeouts) Reset() { *m = CommandTask_Timeouts{} } 317func (m *CommandTask_Timeouts) String() string { return proto.CompactTextString(m) } 318func (*CommandTask_Timeouts) ProtoMessage() {} 319func (*CommandTask_Timeouts) Descriptor() ([]byte, []int) { 320 return fileDescriptor_7b7f8597ab32e88e, []int{0, 2} 321} 322 323func (m *CommandTask_Timeouts) XXX_Unmarshal(b []byte) error { 324 return xxx_messageInfo_CommandTask_Timeouts.Unmarshal(m, b) 325} 326func (m *CommandTask_Timeouts) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 327 return xxx_messageInfo_CommandTask_Timeouts.Marshal(b, m, deterministic) 328} 329func (m *CommandTask_Timeouts) XXX_Merge(src proto.Message) { 330 xxx_messageInfo_CommandTask_Timeouts.Merge(m, src) 331} 332func (m *CommandTask_Timeouts) XXX_Size() int { 333 return xxx_messageInfo_CommandTask_Timeouts.Size(m) 334} 335func (m *CommandTask_Timeouts) XXX_DiscardUnknown() { 336 xxx_messageInfo_CommandTask_Timeouts.DiscardUnknown(m) 337} 338 339var xxx_messageInfo_CommandTask_Timeouts proto.InternalMessageInfo 340 341func (m *CommandTask_Timeouts) GetExecution() *duration.Duration { 342 if m != nil { 343 return m.Execution 344 } 345 return nil 346} 347 348func (m *CommandTask_Timeouts) GetIdle() *duration.Duration { 349 if m != nil { 350 return m.Idle 351 } 352 return nil 353} 354 355func (m *CommandTask_Timeouts) GetShutdown() *duration.Duration { 356 if m != nil { 357 return m.Shutdown 358 } 359 return nil 360} 361 362// DEPRECATED - use CommandResult instead. 363// Describes the actual outputs from the task. 364type CommandOutputs struct { 365 // exit_code is only fully reliable if the status' code is OK. If the task 366 // exceeded its deadline or was cancelled, the process may still produce an 367 // exit code as it is cancelled, and this will be populated, but a successful 368 // (zero) is unlikely to be correct unless the status code is OK. 369 ExitCode int32 `protobuf:"varint,1,opt,name=exit_code,json=exitCode,proto3" json:"exit_code,omitempty"` 370 // The output files. The blob referenced by the digest should contain 371 // one of the following (implementation-dependent): 372 // * A marshalled DirectoryMetadata of the returned filesystem 373 // * A LUCI-style .isolated file 374 Outputs *Digest `protobuf:"bytes,2,opt,name=outputs,proto3" json:"outputs,omitempty"` 375 XXX_NoUnkeyedLiteral struct{} `json:"-"` 376 XXX_unrecognized []byte `json:"-"` 377 XXX_sizecache int32 `json:"-"` 378} 379 380func (m *CommandOutputs) Reset() { *m = CommandOutputs{} } 381func (m *CommandOutputs) String() string { return proto.CompactTextString(m) } 382func (*CommandOutputs) ProtoMessage() {} 383func (*CommandOutputs) Descriptor() ([]byte, []int) { 384 return fileDescriptor_7b7f8597ab32e88e, []int{1} 385} 386 387func (m *CommandOutputs) XXX_Unmarshal(b []byte) error { 388 return xxx_messageInfo_CommandOutputs.Unmarshal(m, b) 389} 390func (m *CommandOutputs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 391 return xxx_messageInfo_CommandOutputs.Marshal(b, m, deterministic) 392} 393func (m *CommandOutputs) XXX_Merge(src proto.Message) { 394 xxx_messageInfo_CommandOutputs.Merge(m, src) 395} 396func (m *CommandOutputs) XXX_Size() int { 397 return xxx_messageInfo_CommandOutputs.Size(m) 398} 399func (m *CommandOutputs) XXX_DiscardUnknown() { 400 xxx_messageInfo_CommandOutputs.DiscardUnknown(m) 401} 402 403var xxx_messageInfo_CommandOutputs proto.InternalMessageInfo 404 405func (m *CommandOutputs) GetExitCode() int32 { 406 if m != nil { 407 return m.ExitCode 408 } 409 return 0 410} 411 412func (m *CommandOutputs) GetOutputs() *Digest { 413 if m != nil { 414 return m.Outputs 415 } 416 return nil 417} 418 419// DEPRECATED - use CommandResult instead. 420// Can be used as part of CompleteRequest.metadata, or are part of a more 421// sophisticated message. 422type CommandOverhead struct { 423 // The elapsed time between calling Accept and Complete. The server will also 424 // have its own idea of what this should be, but this excludes the overhead of 425 // the RPCs and the bot response time. 426 Duration *duration.Duration `protobuf:"bytes,1,opt,name=duration,proto3" json:"duration,omitempty"` 427 // The amount of time *not* spent executing the command (ie 428 // uploading/downloading files). 429 Overhead *duration.Duration `protobuf:"bytes,2,opt,name=overhead,proto3" json:"overhead,omitempty"` 430 XXX_NoUnkeyedLiteral struct{} `json:"-"` 431 XXX_unrecognized []byte `json:"-"` 432 XXX_sizecache int32 `json:"-"` 433} 434 435func (m *CommandOverhead) Reset() { *m = CommandOverhead{} } 436func (m *CommandOverhead) String() string { return proto.CompactTextString(m) } 437func (*CommandOverhead) ProtoMessage() {} 438func (*CommandOverhead) Descriptor() ([]byte, []int) { 439 return fileDescriptor_7b7f8597ab32e88e, []int{2} 440} 441 442func (m *CommandOverhead) XXX_Unmarshal(b []byte) error { 443 return xxx_messageInfo_CommandOverhead.Unmarshal(m, b) 444} 445func (m *CommandOverhead) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 446 return xxx_messageInfo_CommandOverhead.Marshal(b, m, deterministic) 447} 448func (m *CommandOverhead) XXX_Merge(src proto.Message) { 449 xxx_messageInfo_CommandOverhead.Merge(m, src) 450} 451func (m *CommandOverhead) XXX_Size() int { 452 return xxx_messageInfo_CommandOverhead.Size(m) 453} 454func (m *CommandOverhead) XXX_DiscardUnknown() { 455 xxx_messageInfo_CommandOverhead.DiscardUnknown(m) 456} 457 458var xxx_messageInfo_CommandOverhead proto.InternalMessageInfo 459 460func (m *CommandOverhead) GetDuration() *duration.Duration { 461 if m != nil { 462 return m.Duration 463 } 464 return nil 465} 466 467func (m *CommandOverhead) GetOverhead() *duration.Duration { 468 if m != nil { 469 return m.Overhead 470 } 471 return nil 472} 473 474// All information about the execution of a command, suitable for providing as 475// the Bots interface's `Lease.result` field. 476type CommandResult struct { 477 // An overall status for the command. For example, if the command timed out, 478 // this might have a code of DEADLINE_EXCEEDED; if it was killed by the OS for 479 // memory exhaustion, it might have a code of RESOURCE_EXHAUSTED. 480 Status *status.Status `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` 481 // The exit code of the process. An exit code of "0" should only be trusted if 482 // `status` has a code of OK (otherwise it may simply be unset). 483 ExitCode int32 `protobuf:"varint,2,opt,name=exit_code,json=exitCode,proto3" json:"exit_code,omitempty"` 484 // The output files. The blob referenced by the digest should contain 485 // one of the following (implementation-dependent): 486 // * A marshalled DirectoryMetadata of the returned filesystem 487 // * A LUCI-style .isolated file 488 Outputs *Digest `protobuf:"bytes,3,opt,name=outputs,proto3" json:"outputs,omitempty"` 489 // The elapsed time between calling Accept and Complete. The server will also 490 // have its own idea of what this should be, but this excludes the overhead of 491 // the RPCs and the bot response time. 492 Duration *duration.Duration `protobuf:"bytes,4,opt,name=duration,proto3" json:"duration,omitempty"` // Deprecated: Do not use. 493 // The amount of time *not* spent executing the command (ie 494 // uploading/downloading files). 495 Overhead *duration.Duration `protobuf:"bytes,5,opt,name=overhead,proto3" json:"overhead,omitempty"` // Deprecated: Do not use. 496 // Implementation-dependent statistics about the task. Both servers and bots 497 // may define messages which can be encoded here; bots are free to provide 498 // statistics in multiple formats, and servers are free to choose one or more 499 // of the values to process and ignore others. In particular, it is *not* 500 // considered an error for the bot to provide the server with a field that it 501 // doesn't know about. 502 Statistics []*any.Any `protobuf:"bytes,6,rep,name=statistics,proto3" json:"statistics,omitempty"` 503 XXX_NoUnkeyedLiteral struct{} `json:"-"` 504 XXX_unrecognized []byte `json:"-"` 505 XXX_sizecache int32 `json:"-"` 506} 507 508func (m *CommandResult) Reset() { *m = CommandResult{} } 509func (m *CommandResult) String() string { return proto.CompactTextString(m) } 510func (*CommandResult) ProtoMessage() {} 511func (*CommandResult) Descriptor() ([]byte, []int) { 512 return fileDescriptor_7b7f8597ab32e88e, []int{3} 513} 514 515func (m *CommandResult) XXX_Unmarshal(b []byte) error { 516 return xxx_messageInfo_CommandResult.Unmarshal(m, b) 517} 518func (m *CommandResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 519 return xxx_messageInfo_CommandResult.Marshal(b, m, deterministic) 520} 521func (m *CommandResult) XXX_Merge(src proto.Message) { 522 xxx_messageInfo_CommandResult.Merge(m, src) 523} 524func (m *CommandResult) XXX_Size() int { 525 return xxx_messageInfo_CommandResult.Size(m) 526} 527func (m *CommandResult) XXX_DiscardUnknown() { 528 xxx_messageInfo_CommandResult.DiscardUnknown(m) 529} 530 531var xxx_messageInfo_CommandResult proto.InternalMessageInfo 532 533func (m *CommandResult) GetStatus() *status.Status { 534 if m != nil { 535 return m.Status 536 } 537 return nil 538} 539 540func (m *CommandResult) GetExitCode() int32 { 541 if m != nil { 542 return m.ExitCode 543 } 544 return 0 545} 546 547func (m *CommandResult) GetOutputs() *Digest { 548 if m != nil { 549 return m.Outputs 550 } 551 return nil 552} 553 554// Deprecated: Do not use. 555func (m *CommandResult) GetDuration() *duration.Duration { 556 if m != nil { 557 return m.Duration 558 } 559 return nil 560} 561 562// Deprecated: Do not use. 563func (m *CommandResult) GetOverhead() *duration.Duration { 564 if m != nil { 565 return m.Overhead 566 } 567 return nil 568} 569 570func (m *CommandResult) GetStatistics() []*any.Any { 571 if m != nil { 572 return m.Statistics 573 } 574 return nil 575} 576 577// The metadata for a file. Similar to the equivalent message in the Remote 578// Execution API. 579type FileMetadata struct { 580 // The path of this file. If this message is part of the 581 // CommandOutputs.outputs fields, the path is relative to the execution root 582 // and must correspond to an entry in CommandTask.outputs.files. If this 583 // message is part of a Directory message, then the path is relative to the 584 // root of that directory. All paths MUST be delimited by forward slashes. 585 Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` 586 // A pointer to the contents of the file. The method by which a client 587 // retrieves the contents from a CAS system is not defined here. 588 Digest *Digest `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"` 589 // If the file is small enough, its contents may also or alternatively be 590 // listed here. 591 Contents []byte `protobuf:"bytes,3,opt,name=contents,proto3" json:"contents,omitempty"` 592 // Properties of the file 593 IsExecutable bool `protobuf:"varint,4,opt,name=is_executable,json=isExecutable,proto3" json:"is_executable,omitempty"` 594 XXX_NoUnkeyedLiteral struct{} `json:"-"` 595 XXX_unrecognized []byte `json:"-"` 596 XXX_sizecache int32 `json:"-"` 597} 598 599func (m *FileMetadata) Reset() { *m = FileMetadata{} } 600func (m *FileMetadata) String() string { return proto.CompactTextString(m) } 601func (*FileMetadata) ProtoMessage() {} 602func (*FileMetadata) Descriptor() ([]byte, []int) { 603 return fileDescriptor_7b7f8597ab32e88e, []int{4} 604} 605 606func (m *FileMetadata) XXX_Unmarshal(b []byte) error { 607 return xxx_messageInfo_FileMetadata.Unmarshal(m, b) 608} 609func (m *FileMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 610 return xxx_messageInfo_FileMetadata.Marshal(b, m, deterministic) 611} 612func (m *FileMetadata) XXX_Merge(src proto.Message) { 613 xxx_messageInfo_FileMetadata.Merge(m, src) 614} 615func (m *FileMetadata) XXX_Size() int { 616 return xxx_messageInfo_FileMetadata.Size(m) 617} 618func (m *FileMetadata) XXX_DiscardUnknown() { 619 xxx_messageInfo_FileMetadata.DiscardUnknown(m) 620} 621 622var xxx_messageInfo_FileMetadata proto.InternalMessageInfo 623 624func (m *FileMetadata) GetPath() string { 625 if m != nil { 626 return m.Path 627 } 628 return "" 629} 630 631func (m *FileMetadata) GetDigest() *Digest { 632 if m != nil { 633 return m.Digest 634 } 635 return nil 636} 637 638func (m *FileMetadata) GetContents() []byte { 639 if m != nil { 640 return m.Contents 641 } 642 return nil 643} 644 645func (m *FileMetadata) GetIsExecutable() bool { 646 if m != nil { 647 return m.IsExecutable 648 } 649 return false 650} 651 652// The metadata for a directory. Similar to the equivalent message in the Remote 653// Execution API. 654type DirectoryMetadata struct { 655 // The path of the directory, as in 656 // [FileMetadata.path][google.devtools.remoteworkers.v1test2.FileMetadata.path]. 657 Path string `protobuf:"bytes,1,opt,name=path,proto3" json:"path,omitempty"` 658 // A pointer to the contents of the directory, in the form of a marshalled 659 // Directory message. 660 Digest *Digest `protobuf:"bytes,2,opt,name=digest,proto3" json:"digest,omitempty"` 661 XXX_NoUnkeyedLiteral struct{} `json:"-"` 662 XXX_unrecognized []byte `json:"-"` 663 XXX_sizecache int32 `json:"-"` 664} 665 666func (m *DirectoryMetadata) Reset() { *m = DirectoryMetadata{} } 667func (m *DirectoryMetadata) String() string { return proto.CompactTextString(m) } 668func (*DirectoryMetadata) ProtoMessage() {} 669func (*DirectoryMetadata) Descriptor() ([]byte, []int) { 670 return fileDescriptor_7b7f8597ab32e88e, []int{5} 671} 672 673func (m *DirectoryMetadata) XXX_Unmarshal(b []byte) error { 674 return xxx_messageInfo_DirectoryMetadata.Unmarshal(m, b) 675} 676func (m *DirectoryMetadata) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 677 return xxx_messageInfo_DirectoryMetadata.Marshal(b, m, deterministic) 678} 679func (m *DirectoryMetadata) XXX_Merge(src proto.Message) { 680 xxx_messageInfo_DirectoryMetadata.Merge(m, src) 681} 682func (m *DirectoryMetadata) XXX_Size() int { 683 return xxx_messageInfo_DirectoryMetadata.Size(m) 684} 685func (m *DirectoryMetadata) XXX_DiscardUnknown() { 686 xxx_messageInfo_DirectoryMetadata.DiscardUnknown(m) 687} 688 689var xxx_messageInfo_DirectoryMetadata proto.InternalMessageInfo 690 691func (m *DirectoryMetadata) GetPath() string { 692 if m != nil { 693 return m.Path 694 } 695 return "" 696} 697 698func (m *DirectoryMetadata) GetDigest() *Digest { 699 if m != nil { 700 return m.Digest 701 } 702 return nil 703} 704 705// The CommandTask and CommandResult messages assume the existence of a service 706// that can serve blobs of content, identified by a hash and size known as a 707// "digest." The method by which these blobs may be retrieved is not specified 708// here, but a model implementation is in the Remote Execution API's 709// "ContentAddressibleStorage" interface. 710// 711// In the context of the RWAPI, a Digest will virtually always refer to the 712// contents of a file or a directory. The latter is represented by the 713// byte-encoded Directory message. 714type Digest struct { 715 // A string-encoded hash (eg "1a2b3c", not the byte array [0x1a, 0x2b, 0x3c]) 716 // using an implementation-defined hash algorithm (eg SHA-256). 717 Hash string `protobuf:"bytes,1,opt,name=hash,proto3" json:"hash,omitempty"` 718 // The size of the contents. While this is not strictly required as part of an 719 // identifier (after all, any given hash will have exactly one canonical 720 // size), it's useful in almost all cases when one might want to send or 721 // retrieve blobs of content and is included here for this reason. 722 SizeBytes int64 `protobuf:"varint,2,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"` 723 XXX_NoUnkeyedLiteral struct{} `json:"-"` 724 XXX_unrecognized []byte `json:"-"` 725 XXX_sizecache int32 `json:"-"` 726} 727 728func (m *Digest) Reset() { *m = Digest{} } 729func (m *Digest) String() string { return proto.CompactTextString(m) } 730func (*Digest) ProtoMessage() {} 731func (*Digest) Descriptor() ([]byte, []int) { 732 return fileDescriptor_7b7f8597ab32e88e, []int{6} 733} 734 735func (m *Digest) XXX_Unmarshal(b []byte) error { 736 return xxx_messageInfo_Digest.Unmarshal(m, b) 737} 738func (m *Digest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 739 return xxx_messageInfo_Digest.Marshal(b, m, deterministic) 740} 741func (m *Digest) XXX_Merge(src proto.Message) { 742 xxx_messageInfo_Digest.Merge(m, src) 743} 744func (m *Digest) XXX_Size() int { 745 return xxx_messageInfo_Digest.Size(m) 746} 747func (m *Digest) XXX_DiscardUnknown() { 748 xxx_messageInfo_Digest.DiscardUnknown(m) 749} 750 751var xxx_messageInfo_Digest proto.InternalMessageInfo 752 753func (m *Digest) GetHash() string { 754 if m != nil { 755 return m.Hash 756 } 757 return "" 758} 759 760func (m *Digest) GetSizeBytes() int64 { 761 if m != nil { 762 return m.SizeBytes 763 } 764 return 0 765} 766 767// The contents of a directory. Similar to the equivalent message in the Remote 768// Execution API. 769type Directory struct { 770 // The files in this directory 771 Files []*FileMetadata `protobuf:"bytes,1,rep,name=files,proto3" json:"files,omitempty"` 772 // Any subdirectories 773 Directories []*DirectoryMetadata `protobuf:"bytes,2,rep,name=directories,proto3" json:"directories,omitempty"` 774 XXX_NoUnkeyedLiteral struct{} `json:"-"` 775 XXX_unrecognized []byte `json:"-"` 776 XXX_sizecache int32 `json:"-"` 777} 778 779func (m *Directory) Reset() { *m = Directory{} } 780func (m *Directory) String() string { return proto.CompactTextString(m) } 781func (*Directory) ProtoMessage() {} 782func (*Directory) Descriptor() ([]byte, []int) { 783 return fileDescriptor_7b7f8597ab32e88e, []int{7} 784} 785 786func (m *Directory) XXX_Unmarshal(b []byte) error { 787 return xxx_messageInfo_Directory.Unmarshal(m, b) 788} 789func (m *Directory) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 790 return xxx_messageInfo_Directory.Marshal(b, m, deterministic) 791} 792func (m *Directory) XXX_Merge(src proto.Message) { 793 xxx_messageInfo_Directory.Merge(m, src) 794} 795func (m *Directory) XXX_Size() int { 796 return xxx_messageInfo_Directory.Size(m) 797} 798func (m *Directory) XXX_DiscardUnknown() { 799 xxx_messageInfo_Directory.DiscardUnknown(m) 800} 801 802var xxx_messageInfo_Directory proto.InternalMessageInfo 803 804func (m *Directory) GetFiles() []*FileMetadata { 805 if m != nil { 806 return m.Files 807 } 808 return nil 809} 810 811func (m *Directory) GetDirectories() []*DirectoryMetadata { 812 if m != nil { 813 return m.Directories 814 } 815 return nil 816} 817 818func init() { 819 proto.RegisterType((*CommandTask)(nil), "google.devtools.remoteworkers.v1test2.CommandTask") 820 proto.RegisterType((*CommandTask_Inputs)(nil), "google.devtools.remoteworkers.v1test2.CommandTask.Inputs") 821 proto.RegisterType((*CommandTask_Inputs_EnvironmentVariable)(nil), "google.devtools.remoteworkers.v1test2.CommandTask.Inputs.EnvironmentVariable") 822 proto.RegisterType((*CommandTask_Outputs)(nil), "google.devtools.remoteworkers.v1test2.CommandTask.Outputs") 823 proto.RegisterType((*CommandTask_Timeouts)(nil), "google.devtools.remoteworkers.v1test2.CommandTask.Timeouts") 824 proto.RegisterType((*CommandOutputs)(nil), "google.devtools.remoteworkers.v1test2.CommandOutputs") 825 proto.RegisterType((*CommandOverhead)(nil), "google.devtools.remoteworkers.v1test2.CommandOverhead") 826 proto.RegisterType((*CommandResult)(nil), "google.devtools.remoteworkers.v1test2.CommandResult") 827 proto.RegisterType((*FileMetadata)(nil), "google.devtools.remoteworkers.v1test2.FileMetadata") 828 proto.RegisterType((*DirectoryMetadata)(nil), "google.devtools.remoteworkers.v1test2.DirectoryMetadata") 829 proto.RegisterType((*Digest)(nil), "google.devtools.remoteworkers.v1test2.Digest") 830 proto.RegisterType((*Directory)(nil), "google.devtools.remoteworkers.v1test2.Directory") 831} 832 833func init() { 834 proto.RegisterFile("google/devtools/remoteworkers/v1test2/command.proto", fileDescriptor_7b7f8597ab32e88e) 835} 836 837var fileDescriptor_7b7f8597ab32e88e = []byte{ 838 // 852 bytes of a gzipped FileDescriptorProto 839 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xbc, 0x56, 0x5d, 0x6f, 0x1b, 0x45, 840 0x14, 0xd5, 0xae, 0x3f, 0x62, 0x5f, 0xa7, 0x94, 0x0e, 0xa9, 0x70, 0xcd, 0x87, 0x22, 0xa3, 0x4a, 841 0x01, 0x29, 0x6b, 0xd5, 0x01, 0x41, 0xc8, 0x03, 0x22, 0x71, 0xa8, 0xfa, 0x50, 0x01, 0x43, 0xd4, 842 0x48, 0x7d, 0xb1, 0x26, 0xbb, 0xb7, 0xce, 0xa8, 0xf6, 0x8e, 0x35, 0x33, 0xeb, 0x36, 0xbc, 0x20, 843 0xf1, 0x47, 0x90, 0xfa, 0x46, 0xdf, 0xe0, 0x3f, 0xf0, 0xc8, 0x7f, 0x42, 0xf3, 0xb5, 0x59, 0x37, 844 0x90, 0x18, 0x23, 0xf1, 0xb6, 0xbe, 0xf7, 0x9c, 0x33, 0xf7, 0x9e, 0x99, 0x7b, 0x65, 0xd8, 0x9b, 845 0x08, 0x31, 0x99, 0xe2, 0x20, 0xc3, 0x85, 0x16, 0x62, 0xaa, 0x06, 0x12, 0x67, 0x42, 0xe3, 0x0b, 846 0x21, 0x9f, 0xa3, 0x54, 0x83, 0xc5, 0x03, 0x8d, 0x4a, 0x0f, 0x07, 0xa9, 0x98, 0xcd, 0x58, 0x9e, 847 0x25, 0x73, 0x29, 0xb4, 0x20, 0xf7, 0x1d, 0x29, 0x09, 0xa4, 0x64, 0x89, 0x94, 0x78, 0x52, 0xef, 848 0x9e, 0xd7, 0xb6, 0xa4, 0xb3, 0xe2, 0xd9, 0x80, 0xe5, 0x17, 0x4e, 0xa1, 0xf7, 0xe1, 0x9b, 0xa9, 849 0xac, 0x90, 0x4c, 0x73, 0x91, 0xfb, 0xfc, 0xbb, 0x3e, 0x2f, 0xe7, 0xe9, 0x40, 0x69, 0xa6, 0x0b, 850 0xe5, 0x12, 0xfd, 0x57, 0x1b, 0xd0, 0x39, 0x72, 0xc5, 0x9c, 0x30, 0xf5, 0x9c, 0x7c, 0x0f, 0x4d, 851 0x9e, 0xcf, 0x0b, 0xad, 0xba, 0xd1, 0x76, 0xb4, 0xd3, 0x19, 0xee, 0x27, 0x2b, 0xd5, 0x96, 0x54, 852 0x34, 0x92, 0x47, 0x56, 0x80, 0x7a, 0x21, 0x82, 0xf0, 0x36, 0xbe, 0x9c, 0x63, 0xaa, 0x31, 0x1b, 853 0x8b, 0x42, 0x5b, 0xf1, 0xba, 0x15, 0xff, 0x72, 0x0d, 0xf1, 0x6f, 0x9d, 0x02, 0xbd, 0x1d, 0x34, 854 0x7d, 0x80, 0x9c, 0x42, 0x4b, 0xf3, 0x19, 0x0a, 0x23, 0xdf, 0xb0, 0xf2, 0x07, 0x6b, 0xc8, 0x9f, 855 0x78, 0x09, 0x5a, 0x8a, 0xf5, 0x7e, 0x8b, 0xa1, 0xe9, 0x5a, 0x22, 0xef, 0x43, 0x9b, 0xc9, 0x49, 856 0x31, 0xc3, 0xdc, 0x1a, 0x54, 0xdb, 0x69, 0xd3, 0xcb, 0x00, 0x39, 0x82, 0xc6, 0x33, 0x3e, 0x45, 857 0xd5, 0x8d, 0xb7, 0x6b, 0x3b, 0x9d, 0xe1, 0xee, 0x8a, 0xc7, 0x8f, 0xf8, 0x04, 0x95, 0xa6, 0x8e, 858 0x4b, 0x7e, 0x8e, 0xe0, 0x2e, 0xe6, 0x0b, 0x2e, 0x45, 0x6e, 0x54, 0xc7, 0x0b, 0x26, 0x39, 0x3b, 859 0x33, 0xaa, 0x35, 0xab, 0xfa, 0x78, 0xed, 0x0b, 0x49, 0x8e, 0x2f, 0x65, 0x9f, 0x78, 0x55, 0xba, 860 0x85, 0x57, 0x83, 0xaa, 0xf7, 0x15, 0xbc, 0xf3, 0x37, 0x60, 0x42, 0xa0, 0x9e, 0xb3, 0x19, 0xda, 861 0xa7, 0xd1, 0xa6, 0xf6, 0x9b, 0x6c, 0x41, 0x63, 0xc1, 0xa6, 0x05, 0x76, 0x63, 0x1b, 0x74, 0x3f, 862 0x7a, 0xbf, 0x44, 0xb0, 0x11, 0x2e, 0x66, 0x2b, 0xd8, 0xe2, 0x0c, 0xf3, 0x7d, 0x6e, 0x43, 0x27, 863 0xe3, 0x12, 0x53, 0x2d, 0x24, 0xf7, 0x96, 0xb5, 0x69, 0x35, 0x44, 0x76, 0x81, 0x28, 0x9d, 0x89, 864 0x42, 0x8f, 0x33, 0x54, 0x9a, 0xe7, 0xf6, 0x3d, 0x77, 0x6b, 0xf6, 0x98, 0x3b, 0x2e, 0x33, 0xba, 865 0x4c, 0x78, 0x38, 0x4a, 0xb9, 0x04, 0xaf, 0x97, 0x70, 0x94, 0xb2, 0x02, 0xef, 0xfd, 0x1a, 0x41, 866 0x2b, 0x5c, 0x36, 0xf9, 0x1c, 0xda, 0xf8, 0x12, 0xd3, 0xc2, 0x52, 0xdc, 0xc3, 0xbf, 0x17, 0x7c, 867 0x0e, 0x23, 0x95, 0x8c, 0xfc, 0x48, 0xd1, 0x4b, 0x2c, 0xd9, 0x85, 0x3a, 0xcf, 0xa6, 0xae, 0xf9, 868 0x6b, 0x39, 0x16, 0x46, 0x3e, 0x83, 0x96, 0x3a, 0x2f, 0x74, 0x26, 0x5e, 0xb8, 0x46, 0xae, 0xa5, 869 0x94, 0xd0, 0xfe, 0x02, 0xde, 0xf2, 0xd7, 0x19, 0x3c, 0x7d, 0xcf, 0x14, 0xcc, 0xf5, 0x38, 0x15, 870 0x99, 0xbb, 0x8e, 0x06, 0x6d, 0x99, 0xc0, 0x91, 0xc8, 0x90, 0x3c, 0x84, 0x8d, 0x30, 0x67, 0xae, 871 0xae, 0x7f, 0xf9, 0x12, 0x03, 0xbb, 0xff, 0x13, 0xdc, 0x0e, 0xe7, 0x2e, 0x50, 0x9e, 0x23, 0xcb, 872 0x4c, 0x07, 0x61, 0xb5, 0xdc, 0x6c, 0x54, 0x09, 0x35, 0x34, 0xe1, 0x25, 0x6e, 0xf6, 0xaa, 0x84, 873 0xf6, 0xff, 0x8c, 0xe1, 0x96, 0xaf, 0x80, 0xa2, 0x2a, 0xa6, 0x9a, 0x7c, 0x02, 0x4d, 0xb7, 0xbf, 874 0xfc, 0xe9, 0x24, 0xc8, 0xc8, 0x79, 0x9a, 0xfc, 0x60, 0x33, 0xd4, 0x23, 0x96, 0x4d, 0x8a, 0xff, 875 0xd9, 0xa4, 0xda, 0x7f, 0x31, 0x89, 0xec, 0x57, 0x1c, 0xa9, 0xdf, 0xd0, 0xda, 0x61, 0xdc, 0x8d, 876 0x2a, 0xae, 0xec, 0x57, 0x5c, 0x69, 0xac, 0x44, 0x0d, 0x70, 0xf2, 0x29, 0x80, 0xe9, 0x92, 0x2b, 877 0xcd, 0x53, 0xd5, 0x6d, 0xda, 0xd5, 0xb0, 0x75, 0x85, 0xfc, 0x75, 0x7e, 0x41, 0x2b, 0xb8, 0xfe, 878 0xeb, 0x08, 0x36, 0xbf, 0xe1, 0x53, 0x7c, 0x8c, 0x9a, 0x65, 0x4c, 0x33, 0x33, 0xd1, 0x73, 0xa6, 879 0xcf, 0xc3, 0x44, 0x9b, 0x6f, 0x72, 0x0c, 0xcd, 0xcc, 0xf6, 0xb8, 0xde, 0xeb, 0xf1, 0x64, 0xd2, 880 0x83, 0x56, 0x2a, 0x72, 0x6d, 0x57, 0xa5, 0x71, 0x78, 0x93, 0x96, 0xbf, 0xc9, 0x47, 0x70, 0x8b, 881 0xab, 0xb1, 0x1b, 0x23, 0xb3, 0x59, 0xac, 0x71, 0x2d, 0xba, 0xc9, 0xd5, 0x71, 0x19, 0xeb, 0xe7, 882 0x70, 0x67, 0xe4, 0xd7, 0xc1, 0xc5, 0xff, 0x50, 0x70, 0xff, 0x00, 0x9a, 0x2e, 0x62, 0x0e, 0x39, 883 0x67, 0xaa, 0x3c, 0xc4, 0x7c, 0x93, 0x0f, 0x00, 0x14, 0xff, 0x11, 0xc7, 0x67, 0x17, 0x1a, 0xdd, 884 0x5c, 0xd5, 0x68, 0xdb, 0x44, 0x0e, 0x4d, 0xa0, 0xff, 0x7b, 0x04, 0xed, 0xb2, 0x5a, 0xf2, 0xa8, 885 0xba, 0xf2, 0x3a, 0xc3, 0xbd, 0x15, 0x0b, 0xaa, 0x5e, 0x4d, 0xd8, 0x93, 0x4f, 0xaf, 0xee, 0xc9, 886 0xce, 0xf0, 0x8b, 0x95, 0x3b, 0x7c, 0xc3, 0xbf, 0xa5, 0x0d, 0x7b, 0xf8, 0x47, 0x04, 0x1f, 0xa7, 887 0x62, 0xb6, 0x9a, 0xd8, 0xe1, 0x5d, 0x6a, 0xc3, 0xa7, 0x2e, 0xec, 0xc7, 0x52, 0x7d, 0x17, 0x3d, 888 0xa5, 0x9e, 0x3f, 0x11, 0x53, 0x96, 0x4f, 0x12, 0x21, 0x27, 0x83, 0x09, 0xe6, 0xf6, 0x11, 0x0e, 889 0x5c, 0x8a, 0xcd, 0xb9, 0xba, 0xe1, 0x2f, 0xd1, 0xc1, 0x52, 0xf4, 0x55, 0x1c, 0xd3, 0xd3, 0xd7, 890 0xf1, 0xfd, 0x87, 0x4e, 0x79, 0x84, 0x8b, 0x13, 0x5b, 0xd9, 0x52, 0x09, 0xc9, 0x93, 0x07, 0x27, 891 0x86, 0x7a, 0xd6, 0xb4, 0x67, 0xed, 0xfd, 0x15, 0x00, 0x00, 0xff, 0xff, 0xf4, 0x52, 0xfa, 0x6a, 892 0x7d, 0x09, 0x00, 0x00, 893} 894