aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/sandbox
diff options
context:
space:
mode:
authorGravatar hlopko <hlopko@google.com>2017-04-04 13:53:14 +0000
committerGravatar Damien Martin-Guillerez <dmarting@google.com>2017-04-04 18:38:24 +0200
commitc4134802dd15d6ef5cca6521f6bf6aac395ee2ad (patch)
treebcb3f28c5a4357f0089c2c71b738d63a748ef788 /src/main/java/com/google/devtools/build/lib/sandbox
parent64f80799ed5c6369ffb6814f939a7964b0fa7c49 (diff)
Automated g4 rollback of commit 1d9e1ac90197b1d3d7b137ba3c1ada67bb9ba31b.
*** Reason for rollback *** Breaks //src/test/shell/integration:force_delete_output_test *** Original change description *** Symlink output directories to the correct directory name If the workspace directory is /path/to/my/proj and the name in the WORKSPACE file is "floop", this will symlink the output directories to output_base/execroot/floop instead of output_base/execroot/proj. More prep for #1262, fixes #1681. PiperOrigin-RevId: 152126545
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/sandbox')
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java20
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java8
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java7
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/SandboxActionContextProvider.java12
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java5
-rw-r--r--src/main/java/com/google/devtools/build/lib/sandbox/SpawnHelpers.java2
6 files changed, 19 insertions, 35 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java
index bb529e9a16..2eff7c45cc 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/DarwinSandboxedStrategy.java
@@ -76,7 +76,6 @@ public class DarwinSandboxedStrategy extends SandboxStrategy {
private final UUID uuid = UUID.randomUUID();
private final AtomicInteger execCounter = new AtomicInteger();
- private final String workspaceName;
private DarwinSandboxedStrategy(
BuildRequest buildRequest,
@@ -85,23 +84,20 @@ public class DarwinSandboxedStrategy extends SandboxStrategy {
boolean verboseFailures,
String productName,
ImmutableList<Path> confPaths,
- SpawnHelpers spawnHelpers,
- String workspaceName) {
+ SpawnHelpers spawnHelpers) {
super(
buildRequest,
blazeDirs,
verboseFailures,
- buildRequest.getOptions(SandboxOptions.class),
- workspaceName);
+ buildRequest.getOptions(SandboxOptions.class));
this.clientEnv = ImmutableMap.copyOf(clientEnv);
this.blazeDirs = blazeDirs;
- this.execRoot = blazeDirs.getExecRoot(workspaceName);
+ this.execRoot = blazeDirs.getExecRoot();
this.sandboxDebug = buildRequest.getOptions(SandboxOptions.class).sandboxDebug;
this.verboseFailures = verboseFailures;
this.productName = productName;
this.confPaths = confPaths;
this.spawnHelpers = spawnHelpers;
- this.workspaceName = workspaceName;
}
public static DarwinSandboxedStrategy create(
@@ -109,8 +105,7 @@ public class DarwinSandboxedStrategy extends SandboxStrategy {
Map<String, String> clientEnv,
BlazeDirectories blazeDirs,
boolean verboseFailures,
- String productName,
- String workspaceName)
+ String productName)
throws IOException {
// On OS X, in addition to what is specified in $TMPDIR, two other temporary directories may be
// written to by processes. We have to get their location by calling "getconf".
@@ -130,8 +125,7 @@ public class DarwinSandboxedStrategy extends SandboxStrategy {
verboseFailures,
productName,
writablePaths.build(),
- new SpawnHelpers(blazeDirs.getExecRoot(workspaceName)),
- workspaceName);
+ new SpawnHelpers(blazeDirs.getExecRoot()));
}
/**
@@ -334,8 +328,8 @@ public class DarwinSandboxedStrategy extends SandboxStrategy {
Path mount;
if (sourceFragment.isAbsolute()) {
mount = blazeDirs.getFileSystem().getPath(sourceFragment);
- } else if (blazeDirs.getExecRoot(workspaceName).getRelative(sourceFragment).exists()) {
- mount = blazeDirs.getExecRoot(workspaceName).getRelative(sourceFragment);
+ } else if (blazeDirs.getExecRoot().getRelative(sourceFragment).exists()) {
+ mount = blazeDirs.getExecRoot().getRelative(sourceFragment);
} else {
List<Path> searchPath =
SearchPath.parse(blazeDirs.getFileSystem(), clientEnv.get("PATH"));
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
index 65cbab9c0e..71ff1fc482 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedStrategy.java
@@ -64,17 +64,15 @@ public class LinuxSandboxedStrategy extends SandboxStrategy {
BuildRequest buildRequest,
BlazeDirectories blazeDirs,
boolean verboseFailures,
- String productName,
- String workspaceName) {
+ String productName) {
super(
buildRequest,
blazeDirs,
verboseFailures,
- buildRequest.getOptions(SandboxOptions.class),
- workspaceName);
+ buildRequest.getOptions(SandboxOptions.class));
this.sandboxOptions = buildRequest.getOptions(SandboxOptions.class);
this.blazeDirs = blazeDirs;
- this.execRoot = blazeDirs.getExecRoot(workspaceName);
+ this.execRoot = blazeDirs.getExecRoot();
this.verboseFailures = verboseFailures;
this.productName = productName;
}
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java
index df05bb7551..f7b310a2fe 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/ProcessWrapperSandboxedStrategy.java
@@ -59,11 +59,8 @@ public class ProcessWrapperSandboxedStrategy extends SandboxStrategy {
BuildRequest buildRequest,
BlazeDirectories blazeDirs,
boolean verboseFailures,
- String productName,
- String workspaceName) {
- super(
- buildRequest, blazeDirs, verboseFailures, buildRequest.getOptions(SandboxOptions.class),
- workspaceName);
+ String productName) {
+ super(buildRequest, blazeDirs, verboseFailures, buildRequest.getOptions(SandboxOptions.class));
this.sandboxOptions = buildRequest.getOptions(SandboxOptions.class);
this.blazeDirs = blazeDirs;
this.execRoot = blazeDirs.getExecRoot();
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 caef3a34d6..26bf01ec69 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
@@ -54,8 +54,7 @@ final class SandboxActionContextProvider extends ActionContextProvider {
buildRequest,
env.getDirectories(),
verboseFailures,
- env.getRuntime().getProductName(),
- env.getWorkspaceName()));
+ env.getRuntime().getProductName()));
} else {
if (!buildRequest.getOptions(SandboxOptions.class).ignoreUnsupportedSandboxing) {
env.getReporter().handle(Event.warn(SANDBOX_NOT_SUPPORTED_MESSAGE));
@@ -65,8 +64,7 @@ final class SandboxActionContextProvider extends ActionContextProvider {
buildRequest,
env.getDirectories(),
verboseFailures,
- env.getRuntime().getProductName(),
- env.getWorkspaceName()));
+ env.getRuntime().getProductName()));
}
break;
case DARWIN:
@@ -77,8 +75,7 @@ final class SandboxActionContextProvider extends ActionContextProvider {
env.getClientEnv(),
env.getDirectories(),
verboseFailures,
- env.getRuntime().getProductName(),
- env.getWorkspaceName()));
+ env.getRuntime().getProductName()));
} else {
if (!buildRequest.getOptions(SandboxOptions.class).ignoreUnsupportedSandboxing) {
env.getReporter().handle(Event.warn(SANDBOX_NOT_SUPPORTED_MESSAGE));
@@ -91,8 +88,7 @@ final class SandboxActionContextProvider extends ActionContextProvider {
buildRequest,
env.getDirectories(),
verboseFailures,
- env.getRuntime().getProductName(),
- env.getWorkspaceName()));
+ env.getRuntime().getProductName()));
break;
default:
// No sandboxing available.
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java
index 64533150bf..80f0501afa 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/SandboxStrategy.java
@@ -62,10 +62,9 @@ abstract class SandboxStrategy implements SandboxedSpawnActionContext {
BuildRequest buildRequest,
BlazeDirectories blazeDirs,
boolean verboseFailures,
- SandboxOptions sandboxOptions,
- String workspaceName) {
+ SandboxOptions sandboxOptions) {
this.buildRequest = buildRequest;
- this.execRoot = blazeDirs.getExecRoot(workspaceName);
+ this.execRoot = blazeDirs.getExecRoot();
this.verboseFailures = verboseFailures;
this.sandboxOptions = sandboxOptions;
this.spawnInputExpander = new SpawnInputExpander(/*strict=*/false);
diff --git a/src/main/java/com/google/devtools/build/lib/sandbox/SpawnHelpers.java b/src/main/java/com/google/devtools/build/lib/sandbox/SpawnHelpers.java
index 5e1d3fc7b6..d8bb0a7f58 100644
--- a/src/main/java/com/google/devtools/build/lib/sandbox/SpawnHelpers.java
+++ b/src/main/java/com/google/devtools/build/lib/sandbox/SpawnHelpers.java
@@ -75,7 +75,7 @@ public final class SpawnHelpers {
targetDirectory,
manifestFile,
true,
- execRoot.getBaseName());
+ filesetContext.getWorkspaceName());
}
}