github.phpd.cn/thought-machine/please@v12.2.0+incompatible/src/build/proto/worker.proto (about)

     1  // Defines the interface to remote build workers.
     2  // Currently this is a relatively simple client/server relationship where a server is
     3  // persisted in the background and each compilation process makes a request to it.
     4  // We define it here as an RPC server but in practice we're making requests & responses
     5  // over stdin/stdout for now.
     6  
     7  syntax = "proto3";
     8  
     9  package worker;
    10  option java_package = "build.please.worker";
    11  option java_outer_classname = "WorkerProto";
    12  
    13  service Worker {
    14      // A request to build a single target.
    15      rpc Build(BuildRequest) returns (BuildResponse);
    16  }
    17  
    18  message BuildRequest {
    19      // The rule label
    20      string rule = 1;
    21      // Labels applied to this build rule.
    22      repeated string labels = 5;
    23      // The temporary directory to build the target in.
    24      string temp_dir = 2;
    25      // List of source files to compile
    26      repeated string srcs = 3;
    27      // Compiler options
    28      repeated string opts = 4;
    29  }
    30  
    31  message BuildResponse {
    32      // The rule label
    33      string rule = 1;
    34      // True if build succeeded
    35      bool success = 2;
    36      // Any messages reported. On failure these should indicate what's gone wrong.
    37      repeated string messages = 3;
    38  }