Create source-only manifests remotely when possible.
RELNOTES: None
@@ -82,6 +82,12 @@ public final class SourceManifestAction extends AbstractFileWriteAction {
* Fulfills {@link com.google.devtools.build.lib.actions.AbstractAction#getRawProgressMessage()}
*/
String getRawProgressMessage();
+
+ /**
+ * Fulfills {@link AbstractFileWriteAction#isRemotable()}.
+ * @return
+ */
+ boolean isRemotable();
}
/**
@@ -137,8 +143,7 @@ public final class SourceManifestAction extends AbstractFileWriteAction {
@Override
public boolean isRemotable() {
- // There is little gain to remoting these, since they include absolute path names inline.
- return false;
+ return manifestWriter.isRemotable();
}
/**
@@ -255,6 +260,12 @@ public final class SourceManifestAction extends AbstractFileWriteAction {
public String getRawProgressMessage() {
return "Creating source manifest";
}
+
+ @Override
+ public boolean isRemotable() {
+ // There is little gain to remoting these, since they include absolute path names inline.
+ return false;
+ }
},
/**
@@ -284,6 +295,12 @@ public final class SourceManifestAction extends AbstractFileWriteAction {
public String getRawProgressMessage() {
return "Creating file sources list";
}
+
+ @Override
+ public boolean isRemotable() {
+ // Source-only symlink manifest has root-relative paths and does not include absolute paths.
+ return true;
+ }
}
}
