coverage: Only generate zero coverage for paths specific to board.

At present, we generate zero coverage for all dirs under platform and
platform2. But, each board only supports a subset of these directories
and generating zero coverage for all implies that files not installed can
be erroneously marked as having no coverage. Maintain a list of
directories installed on each board under platform and platform2 for
each board and only generate zero coverage for files under these dirs.
This list is generated by running the script in https://crrev.com/c/3829998

BUG=b:223224702
TEST=./run_tests service/test_unittest and ./run_tests
utils/code_coverage_util_unittest

Change-Id: Ie12633ad668fe882ae481930a123f8cc4051991b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/3863867
Commit-Queue: Srinivas Hegde <srinivashegde@google.com>
Reviewed-by: Ram Chandrasekar <rchandrasekar@google.com>
Tested-by: Srinivas Hegde <srinivashegde@google.com>
Reviewed-by: Kshitij Pancholi <panchok@google.com>
diff --git a/api/controller/test.py b/api/controller/test.py
index 1ffc6bb..a9f7f1f 100644
--- a/api/controller/test.py
+++ b/api/controller/test.py
@@ -404,8 +404,9 @@
   generated = []
 
   artifact_types = {
-      in_proto.ArtifactType.CODE_COVERAGE_LLVM_JSON:
+      in_proto.ArtifactType.CODE_COVERAGE_LLVM_JSON: functools.partial(
           test.BundleCodeCoverageLlvmJson,
+          build_target.name),
       in_proto.ArtifactType.HWQUAL: functools.partial(
           test.BundleHwqualTarball,
           build_target.name, packages_service.determine_full_version()),