diff options
author | lberki <lberki@google.com> | 2018-02-05 07:59:13 -0800 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2018-02-05 08:01:17 -0800 |
commit | 4741aa83145fd2d3ab0599314f7732c5b80977bd (patch) | |
tree | b33310e226d9733ae0e538e433a54e337d6a67ed /src/main/protobuf | |
parent | 03ad9155f765fcdc0ccf4aae30a4def9914ea0b4 (diff) |
Add a "direct" mode to "blaze run" that makes the process being run a direct
child of the process where the Blaze client itself was run.
Limitations:
- Untested on Windows; it should work because ExecuteProgram() is implemented there, too, but since Windows doesn't support exec(), there is at least one process in between
Progress towards #2815.
RELNOTES[NEW]: The new "--direct_run" flag on "blaze run" lets one run interactive binaries.
PiperOrigin-RevId: 184528845
Diffstat (limited to 'src/main/protobuf')
-rw-r--r-- | src/main/protobuf/command_server.proto | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/main/protobuf/command_server.proto b/src/main/protobuf/command_server.proto index b55a68817d..bad35abdb6 100644 --- a/src/main/protobuf/command_server.proto +++ b/src/main/protobuf/command_server.proto @@ -68,6 +68,20 @@ message StartupOption { bytes source = 2; } +// Description of an environment variable +message EnvironmentVariable { + bytes name = 1; + bytes value = 2; +} + +// Description of a request by the server to the client to execute a binary +// after the command invocation finishes. +message ExecRequest { + bytes working_directory = 1; + repeated bytes argv = 2; + repeated EnvironmentVariable environment_variable = 3; +} + // Contains metadata and result data for a command execution. message RunResponse { // Request cookie from the output base of the server. This serves as a @@ -96,6 +110,10 @@ message RunResponse { // Whether the command has shut down the server; if set, the client should // wait until the server process dies before finishing. bool termination_expected = 7; + + // A command to exec() after the command invocation finishes. Should only be + // present if finished is set. + ExecRequest exec_request = 8; } // Passed to CommandServer.cancel to initiate graceful cancellation of an |