API: allow package list in depgraph.

This is based on crrev.com/c/1965633 having landed.

BUG=chromium:1019868
TEST=unit tests pass.

Change-Id: I123cc95a2cd1c78355a371e83248dee725f8f7f8
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/1965673
Reviewed-by: Alex Klein <saklein@chromium.org>
Tested-by: LaMont Jones <lamontjones@chromium.org>
Commit-Queue: LaMont Jones <lamontjones@chromium.org>
diff --git a/api/controller/dependency.py b/api/controller/dependency.py
index 5ad5bc7..299d3d9 100644
--- a/api/controller/dependency.py
+++ b/api/controller/dependency.py
@@ -13,6 +13,7 @@
 
 from chromite.api import faux
 from chromite.api import validate
+from chromite.api.controller import controller_util
 from chromite.lib import portage_util
 from chromite.service import dependency
 
@@ -67,7 +68,9 @@
     _config (api_config.ApiConfig): The API call config.
   """
   board = input_proto.build_target.name
+  packages = [
+      controller_util.PackageInfoToCPV(x) for x in input_proto.packages]
 
-  json_map, sdk_json_map = dependency.GetBuildDependency(board)
+  json_map, sdk_json_map = dependency.GetBuildDependency(board, packages)
   AugmentDepGraphProtoFromJsonMap(json_map, output_proto.dep_graph)
   AugmentDepGraphProtoFromJsonMap(sdk_json_map, output_proto.sdk_dep_graph)