diff options
author | László Csomor <laszlocsomor@google.com> | 2017-10-16 17:11:55 +0200 |
---|---|---|
committer | Jakob Buchgraber <buchgr@google.com> | 2017-10-16 17:49:14 +0200 |
commit | cfccdf1f6e93125d894ff40e0ccecaf20cc20ef5 (patch) | |
tree | 31514750f08dafef373e2632f9643887a011836c /src/main/java/com/google/devtools/build/lib/worker | |
parent | 573a47ad80eb3553566087180d3f02149a2dc9f4 (diff) |
Actions now have a temp envvar.
Every build and test action that creates a Spawn
will now have platform-specific environment
variables for temp directories:
- on Windows: TMP and TEMP
- on Linux/Darwin: TMPDIR
This is particularly important on Windows where
e.g. Java programs cannot create temp directories
unless there's a valid TMP or TEMP environment
variable set.
Fixes:
- https://github.com/bazelbuild/bazel/issues/1590
- https://github.com/bazelbuild/bazel/issues/2349
- https://github.com/bazelbuild/bazel/issues/2870
Change-Id: Ib758307daf6b3a51b0f71ae5e65e5bb564dad643
PiperOrigin-RevId: 172326371
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/worker')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/worker/WorkerActionContextProvider.java | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/worker/WorkerActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/worker/WorkerActionContextProvider.java index 50f6e2dd8f..e6e9382fc6 100644 --- a/src/main/java/com/google/devtools/build/lib/worker/WorkerActionContextProvider.java +++ b/src/main/java/com/google/devtools/build/lib/worker/WorkerActionContextProvider.java @@ -55,7 +55,11 @@ final class WorkerActionContextProvider extends ActionContextProvider { LocalExecutionOptions localExecutionOptions = env.getOptions().getOptions(LocalExecutionOptions.class); LocalEnvProvider localEnvProvider = - OS.getCurrent() == OS.DARWIN ? new XCodeLocalEnvProvider() : LocalEnvProvider.UNMODIFIED; + OS.getCurrent() == OS.DARWIN + ? new XCodeLocalEnvProvider() + : (OS.getCurrent() == OS.WINDOWS + ? LocalEnvProvider.ADD_TEMP_WINDOWS + : LocalEnvProvider.ADD_TEMP_POSIX); return new LocalSpawnRunner( env.getExecRoot(), localExecutionOptions, |