diff options
author | 2017-10-16 17:11:55 +0200 | |
---|---|---|
committer | 2017-10-16 17:49:14 +0200 | |
commit | cfccdf1f6e93125d894ff40e0ccecaf20cc20ef5 (patch) | |
tree | 31514750f08dafef373e2632f9643887a011836c /src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java | |
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/sandbox/SandboxActionContextProvider.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java index f92bceef64..53173e4bea 100644 --- a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java +++ b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java @@ -66,7 +66,8 @@ final class SandboxActionContextProvider extends ActionContextProvider { if (LinuxSandboxedSpawnRunner.isSupported(cmdEnv)) { SpawnRunner spawnRunner = withFallback( - cmdEnv, LinuxSandboxedStrategy.create(cmdEnv, sandboxBase, timeoutGraceSeconds)); + cmdEnv, + LinuxSandboxedStrategy.create(cmdEnv, sandboxBase, productName, timeoutGraceSeconds)); contexts.add(new LinuxSandboxedStrategy(spawnRunner)); } @@ -90,9 +91,10 @@ final class SandboxActionContextProvider extends ActionContextProvider { private static SpawnRunner createFallbackRunner(CommandEnvironment env) { LocalExecutionOptions localExecutionOptions = env.getOptions().getOptions(LocalExecutionOptions.class); - LocalEnvProvider localEnvProvider = OS.getCurrent() == OS.DARWIN - ? new XCodeLocalEnvProvider() - : LocalEnvProvider.UNMODIFIED; + LocalEnvProvider localEnvProvider = + OS.getCurrent() == OS.DARWIN + ? new XCodeLocalEnvProvider() + : LocalEnvProvider.ADD_TEMP_POSIX; return new LocalSpawnRunner( env.getExecRoot(), |