aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java
diff options
context:
space:
mode:
authorGravatar László Csomor <laszlocsomor@google.com>2017-10-16 17:11:55 +0200
committerGravatar Jakob Buchgraber <buchgr@google.com>2017-10-16 17:49:14 +0200
commitcfccdf1f6e93125d894ff40e0ccecaf20cc20ef5 (patch)
tree31514750f08dafef373e2632f9643887a011836c /src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java
parent573a47ad80eb3553566087180d3f02149a2dc9f4 (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.java10
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(),