diff options
author | Kristina Chodorow <kchodorow@google.com> | 2017-03-03 14:06:45 +0000 |
---|---|---|
committer | Yue Gan <yueg@google.com> | 2017-03-06 09:44:22 +0000 |
commit | 0ca44769ea775485aac177664a13d4e178fa037b (patch) | |
tree | 3f860ad53e3ba6e4bf66f49f15adc335108c1799 /src/main/java/com/google/devtools/build/lib/skyframe | |
parent | 6935ad673a9d1ee88945191c210dc80edfe02d84 (diff) |
Pass the repository name through to build info factories
I was fixing the Android tests and I noticed that the bazel_workspace_status_test was failing. It was like when you have a thread coming out of a sweater and you start pulling and pretty soon you have no sweater. Long story short, my "Android tests fix" cl ended up needing ~1k more lines changed (on top of the existing enormous CL).
So, I'm creating some smaller CLs with the changes that I can extract from the mega CL. Again.
Prep for #1681.
--
PiperOrigin-RevId: 149106039
MOS_MIGRATED_REVID=149106039
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionFunction.java | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionFunction.java b/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionFunction.java index 652fc820e4..1d5d2b36c5 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionFunction.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/BuildInfoCollectionFunction.java @@ -21,6 +21,7 @@ import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory; import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory.BuildInfoContext; import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory.BuildInfoKey; import com.google.devtools.build.lib.analysis.buildinfo.BuildInfoFactory.BuildInfoType; +import com.google.devtools.build.lib.cmdline.RepositoryName; import com.google.devtools.build.lib.skyframe.BuildInfoCollectionValue.BuildInfoKeyAndConfig; import com.google.devtools.build.lib.vfs.PathFragment; import com.google.devtools.build.skyframe.SkyFunction; @@ -54,6 +55,13 @@ public class BuildInfoCollectionFunction implements SkyFunction { if (buildInfoFactories == null) { return null; } + WorkspaceNameValue nameValue = (WorkspaceNameValue) env.getValue(WorkspaceNameValue.key()); + if (nameValue == null) { + return null; + } + RepositoryName repositoryName = RepositoryName.createFromValidStrippedName( + nameValue.maybeGetName()); + final ArtifactFactory factory = artifactFactory.get(); BuildInfoContext context = new BuildInfoContext() { @Override @@ -65,9 +73,9 @@ public class BuildInfoCollectionFunction implements SkyFunction { } }; - return new BuildInfoCollectionValue(buildInfoFactories.get( - keyAndConfig.getInfoKey()).create(context, keyAndConfig.getConfig(), - infoArtifactValue.getStableArtifact(), infoArtifactValue.getVolatileArtifact())); + return new BuildInfoCollectionValue(buildInfoFactories.get(keyAndConfig.getInfoKey()).create( + context, keyAndConfig.getConfig(), infoArtifactValue.getStableArtifact(), + infoArtifactValue.getVolatileArtifact(), repositoryName)); } @Override |