Skip to content

Commit

Permalink
Delegate coverage tools to @remote_coverage_tools
Browse files Browse the repository at this point in the history
Requires:
 - #10379 is merged
 - a new remote coverage tools zip pushed
 - coverage.WORKSPACE updated to the new tools

This changes the @bazel_tools//tools/test/BUILD file to fully delegate to the @remote_coverage_tools repository, which must contain rules for :lcov_merger and :coverage_report_generator.

This makes the @remote_coverage_tools reference self-contained, which allows overriding the tools using --override_repository, and allows independently replacing or fixing them.

Progress on #4685.

Change-Id: I321c62332f00d910f4ccfb3244d63e60627d59ad

Closes #10383.

Change-Id: I321c62332f00d910f4ccfb3244d63e60627d59ad
PiperOrigin-RevId: 285246323
  • Loading branch information
ulfjack authored and copybara-github committed Dec 12, 2019
1 parent b23b8c7 commit 934c4fd
Show file tree
Hide file tree
Showing 9 changed files with 12 additions and 40 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ public static LabelLateBoundDefault<TestConfiguration> coverageSupportAttribute(
"//tools/test:coverage_report_generator";

private static final String DEFAULT_COVERAGE_OUTPUT_GENERATOR_VALUE =
"@bazel_tools//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:Main";
"@bazel_tools//tools/test:lcov_merger";

@AutoCodec
static final Resolver<TestConfiguration, Label> COVERAGE_REPORT_GENERATOR_CONFIGURATION_RESOLVER =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -228,12 +228,8 @@ public void setupMockClient(MockToolsConfig config, List<String> workspaceConten
"filegroup(name = 'collect_coverage', srcs = ['collect_coverage.sh'])",
"filegroup(name = 'collect_cc_coverage', srcs = ['collect_cc_coverage.sh'])",
"filegroup(name='coverage_support', srcs=['collect_coverage.sh'])",
"filegroup(name = 'coverage_report_generator', srcs = ['coverage_report_generator.sh'])");

config.create(
"/bazel_tools_workspace/tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator/BUILD",
"filegroup(name='srcs', srcs = glob(['**']))",
"filegroup(name='Main', srcs = ['Main.java'])");
"filegroup(name = 'coverage_report_generator', srcs = ['coverage_report_generator.sh'])",
"filegroup(name = 'lcov_merger', srcs = ['lcov_merger.sh'])");

// Use an alias package group to allow for modification at the simpler path
config.create(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@ public void testCoverageOutputGeneratorCoverageMode() throws Exception {
reporter.removeHandler(failFastHandler);
ConfiguredTarget ct = getConfiguredTarget("//sh/test:foo_test");
assertThat(getRuleContext(ct).getPrerequisite(":lcov_merger", Mode.HOST).getLabel().toString())
.isEqualTo(
"@bazel_tools//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:Main");
.isEqualTo("@bazel_tools//tools/test:lcov_merger");
}
}
2 changes: 1 addition & 1 deletion src/test/shell/bazel/bazel_coverage_java_test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -235,7 +235,7 @@ public class TestCollatz {
}
EOF

bazel coverage --test_output=all //:test --coverage_report_generator=@bazel_tools//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:Main --combined_report=lcov &>$TEST_log \
bazel coverage --test_output=all //:test --coverage_report_generator=@bazel_tools//tools/test:coverage_report_generator --combined_report=lcov &>$TEST_log \
|| echo "Coverage for //:test failed"

cat <<EOF > result.dat
Expand Down
1 change: 0 additions & 1 deletion tools/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,6 @@ filegroup(
"//tools/python:embedded_tools",
"//tools/runfiles:embedded_tools",
"//tools/test:embedded_tools",
"//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:embedded_tools",
"//tools/osx/crosstool:srcs",
"//tools/osx:srcs",
"//tools/sh:embedded_tools",
Expand Down
5 changes: 0 additions & 5 deletions tools/test/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,6 @@ filegroup(
srcs = ["collect_cc_coverage.sh"],
)

filegroup(
name = "coverage_report_generator",
srcs = ["@bazel_tools//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:Main"],
)

# Test wrapper binary to run tests on Windows.
# This target just wraps the actual code in "tw_lib" to make it into a binary.
# See https://github.com/bazelbuild/bazel/issues/5508
Expand Down
9 changes: 7 additions & 2 deletions tools/test/BUILD.tools
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,14 @@ filegroup(
srcs = ["collect_coverage.sh"],
)

filegroup(
alias(
name = "coverage_report_generator",
srcs = ["@bazel_tools//tools/test/CoverageOutputGenerator/java/com/google/devtools/coverageoutputgenerator:Main"],
actual = "@remote_coverage_tools//:coverage_report_generator",
)

alias(
name = "lcov_merger",
actual = "@remote_coverage_tools//:lcov_merger",
)

filegroup(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -172,11 +172,3 @@ filegroup(
srcs = glob(["**"]),
visibility = ["//visibility:public"],
)

filegroup(
name = "embedded_tools",
srcs = [
"BUILD.tools",
],
visibility = ["//visibility:public"],
)

This file was deleted.

0 comments on commit 934c4fd

Please sign in to comment.